我正在比较列D
中的单元格,如果它们匹配,则会将列B
中上一个单元格的值粘贴到列B
中的下一个单元格中,如果它们不匹配粘贴列A
中的子序列单元格的值到列B
e.g
IF(D2=D3,B2,A2+1)"
但是在D
中的第一个单元格序列上运行后,这不起作用我对列#Valve!"
的其余部分B
进行了IF(D2=D3,B2,A2+1)"
我确定这是问题A2+1
,特别是Sub TargetId()
Dim lRow As Long
Dim ws As Worksheet
Set ws = Sheets("UnPivot")
Columns("B:B").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("B1").FormulaR1C1 = "Source"
Range("B2").FormulaR1C1 = [A2].Value
With ws
lRow = ws.Range("D" & .Rows.Count).End(xlUp).Row
With .Range("B3:B" & lRow)
.Formula = "=IF(D2=D3,B2,A2+1)"
.Value = .Value
End With
End With
End Sub
参考,但不确定如何调用它
(对不起,如果不清楚)
谢谢
{{1}}
答案 0 :(得分:1)
作为评论的后续内容,这个有效:
With .Range("B3:B" & lRow)
.Formula = "=IF(D2=D3,B2,A3)"
.Value = .Value
End With