Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ein Makro auf mehreren Tabellenblättern ausführen

Ein Makro auf mehreren Tabellenblättern ausführen
24.04.2018 12:43:32
Josi
Hallo zusammen wie schaffe ich es das folgendes Makro
Sub Spieltag_1()
Range("a4:m36").Sort key1:=Range("e4"), order1:=xlAscending, _
key2:=Range("f4"), Order2:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:= _
xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, _
DataOption3:=xlSortNormal
Range("f4:f7").Font.ColorIndex = 10
Range("f8:f10").Font.ColorIndex = 3
End Sub

Nur auf bestimmten Tabellenblättern ausgeführt wird?
z.B. Tabellenblatt 5, Tabellenblatt, 11 Tabellenblatt 17
Vielen Dank
Josi

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ein Makro auf mehreren Tabellenblättern ausführen
24.04.2018 12:56:58
Mullit
Hallo,
bspw. so:
Sub Spieltag_1()
Select Case ActiveSheet.Name
Case "Tabellenblatt 5", "Tabellenblatt 11", "Tabellenblatt 17"
Range("a4:m36").Sort key1:=Range("e4"), order1:=xlAscending, _
key2:=Range("f4"), Order2:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:= _
xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, _
DataOption3:=xlSortNormal
Range("f4:f7").Font.ColorIndex = 10
Range("f8:f10").Font.ColorIndex = 3
End Select
End Sub

Gruß, Mullit
AW: Ein Makro auf mehreren Tabellenblättern ausführen
24.04.2018 13:04:38
Josi
Nicht ganz
es soll auf den bestimmten ausgeführt werden ohne das sie selektiert sind
also ich befinde auf irgendeinem Tabellenblatt und es soll auf auf bestimmten Tabellenblättern ausgeführt werden.
wie zum Beispiel
Tabellenblatt 5, Tabellenblatt, 11 Tabellenblatt 17
Vielen Dank Josi
Anzeige
AW: Ein Makro auf mehreren Tabellenblättern...
24.04.2018 13:11:27
Bernd
Servus Josi,
vielleicht so:

Sub Spieltag_1()
Dim ws as Worksheet
For Each ws in ThisWorkbook.Worksheets
Select Case ws.Name
Case "Tabellenblatt 5", "Tabellenblatt 11", "Tabellenblatt 17"
Range("a4:m36").Sort key1:=Range("e4"), order1:=xlAscending, _
key2:=Range("f4"), Order2:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:= _
xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, _
DataOption3:=xlSortNormal
Range("f4:f7").Font.ColorIndex = 10
Range("f8:f10").Font.ColorIndex = 3
End Select
Next ws
End Sub
Grüße, Bernd
Anzeige
AW: Ein Makro auf mehreren Tabellenblättern...
24.04.2018 13:18:58
Josi
Nein leider nicht
er führt die Sortierung immer nur auf dem aktiven Tabellenblatt
AW: Ein Makro auf mehreren Tabellenblättern...
24.04.2018 13:51:10
Mullit
Hallo,
yo, da hatt ich Dich mißverstanden, mit nem Loop wie Bernd schrieb, nur mußt du noch alle Zellzugriffe mit dem Sheet referenzieren, nicht getested, aber grob so die Richtung...
Option Explicit
Sub Spieltag_1()
Dim wksSheet As Worksheet
For Each wksSheet In ThisWorkbook.Worksheets
With wksSheet
Select Case .Name
Case "Tabellenblatt 5", "Tabellenblatt 11", "Tabellenblatt 17"
.Range("a4:m36").Sort key1:=.Range("e4"), order1:=xlAscending, _
key2:=.Range("f4"), Order2:=xlAscending, _
Header:=xlGuess, OrderCustom:=1, MatchCase:=False,  _
Orientation:= _
xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:= _
xlSortNormal, _
DataOption3:=xlSortNormal
.Range("f4:f7").Font.ColorIndex = 10
.Range("f8:f10").Font.ColorIndex = 3
End Select
End With
Next
End Sub

Gruß, Mullit
Anzeige
AW: Ein Makro auf mehreren Tabellenblättern...
24.04.2018 15:17:56
Josi
Vielen Dank euch beiden hat geklappt

314 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige