允许间接公式在列上拖动

问题描述 投票:0回答:1

拖动此公式时,最后一部分“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
excel vba
1个回答
0
投票

如果您在第

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]"",))"         
© www.soinside.com 2019 - 2024. All rights reserved.