Excel-Makro wird nicht in der vorgesehenen Reihenfolge ausgeführt

Excel-Makro wird nicht in der vorgesehenen Reihenfolge ausgeführt

Ich habe ein Makro geschrieben, das auf jedem Arbeitsblatt ein Add-In ausführen soll. Das Add-In ist ein Sage-spezifisches Add-In. Ich bin sicher, dass die Sendkeys mit allen von mir eingegebenen Sendkeys funktionieren sollten. Es führt jedoch meinen Test „Text hinzufügen“ auf allen Blättern aus, geht zurück zum ursprünglichen aktiven Blatt und führt das Add-In dann so oft aus, wie die Anzahl der Blätter beträgt – alle auf dem aktiven Blatt. Ich muss auch etwas hinzufügen, damit die ausgeblendeten Arbeitsblätter übersprungen werden …? Bitte helfen Sie.

Sub CountSheets()

Dim ws As Worksheet

Dim starting_ws As Worksheet

Set starting_ws = ActiveSheet 'remember which worksheet is active in the beginning

For Each ws In ThisWorkbook.Worksheets



 ws.Activate
                Application.SendKeys "%XRV%O", True
                Application.Wait (Now + #12:00:01 AM#)
                ws.Cells(1, 1) = "Created by Yo Castle 7 "
                Application.Wait (Now + #12:00:01 AM#)

Next


starting_ws.Activate 'activate the worksheet that was originally active


End Sub

Antwort1

Um das Makro nur auf den sichtbaren Blättern laufen zu lassen, können Sie einIFdirekt nachdem Sie Ihre Schleife gestartet haben. Dadurch wird geprüft, ob dieVisible-Eigenschaft ist „true“, andernfalls fahren Sie mit der nächsten fort.

Ihr Code lautet also:

Sub CountSheets()

Dim ws As Worksheet

Dim starting_ws As Worksheet

Set starting_ws = ActiveSheet 'remember which worksheet is active in the beginning

For Each ws In ThisWorkbook.Worksheets

If ws.Visible = true Then

 ws.Activate
                Application.SendKeys "%XRV%O", True
                Application.Wait (Now + #12:00:01 AM#)
                ws.Cells(1, 1) = "Created by Yo Castle 7 "
                Application.Wait (Now + #12:00:01 AM#)
End If

Next


starting_ws.Activate 'activate the worksheet that was originally active


End Sub

verwandte Informationen