Excel里面用VBA实现一个工作簿对另一个工作簿的数据的调用

要调用工作簿sheet2数据顺序是打乱的,但是都是有唯一编号的,跪求相应的代码

第1个回答  2014-07-09
亲,“数据的调用”这句话不太专业哦~~~看不懂
您能说明具体要求么,比方说从Sheet2的哪一列,按什么条件取什么数据,放在Sheet1的哪一列。要配上带行列标的截图。追问

是这样的,sheet 1和sheet2的第一列都是编号,不过顺序是不一样的,我需要把sheet2里面第4列的相应数据按照编号放到sheet1里面第14列

追答

其实用公式就可以解决。在Sheet1的第14列(比如数据从第1行开始)的第一行写公式,并下拉:
=VLOOKUP(A1,Sheet2!A:D,4,0)

如果有特殊原因,必须用VBA,可以再追问我一下。

追问

能用VBA写一段程序给我么?也显得高大上一些不是~

追答

好吧,你赢了……
不知您两张表的数据有多少行?如果有十几万,下面的代码要加入字典,否则超慢……

Sub cx()
Dim i, j, r1, r2 As Long
Dim rg As Range
r1 = Sheet1.Range("A" & Rows.Count).End(xlUp).Row
r2 = Sheet2.Range("A" & Rows.Count).End(xlUp).Row
Sheet1.Range(Cells(1, 14), Cells(r1, 14)).ClearContents
For i = 1 To r1
For j = 1 To r2
If Sheet2.Cells(j, 1) = Sheet1.Cells(i, 1) Then Sheet1.Cells(i, 14) = Sheet2.Cells(j, 4)
Next j
Next i
End Sub

追问

方便留个邮箱么?我把东西发给你做吧 = =试了试还是不行。。。

追答

亲,收一下私信

本回答被提问者采纳
相似回答