Я пытаюсь прокрутить каждый рабочий лист в книге, но он не работает. Я думаю, что это ActiveWorkbook.Worksheets не распознает каждый рабочий лист и работает только на рабочем листе Active. Любые предложения были бы замечательными! Я уверен, что это базовое решение, но, похоже, не может понять это. Благодаря!Петля для прохождения каждого рабочего листа в рабочей книге
Sub LoopThroughWorksheets()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
If (ws.Name <> "Sheet1") And (ws.Name <> "Sheet2") And (ws.Name <> "Sheet8") And (ws.Name <> "Sheet42") Then
With ws
'code
'Sheets("Formula").Select
Range("FormulaRow").Copy
'Selection.Copy
ActiveSheet.Select
ActiveSheet.Range("A1").Select
ActiveSheet.Paste
Calculate
Range("Q1:X1").Select
Selection.Copy
Range("Q3:X3000").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
Calculate
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End With
End If
Next ws
End Sub
«Я думаю, что это ActiveWorkbook.Worksheets не признающие каждый рабочий лист»: Это хорошо, чтобы иметь теорию, которая может объяснить проблему. Почему бы не добавить код в свой цикл, чтобы показать, действительно ли ActiveSheet изменяется на каждой итерации? – MartynA
Я вижу, что это не меняется на каждой итерации, поэтому я думал об этом. Благодарю. –