在Excel表格里面,我们要查找某一个值后再返回相应的值,此时可以使用到VLOOK曷决仙喁UP函数。但是,要显示出结果的单元格都要先写入公式,在以后输入查找值时才会显示出结果,略显茔侠礞荤比较麻烦和臃肿。如果Excel表格里面使用VBA的VLOOKUP函数,那么就显得比较简单了。
工具/原料
Excel2010
电脑
方法/步骤
1、打开Excel表格,点击【开发工具】,【VisualBasic】。
2、在VBA工程项目里面双击“Sheet2(Sheet2)”打开代码输入窗口。
3、在代码窗口里面输入以下VBA程序代码:PrivateSubWorksheet_讵症慧鹱SelectionChange(ByValTargetAsRange)'稆糨孝汶;工作表选定区域发生改变时执行OnErrorResumeNext'VBA忽略之后的语句错误Dimi,jAsIntegerSetmyDocument1=ThisWorkbook.Worksheets("Sheet1").Range("A3:I1000")SetmyDocument2=ThisWorkbook.Worksheets("Sheet2")Fori=3To1000'循环3-1000次,即:以下自动填充时间到1000行Forj=2To9'循环2-9次,即:从第2列到第9列IfmyDocument2.Cells(i,1)<>""Then'如果查找的单元格不为空值,则查找表1的内容填充到表2对应的位置myDocument2.Cells(i,j)=Application.WorksheetFunction.VLookup(myDocument2.Cells(i,1),myDocument1,j,[0])EndIfIfmyDocument2.Cells(i,1)=""AndmyDocument2.Cells(i,j)<>""ThenmyDocument2.Cells(i,j)=""'如果查找值为空白且查找填充的行不为空白,则显示空白EndIfIfmyDocument2.Cells(i,1)<>""AndmyDocument2.Cells(i,j)=""ThenmyDocument2.Cells(i,j)="不存在"'如果查找值不存在,则显示“不存在”EndIfNextNextEndSub
4、在Sheet2表格上面的A3:A1000单元格输入查找值时,同一行的显示范围里面的单元格就会显示出相应的结果。
5、如果后续要继续使用该VBA程序,可以将表格另存为启用宏的工作薄,即:点击【文件】,【另存为】,在保存类型里面选择“Excel启用宏的工作薄”。