连接string时出现“错误1004”

我已经连接了一个string,将一个索引匹配公式粘贴到一列的行中。 每次我尝试运行这段代码,我得到运行时错误'1004,但我不明白我有什么问题。 这是我有的代码:

Dim j As Long 'Loop down the rows in mainfile For j = 2 To lastFullRow2 Dim firstArgument As String firstArgument = "Sheet2!" & valuecolumnLetter & "2:" & valuecolumnLetter & lastFullRow1 & "" 'MsgBox "firstArgument" & firstArgument Dim secondArgument As String secondArgument = "Sheet2!" & parameter1columnLetter & "2:" & parameter1columnLetter & lastFullRow1 & "" 'MsgBox "secondArgument " & secondArgument Dim thirdArgument As String thirdArgument = "Sheet2!" & parameter2columnLetter & "2:" & parameter2columnLetter & lastFullRow1 & "" 'MsgBox "thirdArgument " & thirdArgument Dim fourthArgument As String fourthArgument = "Sheet2!" & parameter2columnLetter & "2:" & parameter2columnLetter & lastFullRow1 & "" 'MsgBox "fourthArgument " & fourthArgument Dim condition3 As String condition3 = "Sheet3!" & "D2:" & D & j & "" 'MsgBox "condition3 " & condition3 Dim patid1 As String patid1 = "Sheet2!" & "D2:" & D & lastFullRow2 & "" 'MsgBox "patid1 " & patid1 With ws_mainfile Dim commandstring As String commandstring = "=INDEX(" & firstArgument & ",MATCH(1,(" & secondArgument & "=" & condition1 & ")*(" & thirdArgument & "=" & condition2 & ")*(" & patid1 & "=" & condition3 & "),0))" ws_mainfile.Range("AN" & j).FormulaArray = commandstring End With Next j 

debugging器说错误在ws_mainfile.Range … = commandstring行。

 condition3 = "Sheet3!" & "D2:" & D & j & "" patid1 = "Sheet2!" & "D2:" & D & lastFullRow2 & "" 

你定义了一个variablesD ,它的值是多less?

也许你的意思是:

 condition3 = "Sheet3!" & "D2:D" & j patid1 = "Sheet2!" & "D2:D" & lastFullRow2 

也不需要在这些行的末尾连接一个空string。