注意:1.表3中的最后结果是用EXCEL函数得到的,用VBA应与其得到同一结果。
2.实际情况的表1和表2,尤其是表2的客户档案行数是不固定的,但格式(即每一列都是固定内容)是一样的,所以只需要能根据每次行数的不同,能自动的选取表2的客户简称列(C列)从头到底的内容。代码可以使用类似如下的形式:
Dim LastRow As Long
LastRow = Sheets(3).Range("A" & Rows.Count).End(xlUp).Row
可以的,用的是=IFERROR(LOOKUP(1,0/FIND('2.客户档案 '!$C$2:$C$24,$G2),'2.客户档案 '!$C$2:$C$24),"")这个公式,所以我一开始想直接就类似于worksheet function vlookup那样的处理,但是VBA好像不能对FIND函数是错误的值进行定义,永远都是类型错误,所以就不知道如何去模糊匹配了。