动态引用特定单元格的公式
Formula with dynamic reference to a specific cell
在以下表达式中,我想将 B2 动态设置为指向我插入公式的正确单元格:
WS1.Cells(4 + j - 1, 3 + ((i - 1) * 9)).Formula = "=VLOOKUP(B2;WS2!B:C;2;FALSE)"
我怎样才能做到这一点?
如果dynamic
表示引用与接收公式的单元格在同一行的“B”,请尝试下一种方式:
WS1.Cells(4 + j - 1, 3 + ((i - 1) * 9)).Formula = "=VLOOKUP(B" & 4 + j - 1 & ",WS2!B:C,2,FALSE)"
并且VBA使用逗号作为列表分隔符,独立于本地化你应该使用逗号...
已编辑:
为了在公式中使用公式所在单元格左侧的单元格,请尝试下一种方式:
WS1.cells(4 + j - 1, 3 + ((i - 1) * 9)).Formula = _
"=VLOOKUP(" & WS1.cells(4 + j - 1, 3 + ((i - 1) * 9) - 1).Address(0, 0) & ",WS2!B:C,2,FALSE)"
在以下表达式中,我想将 B2 动态设置为指向我插入公式的正确单元格:
WS1.Cells(4 + j - 1, 3 + ((i - 1) * 9)).Formula = "=VLOOKUP(B2;WS2!B:C;2;FALSE)"
我怎样才能做到这一点?
如果dynamic
表示引用与接收公式的单元格在同一行的“B”,请尝试下一种方式:
WS1.Cells(4 + j - 1, 3 + ((i - 1) * 9)).Formula = "=VLOOKUP(B" & 4 + j - 1 & ",WS2!B:C,2,FALSE)"
并且VBA使用逗号作为列表分隔符,独立于本地化你应该使用逗号...
已编辑: 为了在公式中使用公式所在单元格左侧的单元格,请尝试下一种方式:
WS1.cells(4 + j - 1, 3 + ((i - 1) * 9)).Formula = _
"=VLOOKUP(" & WS1.cells(4 + j - 1, 3 + ((i - 1) * 9) - 1).Address(0, 0) & ",WS2!B:C,2,FALSE)"