移动小计(Microsoft Excel)
David要将小计(功能区的“数据”选项卡,在“大纲”组中)添加到大型工作表,并寻找一种将小计单元格移动到不同单元格的方法。例如,假设当Excel添加自动小计时,它们被添加到S列中,并且Excel添加的SUBTOTAL公式引用了S列中的单元格范围。David想要将SUBTOTAL公式(仅那些公式)移出
|在S列到S列之间具有相同的公式。
一种选择是遍历并将SUBTOTAL公式一次移动到所需位置。 (您将使用Ctrl + X和Ctrl + V来移动单元格,而不是使用Ctrl + C和Ctrl + V来仅创建单元格的副本。)如果工作表很大,有很多小计,这可能会变得非常乏味,很快。
Excel中的Tedium通常是创建宏的主要动力。这种情况也不例外。可以创建一个宏来进行SUBTOTAL公式的实际移动。请考虑以下示例:
Sub MoveSubtotals() Dim rCell As Range Dim rng As Range Dim iCol As Integer Dim iOffset As Integer iCol = 19 '19 is Column S iOffset = 1 'Positives go right, negatives go left Set rng = Intersect(Selection.CurrentRegion, Columns(iCol)) For Each rCell In rng If InStr(rCell.Formula, "SUBTOTAL") Then rCell.Offset(0, iOffset).Formula = _ rCell.Formula rCell.ClearContents End If Next End Sub
本示例通过检查在S列中选择的每个单元格来工作。如果该单元格中的公式包含单词SUBTOTAL,则将该公式复制到T列右侧的一列中,并从S列的单元格中删除。只需更改分配给iOffset变量的值,小计将向左或向右移动的距离。
注意:
如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。
_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。
本技巧(8643)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。您可以在此处找到适用于Excel的较旧菜单界面的本技巧的版本:
移动小计。