VBA EXCEL vlookups通过所有表格与索引

VBA EXCEL vlookups通过所有表格与索引,excel,vba,Excel,Vba,我有一个excel文件,包含200多张工作表和索引表,我正在尝试遍历所有工作表以从索引表复制数据。例如,我有下表: A test1 B test2 C test3 D test4 所以我想在索引表中做一个vlookup,然后把K列复制到右边的表中。例如,我希望将“test1”复制到单元格A3中的工作表“A”中。至vlookup的表格在表“索引”中,范围J1:K4。 可能吗?我存储了一个文件!出于保密的原因,我编辑了工作表的名称和内容,并放置了一个较短的文件 提前谢谢 更新工作表

我有一个excel文件,包含200多张工作表和索引表,我正在尝试遍历所有工作表以从索引表复制数据。例如,我有下表:

A   test1
B   test2
C   test3
D   test4
所以我想在索引表中做一个vlookup,然后把K列复制到右边的表中。例如,我希望将“test1”复制到单元格A3中的工作表“A”中。至vlookup的表格在表“索引”中,范围J1:K4。 可能吗?我存储了一个文件!出于保密的原因,我编辑了工作表的名称和内容,并放置了一个较短的文件

提前谢谢

更新工作表
选项显式
子更新工作表()
'定义常量。
Const wsName As String=“INDEX”
常量FirstCellAddress为String=“J1”
常量DST地址为String=“A3”
将wb设置为工作簿:设置wb=ThisWorkbook包含此代码的工作簿。
'定义数据范围。
变暗rng As范围
使用wb.Worksheets(wsName).Range(FirstCellAddress).Resize(,2)
设置rng=.Resize(.Worksheet.Rows.Count-.Row+1)。查找(_
什么:=“*”_
LookIn:=xl公式_
搜索顺序:=xlByRows_
SearchDirection:=xlPrevious)
如果rng不算什么,那么
出口接头
如果结束
设置rng=.Resize(rng.Row-.Row+1)
以
'将值从数据范围写入数据数组。
尺寸数据作为变量:数据=参考值
'声明其他变量(将在'For Next'循环中使用)。
将dst调整为工作表的当前目标工作表
Dim i As Long“数据数组行计数器
'在数据数组的行中循环。
对于i=1到uBond(数据,1)
'使用第一列中的值尝试创建引用
'到工作表,即检查工作表是否存在。
设置dst=无
出错时继续下一步
设置dst=wb.工作表(数据(i,1))
错误转到0
'如果工作表存在,。。。
如果不是,那么dst什么都不是
“…从数据数组的第二列写入值
'到当前目标工作表中的目标单元格区域。
dst.Range(dstAddress).Value=数据(i,2)
如果结束
接下来我
端接头

“我可以附加一个文件,但我不知道如何附加”。你用谷歌搜索过吗?你能遵循这些准则吗:我不确定vlookup在现实中是否是最好的方法,这是我在思考如何做时想到的。。我用一个链接编辑了一个我存储的文件,也许它会更清晰。我想在相应工作表的单元格A3中有一个索引表K列中的值。例如,A3中的表“A”将写为“test1”。在工作表“B”中,仍然是A3,所有工作表都会写上“test2”,以此类推。工作完美,谢谢!