[英]use WorksheetFunction with ctrl shift enter in VBA excel
我想編寫一個VBA代碼,以便在不考慮“文本”和“數字”的情況下,根據給定的值查找匹配的單元格。
我們可以像這樣在Excel中執行此操作: =match("*207*", C:C & "",0)
,方法是按Ctrl + Shift + Enter 。
但是在VBA中,代碼pos = WorksheetFunction.Match(lookup_value, lookup_range & "", 0)
不起作用。
有什么解決辦法嗎?
lookup_range & ""
在VBA中不起作用,因為您無法將String
連接到Range
對象或Array
。 改為使用Evaluate
:
pos=Sheet1.Evaluate("match(""*207*"", C:C & """",0)")
要在評估中使用變量,請執行以下操作:
pos = Application.Evaluate("MATCH(""*" & lookup_value & "*""," & _
lookup_range.Address(External:=True) & "& """",0)")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.