连续查找前四个单元格

时间:2018-03-28 15:57:50

标签: excel vba

我试图在一行中找到包含值的前四个单元格,类型为Double。我想将单元格的值添加到数组中,并定位单元格位置以供将来使用。我也需要在23行后工作。某些行不包含任何值。矩阵以单元格AB3开始

我一直在尝试以For循环开始,所以我可以处理行,然后在其中有一个For循环,以便每次移动到新行时创建一个新数组。 我需要的代码看起来像这样。

For i = 3 to 27
    For j = 0 to 3
        TIGA(j) = Range(Cells(i, j + 28), Cells(last cell)).Find(first               
        value and then the next three)

我需要在每一行中从左到右工作。首先,我需要将连续的前四个值添加到数组中。接下来我需要保存每个值的列号,因为我需要知道它们在我的代码中后面的列。在我得到一个你的信息后,我需要将其循环下来。每次代码循环通过新行时,可以重新启动具有值和用于单元位置的任何变量/数组的数组。谢谢! Here's what's the data looks like.

1 个答案:

答案 0 :(得分:1)

我改变了一点,我认为这应该足够了:

Sub Test()

Dim TIGA As Variant, i As Long, j As Long, k As Long

ReDim TIGA(0 To 3)

For i = 3 To 27
    k = 0
    For j = 28 To 40
        If Cells(i, j) <> "" Then
            If IsNumeric(Cells(i, j)) = True And InStr(Cells(i, j), ".") > 0 Then 'make sure it's a double

                TIGA(k) = Cells(i, j)
                k = k + 1

                If k = 3 Then
                    Exit For
                End If

            End If
        End If
    Next j
Next i

End Sub