Wie kann ich das Makro auf alle Tabellenblätter anwenden?
Ich möchte, dass die Makro auf alle TB angewendet wird.
Mit folgendem geht es nicht.
Public Sub INHALTE_IN_KOPFZEILE() For i = 1 To Sheets.Count Sheets(i).PageSetup.RightHeader = Range("A4").Value Next End Sub
Hier wird immer der Wert von A4 des ersten TB genommen und auf die anderen TB Kopfzeilen übertragen.
Welche Kleinigkeit muss ich ändern. Ich hatte es nämlich schon mal hinbekommen, aber leider nicht gespeichert.
Danke euch schon einmal vorab!
2 Antworten
Sollte eigentlich so klappen:
Public Sub INHALTE_IN_KOPFZEILE()
Dim I As Integer
For I = 2 To Sheets.Count
Sheets(I).PageSetup.RightHeader = Sheets(I).Range("A4").Value
Next
End Sub
Oder?
P.S.: Wenn Du bei den Themen oben "Excel" richtig geschrieben hättest (und nicht mit Tippfehler: "Excek") hättest Du sicher schon längst eine Antwort von den Experten hier bekommen. Ich habe jetzt mal "Excel" zu Deinen Themen hinzugefügt, damit die anderen auch mithelfen könne, falls es noch Probleme gibt.
DH! Oubyi
Ich habe auch noch einen, hier wird automatisch bei Änderung in Zelle A4 diese in alle Kopfzeilen rechts eingetragen:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim I As Integer
If Target.Address = "$A$4" Then
For I = 2 To Worksheets.Count
With Worksheets(I).PageSetup
.RightHeader = Range("A4")
End With
Next I
End If
End Sub
Ich weiß jetzt nicht alles von Excel, aber bist du sicher, dass die Sheets von 1 bis Sheets.Count indiziert sind und nicht von 0 bis Sheets.Count-1?
Hi Oubyi,
ich hatte mich eigentlich schon ein wenig gewundert, dass von dir kein Beitrag kommt. Ich bin das ja schon so gewohnt, in den letzten Wochen.
Danke für den Hinweis mit dem Tippfehler. Dann war das der Grund.
"Am Rande": Die Änderung hat's gebracht! Mittlerweile läuft die Tabelle so, wie ich sie haben wollte. Dank deiner vielen Hilfen, und natürlich die der anderen hier bei GF!!!!!
Grüße vom Niederrhein