對不起,我想問一下關於循環使用vlookup
行和列。這是我的代碼,但沒有工作。你能幫助糾正這個代碼嗎?謝謝。VBA查找循環行和列內
Private Sub CommandButton1_Click()
Dim ws As Worksheet
Dim i As Integer
Dim j As Integer
Set ws = ThisWorkbook.Sheets("GROWTH PERUSAHAAN")
With ws
For j = 3 To 100
For i = 2 To 600
If Application.WorksheetFunction.VLookup(ThisWorkbook.Sheets("GROWTH PERUSAHAAN").Cells(i, 1), ThisWorkbook.Sheets("INPUT KUANTITATIF").Range("A:AC"), j + 3, 0) = "" Then
ThisWorkbook.Sheets("GROWTH PERUSAHAAN").Cells(i, j) = 0
Else
ThisWorkbook.Sheets("GROWTH PERUSAHAAN").Cells(i, j) = (Application.WorksheetFunction.VLookup(ThisWorkbook.Sheets("GROWTH PERUSAHAAN").Cells(i, 1), ThisWorkbook.Sheets("INPUT KUANTITATIF").Range("A:AC"), j + 4, 0)/Application.WorksheetFunction.VLookup(ThisWorkbook.Sheets("GROWTH PERUSAHAAN").Cells(i, 1), ActiveWorkbook.Sheets("INPUT KUANTITATIF").Range("A:AC"), j + 3, 0)) - 1
End If
Next i
Next j
End With
End Sub
如果您已聲明變量'WS = ThisWorkbook.Sheets(「增長PERUSAHAAN」)',你不需要重複'ThisWorkbook.Sheets(」 GROWTH PERUSAHAAN「)在你的代碼中。你可以使用這個變量,例如'ws.Cells(i,j)= 0'。你的代碼將更加可讀。 – mielk
「沒有工作」究竟以什麼方式?順便說一下,使用Match來獲得正確的結果行會更有效,然後在直接單元格引用中使用它,而不是多次查找相同的值。 – Rory
如果我爲coloumn和row循環,則此代碼不起作用,但如果僅循環使用行或列,它將起作用。 –