Добрый день.
Есть 4 макроса:
clean - очистка пустых строк
filter - применение фильтра
format - приведение в более менее читабельный формат
process - выполнение первых трех макросов
И есть около 20 листов. Как сделать выполнение через хитрый оператор n+1 для выбора листов последовательно и выполнения макросов?
Т.е. выбрали лист 1 - шлепнули 3 макроса, перешли ко 2му листу - снова 3 макроса и так до конца?
Есть 4 макроса:
clean - очистка пустых строк
filter - применение фильтра
format - приведение в более менее читабельный формат
process - выполнение первых трех макросов
И есть около 20 листов. Как сделать выполнение через хитрый оператор n+1 для выбора листов последовательно и выполнения макросов?
Т.е. выбрали лист 1 - шлепнули 3 макроса, перешли ко 2му листу - снова 3 макроса и так до конца?
Код |
---|
Sub clean() Columns("A:A").Select Selection.Delete Shift:=xlToLeft Columns("B:B").Select Selection.Delete Shift:=xlToLeft Columns("G:G").Select Selection.Delete Shift:=xlToLeft Rows("2:2").Select Selection.Delete Shift:=xlUp LastRow = ActiveSheet.UsedRange.Row - 1 + ActiveSheet.UsedRange.Rows.Count Application.ScreenUpdating = False For r = LastRow To 1 Step -1 If Application.CountA(Rows(r)) = 0 Then Rows(r).Delete Next r End Sub Sub filter() Range("A1:F1").Select Selection.AutoFilter ActiveSheet.Range("$A$1:$F$1000").AutoFilter Field:=1, Criteria1:=Array("5", _ "¨ìêîñòü", "Çäîðîâüå", "Èìÿ Êîìïüþòåðà", "Ëîãè÷åñêèé Äèñê", "Ìîäåëü Ƹñòêîãî Äèñêà" _ , "Íîìåð Ƹñòêîãî Äèñêà", "Ïðèáëèçèòåëüíî îñòàëîñü", "Ïðîèçâîäèòåëüíîñòü", _ "Ñåðèéíûé Íîìåð Äèñêà"), Operator:=xlFilterValues Columns("A:A").ColumnWidth = 25 End Sub Sub format() ' Columns("B:B").ColumnWidth = 30 Columns("C:C").Select Selection.Delete Shift:=xlToLeft Columns("D:D").ColumnWidth = 7 Columns("E:E").ColumnWidth = 5 Cells.Select With Selection .HorizontalAlignment = xlLeft .VerticalAlignment = xlBottom .WrapText = False .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = False End With End Sub Sub process() Sheets("1").Select clean filter format Sheets("2").Select clean filter format End Sub |