拖动此公式时,最后一部分“Q:Q”是硬编码的,不会更改列。
=SUMIF(INDIRECT("'"&Reference!$A$1&"PN GCS'!$N:$N"),'Area Summary PN'!$D101,INDIRECT("'"&Reference!$A$1&"PN GCS'!Q:Q"))
有没有办法让它在拖动时移动列?
Sheets("Area Summary PN").Select
Range("JU101").Select
ActiveCell.FormulaR1C1 = _
"=SUMIF(INDIRECT(""'""&Reference!R1C1&""PN GCS'!$N:$N""),'Area Summary PN'!R[0]C4,INDIRECT(""'""&Reference!R1C1&""PN GCS'!Q:Q""))"
Selection.AutoFill Destination:=Range("JU101:JU111"), Type:=xlFillDefault
Range("JU101:JU111").Select
Selection.Copy
Range(Selection, Selection.End(xlToRight)).Select
ActiveSheet.Paste
Application.CutCopyMode = False
Selection.Copy
Range("JU101").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
如果您在第
JU
列中输入公式并想要对第 Q
列求和,则单元格版本应为:
=SUMIF(INDIRECT("'"&Reference!$A$1&"PN GCS'!$N:$N"),'Area Summary PN'!$D101,
INDIRECT("'"&Reference!$A$1&"PN GCS'!C[-264]",))
VBA版本:
Range("JU101").FormulaR1C1 = _
"=SUMIF(INDIRECT(""'""&Reference!R1C1&""PN GCS'!$N:$N""), 'Area Summary PN'!R[0]C4,INDIRECT(""'""&Reference!R1C1&""PN GCS'!C[-264]"",))"