Уважаемые коллеги, добрый день.
Не могу найти решение следующего вопроса - нужны знания гуру теории excel:
Макросом генерирую выгрузки одинаковых по своей структуре листов, собираю в одну книгу, далее мне нужно вставить два столбца с формулами. Столбцы добавляются на всех выделенных листах, но формула - только на активном. (При изменении формулы макросом выделение группы не слетает)
как вариант - перебор листов, но хотелось бы избежать этого.
Подскажите пожалуйста, как можно вставить формулу макросом на группу выделенных листов без перебора (возможно ли это)
Не могу найти решение следующего вопроса - нужны знания гуру теории excel:
Макросом генерирую выгрузки одинаковых по своей структуре листов, собираю в одну книгу, далее мне нужно вставить два столбца с формулами. Столбцы добавляются на всех выделенных листах, но формула - только на активном. (При изменении формулы макросом выделение группы не слетает)
Код |
---|
Sheets(2).Activate For I = ActiveWorkbook.Sheets.Count To 2 Step -1 'выделил нужные листы Sheets(I).Select (False) Next Columns("AH:AI").Select : Selection.Insert Shift:=xlToRight 'вставил столбцы Range("AH4").FormulaR1C1 = "=SUMIFS(R[-1]C19:R[-1]C30,R2C[-15]:R2C[-4],"">=""&DATE(YEAR(NOW()),1,1)&"""",R2C[-15]:R2C[-4],""<""&NOW()&"""")" 'вставил формулу |
как вариант - перебор листов, но хотелось бы избежать этого.
Код |
---|
Sub AllWorkSheets() Dim Arr() As String Dim I As Long ReDim Arr(Worksheets.Count) :Arr(0) = Worksheets.Count For I = 1 To Worksheets.Count : Arr(I) = Worksheets(I).Name :Next I For I = 1 To Arr(0) : Sheets(Arr(I)).Select : Application.Run "personal.xls!MarkCells" :Next I End Sub |