这段代码是要根据用户输入的货币从表格中查找对应的exchange rate~用到了Match函数和Hlookup函数
代码如下:
'User's input
MySheet = "Q6 Currency Exchange"
Amount = Worksheets(MySheet).Range("G3").Value
SourceCurrency = Trim(Worksheets(MySheet).Range("H3").Value)
DestinationCurrency = Trim(Worksheets(MySheet).Range("K3").Value)
'Programmer's input
k = WorksheetFunction.Match(DestinationCurrency, Worksheets(MySheet).Range("B5:B7"), 0)
''MsgBox SourceCurrency
''MsgBox k
ExRate = WorksheetFunction.HLookup(SourceCurrency, Worksheets(MySheet).Range("B4:E7"), k + 1)
出现的问题如下:
当H3里面的值是GBP和USD的时候~代码运行正常!
但是当H3里面的值是EUR的时候~代码出错~~“不能取得类WorksheetFunction的Hlookup属性”
P.S.楼主后来试了直接在excel单元格里面用这个公式~发现出现同样的错误!
=HLOOKUP("EUR",$B$4:$E$7,MATCH("USD",$B$5:$B$7,0)+1)
当第一个引号里的字符串是GBP和USD时都没问题~~当字符串变成EUR时~出错值为#N/A
天雷滚滚{:3_43:}
楼主进行了多次检查,实在找不出EUR受歧视的原因~~~~VBA高手们现身吧!帮个小忙帮我看看如何?