excel - 如何使用 VBA Vlookup 填充单元格

标签 excel vba

我尝试使用 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

我在论坛上搜索过,但没有找到任何可以帮助我解决此问题的内容。

最佳答案

Sub VL()
    With Sheets("Users").Range("A2", Sheets("Users").Cells(Rows.Count, "A").End(xlUp))
        .Offset(, 1).Formula = "=VLOOKUP(A" & .Row & ",'Data'!$A:$B,2,FALSE)"
        .Offset(, 1).Value = .Offset(, 1).Value
    End With
End Sub

关于excel - 如何使用 VBA Vlookup 填充单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18476793/

相关文章:

excel - 基于当前统计信息的准确,实时的配电预测更新解决方案

ruby - 在 Ruby 中将 excel 列字母转换为整数

sql - 如何将 SQL 语句结果导出到 Excel 文件

vba - 公共(public)动态数组返回错误

excel - 为什么我的代码没有遍历 word 文档中的表格?

vba - Access 2013/2016不支持treeview控件,报错 "User defined type not defined"

excel - 在 VBA 中处理输入框中的非整数

java - 用 Java 读取 XLSX 文件

excel - VBA查找具有匹配功能的列号

excel - 根据值突出显示第 3 列中的不同颜色的值