以下函數用於遍歷一系列列標題並返回所選標題的列號。該功能獲取搜索名稱和執行搜索的工作表。運行時錯誤'1004'傳遞工作表名稱
Function getColumn(name As String, sheet As Worksheet) As Integer
Dim k As String, flag As Boolean, column As String
flag = False
k = 1
Do While flag <> True
column = sheet.Cells(1, k).Value
If column = name Then
flag = True
Else
flag = False
k = k + 1
End If
Loop
getColumn = k
End Function
它在前面的工作表中已經工作過,但是該行突出顯示爲錯誤點。
column = sheet.Cells(1, k).Value
我試過以多種方式傳遞表名。如Sheet9,沒有引號,作爲表(「應付賬款」)等
我還試圖改變參數類型,從而使片材是一個字符串,並且具有這樣的:
column = Sheets(sheet).Cells(1, k).Value
但沒有運氣!
PLZ HALP
嘗試將k更改爲Long而不是字符串。 –
但你可以這樣做:'getColumn = Application.WorksheetFunction.Match(name,sheet.Range(「1:1」),0)'並跳過其他所有內容。 –
這是從我使用'sheet.Range(「A&k).Value'玩弄時,儘管這沒有任何幫助 – sethW