小弟才了解到vba有个问题请教
Private Sub Worksheet_Activate()UserForm2.HideUserForm1.ShowWith Worksheets("客户产品及价格").Range("c1:dd1000")Set C = .Find(Range("C3").Value, LookIn:=xlValues)If Not C Is Nothing Then Range("H5") = "=IFERROR(VLOOKUP(C5,客户产品及价格!$A$2:$VJ$65536," & C.Column & ",FALSE),"""")"End IfEnd WithRange("H5").SelectSelection.AutoFill Destination:=Range("H5:H" & [A65536].End(xlUp).Row - 1)End Sub
意思就是当选择这个表时使H5这个单元格使用vlookup公式在另外一个表中查找产品对应的单价。
但是有个问题就是一上来的时候客户名称是空的,所以找不到对应的客户是在哪一行,而这段代码又必须要切换一下表才能执行,单价才能自动生成。
怎么能让
With Worksheets("客户产品及价格").Range("c1:dd1000")Set C = .Find(Range("C3").Value, LookIn:=xlValues)If Not C Is Nothing Then Range("H5") = "=IFERROR(VLOOKUP(C5,客户产品及价格!$A$2:$VJ$65536," & C.Column & ",FALSE),"""")"End IfEnd WithRange("H5").SelectSelection.AutoFill Destination:=Range("H5:H" & [A65536].End(xlUp).Row - 1)这一段在客户名称后面的那个地方C3发生改变时就执行一次?