Перемещение промежуточных итогов (Microsoft Excel)
Дэвид добавлял промежуточные итоги (Данные | Промежуточные итоги) на большие рабочие листы и искал способ переместить ячейки промежуточных итогов в другие ячейки. Например, предположим, что, когда Excel добавлял автоматические промежуточные итоги, они были добавлены в столбец S, а формула ПРОМЕЖУТОЧНЫЙ ИТОГ, добавленная Excel, ссылалась на диапазоны ячеек в столбце S. Дэвид хотел переместить формулы ПРОМЕЖУТОЧНЫЙ ИТОГ (и только эти формулы) из столбец S в столбец T, а формулы по-прежнему относятся к деталям в столбце S.
Один из вариантов — пройти и переместить формулы ПРОМЕЖУТОЧНОГО ИТОГА по одной в нужные места. (Вы могли бы использовать Ctrl + X и Ctrl + V для перемещения ячеек, а не Ctrl + C и Ctrl + V для простого создания копий ячеек.) Если рабочие листы большие, с множеством промежуточных итогов, это может стать очень утомительным. быстро.
Скука в Excel часто является основным стимулом для создания макроса. Этот случай не исключение. Можно создать макрос, который будет выполнять фактическое перемещение формул ПРОМЕЖУТОЧНЫЙ ИТОГ. Рассмотрим следующий пример:
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. Если формула в ячейке содержит слово ПРОМЕЖУТОЧНЫЙ ИТОГ, то формула копируется на один столбец вправо, в столбце T, и удаляется из ячейки в столбце S. Вы можете изменить расстояние влево или вправо, на которое перемещаются промежуточные итоги, просто изменяя значение, присвоенное переменной iOffset. (Обратите внимание, что вы должны запустить макрос с выбранным диапазоном ячеек, и часть этого выбора должна включать столбец S.)
_Примечание: _
Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.
link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера]
.
ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (2119) применим к Microsoft Excel 97, 2000, 2002 и 2003. Вы можете найти версию этого совета для ленточного интерфейса Excel (Excel 2007 и более поздних версий) здесь:
link: / excelribbon-Moving_Subtotals [Moving Subtotals]
.