我正在嘗試使用VBA Vlookup
填寫與另一個工作表上的某些字段相同的工作表單元格,並且卡住了。如何使用VBA Vlookup填充單元格
工作表用戶具有以下數據,列A包含Login
列B包含Number
;它是空的,但我們的目標是從另一個工作表中的數據來填充它:
Login Number
===============
ffff
bbbb
cccc
dddd
eeee
aaaa
在「數據」工作表中我有以下幾點:
Login Number
===============
aaaa 1234
bbbb 1235
cccc 1236
dddd 1237
eeee 1238
ffff 1239
目前我使用這個代碼
Sub VL()
Dim Login As Range
Set Login = Sheets("Users").Cells(2, 1)
Do Until Len(Login) = 0 'This will loop until the first empty cell
Login.Offset(0, 1).FormulaR1C1 = Application.WorksheetFunction.VLookup(_
Sheets("Users").Range("$A:$A"), [Table], 2, False)
Calculate
Login.Offset(0, 1).Value = Login.Offset(0, 1).Value
Set Login = Login.Offset(1, 0)
Loop
End Sub
,結果是不按預期:
Login Number
===============
ffff #N/A
bbbb
cccc
dddd
eeee
aaaa
我在論壇上搜索,但沒有找到任何東西來幫助我解決這個問題。
您提供'Range.FormulaR1C1'的公式中的單元格引用應該看起來像「R1C1」;這使得它比「A1」風格的引用更容易,使用VBA代碼構建單元格引用,例如'ref =「R」&row&「C」&column',其中「row」和「column」可以是變量。 –
對於一個Excel問題,實際上是關於*編程*的Excel對象模型的+1!隨時*接受*解決您的問題的答案:) –