我的以下代码显示错误消息"应用程序定义或对象定义的错误",我不知道为什么。你能看看并帮我解决问题吗?
Private Sub CommandButton1_Click()
j = 3
For i = 1 To 46
Sheets("Income").Range(Cells(6, j), Cells(51, j)).Formula = "=VLOOKUP($B6,[" & Cells(5, i + 2).Value & ".xlsx]2 Intercompany markup!$A$1:$E$70,4,FALSE)"
j = j + 1
Next i
End Sub
感谢您的帮助。
答案 0 :(得分:1)
当您使用该语法在“收入”表单上定义范围时,您需要为.Range
和(Cells(x,y))
指定工作表。
您还应声明变量。
每次输入完全限定的工作表名称都会非常荒谬,因此您还应声明工作表变量。
试试这个:
Dim ws As Worksheet
Dim j As Integer
Dim i As Integer
Set ws = ThisWorkbook.Sheets("Income")
j = 3
For i = 1 To 46
ws.Range(ws.Cells(6, j), ws.Cells(51, j)).Formula = _
"=VLOOKUP($B6,[" & ws.Cells(5, i + 2).Value & ".xlsx]2 Intercompany markup!$A$1:$E$70,4,FALSE)"
j = j + 1
Next i