Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Feld von A2 in der Kopfzeile
#1
Hallo Forum

Wie belomme ich den Inhalt von A2 in die Kopfzeile? Da sind die Jahreszalhlen drin....

Datei liegt bei.

Gruss
cuba


Angehängte Dateien
.xlsb   Cuba's Frage.xlsb (Größe: 7,94 KB / Downloads: 4)
Antworten Top
#2
Hallo Cuba

Welche Kopfzeile?
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#3
Hallo,

kopiere den folgenden Code in das Modul 'DieseArbeitsmappe':

Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
   ActiveSheet.PageSetup.LeftHeader = "Ein beliebiger Text: " & Range("A2").Value
End Sub

Alternativ kannst du auch RightHeader oder CenterHeader etc. verwenden - hier hilft der Makrorekorder im Fall der Fälle weiter.
Gruß
Peter
Antworten Top
#4
Hallo Peter

Vielen Dank für die Hilfe.

Ich habe in dieser Datei etwa 8 Blätter, wobei dann nur bei einigen diese Formel zu Einsatz kommen soll.

Gibt es allenfalls eine nicht VBA-Lösung und wenn nicht, wie macht man das bei unterschiedlichen Blättern?

LG
cuba
Antworten Top
#5
Hallo,

meinst Du so?

Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
   Dim lngC As Long
  
   For lngC = 1 To ThisWorkbook.Worksheets.Count
      Select Case Worksheets(lngC).Name
         Case "Tabelle1", "Tabelle2" 'hier die Tabellennamen anpassen
            Worksheets(lng).PageSetup.LeftHeader = "Ein beliebiger Text: " & Worksheets(lngC).Range("A2").Value
      End Select
   Next lngC
End Sub
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#6
(18.07.2015, 08:47)Steffl schrieb: Hallo,

meinst Du so?

Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
  Dim lngC As Long
 
  For lngC = 1 To ThisWorkbook.Worksheets.Count
     Select Case Worksheets(lngC).Name
        Case "Tabelle1", "Tabelle2" 'hier die Tabellennamen anpassen
           Worksheets(lng).PageSetup.LeftHeader = "Ein beliebiger Text: " & Worksheets(lngC).Range("A2").Value
     End Select
  Next lngC
End Sub

Hallo Stefan

Vielen Dank für Deinen Vorschlag. Ich muss aber meine Anfrage etwas präzisieren......, sorry.

Die Datei hat total 8 Blätter, davon sind 3 Blätter von der Jahreszahl betroffen.
Das Blatt Statistik hat in der Kopfzeile den Text: Statistik Angebote in der Ostschweiz danach sollte die eingestellt Jahreszahl aus A2 kommen, also Statistik Angebote in der Ostschweiz 2015.
Das nächste Blatt heisst dann Verrechnung per KW und da sollte dann in der Kopfziele Faktuerierte Aufträge Ostschweiz 2015 stehen, wobei hier die Jahreszahl in T1 steht
Das letzte Blatt mit dieser Funktion ist das Blatt Auftragseingang per KW und hier steht dann in der Kopfzeile: Eingegangene Aufträge Ostschweiz 2015, wobei hier die Jahreszahl in T1 steht

Mit den restlichen 5 Blättern kann ich ganz normal die Blattnamen einsetzen.
Es wr mir nicht bewusst, dass dies nur über VBA zu lösen ist, darum hatte ich die Test-Datei beigefügt, allerdings nur mit einem Blatt.

Wenn ich also Deinen Vorschlag ummünzen kann, wie genau muss ich da vorgehen? Geht das unter diesen Umständen überhaupt?

Gruss
cuba
Antworten Top
#7
Hi Cuba,

mal 'ne ganz blöde Frage. Warum muss den die Jahreszahl unbedingt auf den bereits vorhandenen Text folgen? Lies diese doch einfach in den Center Header ein und lass die Texte im linken Kopfbereich stehen.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#8
Hallo zusammen

Vielen DAnk für Eure Beiträge.

Da ich mit keinem den geünschten Erfolg erzielen konnte, habe ich meine Datei "umgebaut", so dass ich nun mit meiner rudimtären Lösung gut leben kann.

Gruss
cuba
Antworten Top
#9
Hallo,

(18.07.2015, 11:59)cuba schrieb: Da ich mit keinem den geünschten Erfolg erzielen konnte, habe ich meine Datei "umgebaut", so dass ich nun mit meiner rudimtären Lösung gut leben kann.

Echt toll :s War das jetzt so brisant das Du keine Zeit hattest ein wenig auf eine Lösung zu warten?

Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
   Dim lngC As Long
   Dim vntWorksheetName As Variant
   Dim vntText As Variant
   Dim vntAdresse As Variant
  
   vntWorksheetName = Array("Statistik", "Verrechnung per KW", "Auftragseingang per KW")
   vntText = Array("Statistik Angebote in der Ostschweiz ", "Faktuerierte Aufträge Ostschweiz ", "Eingegangene Aufträge Ostschweiz ")
   vntAdresse = Array("A2", "T1", "T1")
  
   For lngC = 1 To ThisWorkbook.Worksheets.Count
      If Worksheets(lngC).Name = vntWorksheetName(lngC - 1) Then
         Worksheets(lng).PageSetup.LeftHeader = vntText(lngC - 1) & Worksheets(lngC).Range(vntAdresse(lngC - 1)).Value
      End If
   Next lngC
End Sub
Gruß Stefan
Win 10 / Office 2016
Antworten Top


Gehe zu:


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