首页 > Office专区 > Excel教程 >

在VBA上面使用VLOOKUP函数

来源:互联网 2023-02-20 17:32:10 443

在Excel表格里面,我们要查找某一个值后再返回相应的值,此时可以使用到VLOOKUP函数。但是,要显示出结果的单元格都要先写入公式,在以后输入查找值时才会显示出结果,略显比较麻烦和臃肿。如果Excel表格里面使用VBA的VLOOKUP函数,那么就显得比较简单了。0Na办公区 - 实用经验教程分享!

工具/原料

  • Excel 2010
  • 电脑

方法/步骤

  • 1

    0Na办公区 - 实用经验教程分享!

    打开Excel表格,点击【开发工具】,【Visual Basic】。0Na办公区 - 实用经验教程分享!

    在VBA上面使用VLOOKUP函数0Na办公区 - 实用经验教程分享!

  • 2

    在VBA工程项目里面双击“Sheet2(Sheet2)”打开代码输入窗口。0Na办公区 - 实用经验教程分享!

    在VBA上面使用VLOOKUP函数0Na办公区 - 实用经验教程分享!

  • 2本页面非法爬取自百度经验
  • 3

    在代码窗口里面输入以下VBA程序代码:0Na办公区 - 实用经验教程分享!

    Private Sub Worksheet_SelectionChange(ByVal Target As Range) '工作表选定区域发生改变时执行0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    On Error Resume Next 'VBA忽略之后的语句错误0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    Dim i, j As Integer0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    Set myDocument1 = ThisWorkbook.Worksheets("Sheet1").Range("A3:I1000")0Na办公区 - 实用经验教程分享!

    Set myDocument2 = ThisWorkbook.Worksheets("Sheet2")0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    For i = 3 To 1000 '循环3-1000次,即:以下自动填充时间到1000行0Na办公区 - 实用经验教程分享!

    For j = 2 To 9 '循环2-9次,即:从第2列到第9列0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    If myDocument2.Cells(i, 1) > "" Then '如果查找的单元格不为空值,则查找表1的内容填充到表2对应的位置0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    myDocument2.Cells(i, j) = Application.WorksheetFunction.VLookup(myDocument2.Cells(i, 1), myDocument1, j, [0])0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    End If0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    If myDocument2.Cells(i, 1) = "" And myDocument2.Cells(i, j) > "" Then0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    myDocument2.Cells(i, j) = "" '如果查找值为空白且查找填充的行不为空白,则显示空白0Na办公区 - 实用经验教程分享!

    End If0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    If myDocument2.Cells(i, 1) > "" And myDocument2.Cells(i, j) = "" Then0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    myDocument2.Cells(i, j) = "不存在" '如果查找值不存在,则显示“不存在”0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    End If0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    Next0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    Next0Na办公区 - 实用经验教程分享!

    0Na办公区 - 实用经验教程分享!

    End Sub0Na办公区 - 实用经验教程分享!

    在VBA上面使用VLOOKUP函数0Na办公区 - 实用经验教程分享!

  • 4

    在Sheet2表格上面的A3:A1000单元格输入查找值时,同一行的显示范围里面的单元格就会显示出相应的结果。0Na办公区 - 实用经验教程分享!

    在VBA上面使用VLOOKUP函数0Na办公区 - 实用经验教程分享!

  • 5

    如果后续要继续使用该VBA程序,可以将表格另存为启用宏的工作薄,即:点击【文件】,【另存为】,在保存类型里面选择“Excel 启用宏的工作薄”。0Na办公区 - 实用经验教程分享!

    在VBA上面使用VLOOKUP函数0Na办公区 - 实用经验教程分享!

    在VBA上面使用VLOOKUP函数0Na办公区 - 实用经验教程分享!

  • 注意事项

    • 使用VBA程序时需要在宏安全里面启用宏功能。

    以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!0Na办公区 - 实用经验教程分享!


    标签: 编程语言VBAexcel使用函数

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码