所以我对excel真的很陌生,我试图将单元格中的一些值复制到一个数组中,然后在列中显示该数组。所以我有一个列(A)中的名字列表。然后我在列(B)中的名字旁边有一个数字列表。所以我要做的是循环遍历数字,如果任何数字等于 4。将与数字对应的名称复制到我的数组中。然后在 D 列中显示该数组。这就是我到目前为止所拥有的。
Option Explicit
Public Sub loopingTest()
Dim FinalRow As Long '
Dim i As Long 'varable that will loop through the column
Dim maxN As Integer 'variable that will hold the maximum number
Dim j As Long 'variable that will hold the index of the array
Dim ArrayTest As Variant
FinalRow = Cells(Rows.Count, 1).End(xlUp).Row ' will get the last row
For i = 1 To FinalRow 'loop until the last row
If Range("B" & i) = 4 Then 'if any of the values of column B matches 4 then
ArrayTest(j) = Range("A" & i) 'copy the value corresponding to column A to the array
j = j + 1 'increment array index
End If 'end of endif
Next i 'increment column
'output array into column D
For x = 1 to FinalRow
Range("D" & x) = ArrayTest(x)
Next x
End Sub
这是这样做的正确方法吗?此外,如果我将 B 列更新为任何数字,我希望 D 列自动更新。任何帮助,将不胜感激