下面的代码只是个示例,就是VBA添加批注的代码,具体到你的问题,还需要对这段代码进行修改,增加客户名称的判断才能解决你的问题,此外,代码中还要考虑你客户名称存在重复这个情况,那么将从表1开始循环,到表2中寻找匹配的客户名称,如果你不能自己解决,我可以帮你。
ALT+F11,插入模块,将下面代码复制:
Sub AddComment()
n4 = Sheet1.[f65536].End(xlUp).Row
n2 = Sheet2.[a65536].End(xlUp).Row
For i = 2 To n4
For n1 = 2 To n2
If Sheet1.Cells(i, 6) = Sheet2.Cells(n1, 1) Then
txt = Sheet2.Cells(1, 2) & Sheet2.Cells(n1, 2) & Chr(10) & Sheet2.Cells(1, 3) & Sheet2.Cells(n1, 3) & Chr(10) & _
Sheet2.Cells(1, 4) & Sheet2.Cells(n1, 4) & Chr(10) & Sheet2.Cells(1, 5) & Sheet2.Cells(n1, 5) & Chr(10) & _
Sheet2.Cells(1, 6) & Sheet2.Cells(n1, 6) & Chr(10) & Sheet2.Cells(1, 7) & Sheet2.Cells(n1, 7)
Sheet1.Range("f" & i).AddComment txt
End If
Next
Next
End Sub
如果客户在两张表的排列顺序是一致的(行号不一样也可以),sheet1的G2
=F2&" "&Sheet2!B2&" "&Sheet2!C2&" "&Sheet2!D2&" "&Sheet2!E2&" "&Sheet2!F2&" "&Sheet2!G2
如果客户在两张表的排列顺序不一致,sheet1的G2
=F2&" "&VLOOKUP(F2,Sheet2!A:G,2,0)&" "&VLOOKUP(F2,Sheet2!A:G,3,0)&" "&VLOOKUP(F2,Sheet2!A:G,4,0)&" "&VLOOKUP(F2,Sheet2!A:G,5,0)&" "&VLOOKUP(F2,Sheet2!A:G,6,0)&" "&VLOOKUP(F2,Sheet2!A:G,7,0)
“&" "”是用空格隔开各列的文本,增加可读性,也可以省略。
下拉公式。