Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1548to1552
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Beschriftung von Kopf-/Fußzeile per VBA

Beschriftung von Kopf-/Fußzeile per VBA
27.03.2017 11:02:21
Kopf-/Fußzeile
Hallo,
ich habe irgendwie mehrere Probleme beim oben genannten Thema:
Allgemein: Ich habe diverse Tabellen- UND Diagrammblätter, welche ich per VBA mit einer Kopf- und Fußzeile versehen will. Die Daten dafür kommen aus Textboxen von Userforms und per VBA-Codes für Registername, Datum ect.
der vba code:

Dim Ws As Worksheet
Dim Wc As Object
For Each Ws In ThisWorkbook.Worksheets
With Ws
If Ws.Name  "Start" And Ws.Visible = True Then
.PageSetup.LeftHeader = "&""Formata Bold,Standard""&26XXX &""Formata Condensed, _
Standard""&16XXX"
.PageSetup.CenterHeader = "&""Swis721 Cn BT,Fett""&14" & "YYY" & Chr(10) & "&A"
.PageSetup.RightHeader = ""
.PageSetup.LeftFooter = "&""Swis721 Cn BT,Roman""&11" & TextBox6.Value & Chr(10) &  _
TextBox2.Value & Chr(10) & Chr(10)
.PageSetup.CenterFooter = ""
.PageSetup.RightFooter = "&""Swis721 Cn BT,Roman""&11" & TextBox8.Value & Chr(10) &  _
"yyy" & Chr(10) & "erstellt: &D" & Chr(10) _
& "Änderungsindex / Datum: " & TextBox7.Value & Chr(10) & "Seite &S von &G"
End If
End With
Next Ws
For Each Wc In ThisWorkbook.Charts
With Wc
If Wc.Visible = True Then
.PageSetup.LeftHeader = "&""Formata Bold,Standard""&20xxx &""Formata Condensed,Standard" _
"&16xxx"
.PageSetup.CenterHeader = "&""Swis721 Cn BT,Fett""&12" & "yyy" & Chr(10) & "&a"
.PageSetup.RightHeader = ""
.PageSetup.LeftFooter = "&""Swis721 Cn BT,Roman""&11" & pro
.PageSetup.CenterFooter = "&""Swis721 Cn BT,Roman""&11" & mess
.PageSetup.RightFooter = "&""Swis721 Cn BT,Roman""&11" & TextBox8.Value & Chr(10) & " _
yyy" & Chr(10) & "erstellt: &D" & Chr(10) _
& "Änderungsindex / Datum: " & TextBox7.Value & Chr(10) & "Seite &P von &N"
End If
End With
Next Wc

1. Wenn ich den Code mehrmals laufen lasse, überschreibt er mir die alten Daten nicht einfach, sondern fügt sie in ganz andere Positionen (z.b. leftheader statt wie vorgegeben rightfooter) ein oder auch mit anderen Formatierungen (durchgestrichen, fett) als ich vorgegeben habe.
2. ich wollte 1. mit diesem Code abfangen:

Dim Wa As Object
For Each Wa In ThisWorkbook.Sheets 'Kopf- und Fußzeilen leeren
With Wa
If .Visible = True Then
.PageSetup.LeftHeader = ""
.PageSetup.CenterHeader = ""
.PageSetup.RightHeader = ""
.PageSetup.LeftFooter = ""
.PageSetup.CenterFooter = ""
.PageSetup.RightFooter = ""
End If
End With
Next Wa
Dies tut er aber nicht, wenn ich ihn in meinem VBA-Code (in einer userform) ausführen lasse. Als einzelmakro (aus einem Tabellenblatt) jedoch funktioniert er. Wieso?
3. die VBA-Codes (Quelle: https://msdn.microsoft.com/de-de/library/office/ff822794.aspx) funktionieren nicht alle. &D gibt mir das datum richtig aus. bei &P gibt er mir aber das register aus, statt der aktuellen seite und bei &N den dateinamen statt der gesamtseitenanzahl. &A geht gar nicht. Ist das ein Sprachenproblem; weil er mir z.b. bei &S die Seitenzahl ausgibt?
Ich nutze Excel 2016 in deutscher Sprache.

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Beschriftung von Kopf-/Fußzeile per VBA
27.03.2017 11:37:41
Kopf-/Fußzeile
Okay, Punkt 3 habe ich mittlerweile selber durch raten gelöst. Liegt wohl wirklich an der Spracheinstellung des Excels. Dachte bisher englisch geht immer (zb. &P für Page, aber es ist &S für [wahrscheinlich Seite])
AW: Beschriftung von Kopf-/Fußzeile per VBA
27.03.2017 11:55:35
Kopf-/Fußzeile
Update 2:
Wenn ich mit dem Debugger dem Löschvorgang mit Einzelschritt durchlaufe, "vergisst" er immer wieder einzelne Fragmente zu löschen. Hat dazu einer eine Idee, was da schiefläuft? Wäre ganz toll :)
Grüße
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige