我正在尝试使用特定值获取第一行中单元格的列号。我正在使用的代码由于某种原因不起作用。
Dim colNum As Integer
'sheetName is a String
With ActiveWorkbook.Sheets(sheetName)
colNum = column(.Match("ID", 1:1, 0))
它告诉我它期待一个“列表分隔符或者”。我如何使它工作?
由于
答案 0 :(得分:11)
试试这段代码:
Dim colNum As Integer
'sheetName is a String
colNum = WorksheetFunction.Match("ID", ActiveWorkbook.Sheets(sheetname).Range("1:1"), 0)
答案 1 :(得分:3)
请注意,如果未找到匹配项,则会返回错误;试试这个来处理它。
Dim Result As Variant
If Not VBA.IsError(Application.Match(...)) Then
Result = Application.Match(...)
End If
这会尝试匹配,如果函数出错,则不会分配结果。