Makro auf mehrere Blätter anwenden
#1
Hallo,
Ich habe 3 Makros:

Sub Sortieren_Häufigkeit()
'
' Sortieren_Häufigkeit Makro
'

'
    Range("AD3:AI52").Select
    Range("AD52").Activate
    ActiveWorkbook.Worksheets("VORLAGE").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("VORLAGE").Sort.SortFields.Add Key:=Range("AD52"), _
        SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("VORLAGE").Sort
        .SetRange Range("AD3:AI52")
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    Range("AD54").Select
End Sub

Sub Sortieren_Alphabet()
'
' Sortieren_Alphabet Makro
'

'
    Range("AD3:AI52").Select
    Range("AD52").Activate
    ActiveWorkbook.Worksheets("VORLAGE").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("VORLAGE").Sort.SortFields.Add Key:=Range( _
        "AE3:AE52"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("VORLAGE").Sort
        .SetRange Range("AD3:AI52")
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    Range("AD62").Select
End Sub

Sub Sortieren_PLZ()
'
' Sortieren_PLZ Makro
'

'
    Range("AD3:AI52").Select
    Range("AD52").Activate
    ActiveWorkbook.Worksheets("VORLAGE").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("VORLAGE").Sort.SortFields.Add Key:=Range( _
        "AD3:AD52"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("VORLAGE").Sort
        .SetRange Range("AD3:AI52")
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    ActiveWindow.SmallScroll Down:=18
End Sub

Mein Problem ist nun, dass die Makros sich Nur auf das Blatt "Vorlage" beziehen, dass bedeutet, auf ein anderes Blatt kann ich dieses Makro nicht anwenden. Gibt es eine Methode wie Ich das Makro ändern kann oder könnte mir jemand dabei helfen, da Ich mit VBA noch nicht so viel Erfahrung habe (Die Makros habe Ich über "Makro aufzeichnen" erstellt), wie Ich die Codes anpassen kann, denn ansonsten müsste Ich für jedes Blatt einen neuen Code erstellen.
Ich freue mich über jede Hilfe

Viele Grüße

Tobias
Top
#2
Hallo,

wenn Du diesen Ausdruck

ActiveWorkbook.Worksheets("VORLAGE")

mit folgendem ersetzt:


Activesheet

dann passiert alles in der aktiven/sichtbaren Tabelle.
Gruß Atilla
[-] Folgende(r) 1 Nutzer sagt Danke an atilla für diesen Beitrag:
  • McArthur1
Top
#3
Hallo atilla,
Vielen Dank du hast mir wirklich sehr weiter geholfen. :)
Danke schön :D 

Viele Grüße

Tobias
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste