我从Sheet“P & L”(保存所有数据的第一个选项卡)开始记录一个宏,并在当前表单中过滤掉直到A列中的数据用完为止。有用;但是,我需要此代码才能用于其余工作表。这些每月更新。在每张表格的A列中会有不同数量的输入。这些都是我用来从P & L选项卡查找信息的ID号。在多张表中复制VLOOKUP宏
当我把这个宏写成FoorLoopIndex时,我总是收到“编译错误:无效或不合格”的消息。
我对宏没有任何经验 - 我正在努力寻找我的错误。
Sub update_gp_profits()
Dim StartIndex, EndIndex, LoopIndex As Integer
StartIndex = Sheets("P&L").Index + 1
EndIndex = Sheets("Sheet4").Index - 1
For LoopIndex = StartIndex To EndIndex
lastrow = .Range("A" & .Rows.Count).End(xlUp).Row
.Range("B2:B" & lastrow).Formula = "=+VLOOKUP(RC[-1],'P&L'!R15C3:R29702C4,2,FALSE)"
Range("C2").Select
.Range("C2:C" & lastrow).Formula = "=+VLOOKUP(RC[-2],'P&L'!R15C3:R29702C5,3,FALSE)"
Range("D2").Select
.Range("D2:D" & lastrow).Formula = "=+VLOOKUP(RC[-3],'P&L'!R15C3:R29702C6,4,FALSE)"
Range("E2").Select
.Range("E2:E" & lastrow).Formula = "=+VLOOKUP(RC[-4],'P&L'!R15C3:R29702C17,15,FALSE)"
Range("F2").Select
.Range("F2:F" & lastrow).Formula = "=+VLOOKUP(RC[-5],'P&L'!R15C3:R29702C18,16,FALSE)"
Range("J2").Select
.Range("k2:k" & lastrow).Formula = "=+VLOOKUP(RC[-10],'P&L'!R15C3:R29702C160,158,FALSE)"
Range("k2").Select
Next LoopIndex
End Sub
在你的代码中列出上面,我没有看到任何为sheet1和sheet2。我看到'Sheets(“P&L”)和'Sheets(“Sheet4”)'请修改这个问题。 thx – Hiten004
@ Hiten004 - 我更新了说明。感谢您的帮助 – ja2255
为什么在VLookup前面使用+符号? – teylyn