Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
524to528
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
524to528
524to528
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zellinhalt in die Kopfzeile

Zellinhalt in die Kopfzeile
28.11.2004 13:01:05
Korl
Hallo,
ich möchte den Zellinhalt in die linke Benutzerdefinierte Kopfzeile immer automatisch einfügen lassen.
In der Recherche habe ich den nachfolgenden Code gefunden.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error Resume Next
If Target.Address = "$A$1" Then
With ActiveSheet
.PageSetup.LeftHeader = .Range("A1")
End With
End If
End Sub

Den Code habe ich in "Diese Arbeitsmappe" kopiert.
Ich habe mir Probehalber eine Arbeitsmappe mit einem Tabellenblatt angelegt und ausprobiert.
Es wird aber nicht der Zellinhalt von Range("A1") in der Kopfzeile angezeigt.
Was mache ich falsch?
Gruß Korl

19
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellinhalt in die Kopfzeile
28.11.2004 13:04:02
Josef Ehrensberger
Hallo Korl!
Der Code gehört in das Modul der Tabelle!

Gruß Sepp
Danke, Sepp, klappt prima
28.11.2004 14:41:31
Korl
Hallo Sepp,
Danke für Dein Hinweis, es klappt prima.
Gruß Korl
muß doch noch nachfragen
28.11.2004 15:10:04
Korl
Hallo,
ich muß doch nochmal nachfragen.
Mein Problem ist, dass ich Tabelle1 ausdrucken möchte aber den Zellinhalt für die Kopfzeile aus Tabelle2 nehmen muß.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error Resume Next
If Target.Address = "$K$1" Then
With Worksheet("Tabelle2")
.PageSetup.LeftHeader = .Range("K1")
End With
End If
End Sub

In meiner Naivität habe ich einfach "ActiveSheet" durch "Worksheet("Tabelle2")" ersetzt... es funktioniert nicht. Ebenso habe ich versucht durch eine Formel den Wert von "Tabelle2" Range("K1") in "Tabelle1" Range("K1") zu holen... funktioniert auch nicht, da sicherlich die "Enter-Eingabe" fehlt.
Gibt es hierfür eine Lösung?
Gruß Korl

Anzeige
AW: muß doch noch nachfragen
28.11.2004 16:30:02
Josef Ehrensberger
Hallo Korl!
Schreib den Code in das Modul von Tabelle2.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error Resume Next
If Target.Address = "$K$1" Then
Sheets("Tabelle1").PageSetup.LeftHeader = Range("K1")
End If
End Sub

Dann wird jedesmal wenn sich der Wert von "K1" in Tabelle2 ändert,
die Kopfzeile von Tabelle1 angepasst!
Gruß Sepp
Steigerung z.B. "K1" & "K2"
28.11.2004 21:06:17
Korl
Hallo Sepp,
vielen Dank für Deine Mühe und Hilfe.... es funktioniert!!!
Ich denke immer wieder neu über meine Strukturen nach... gibt es noch eine Steigerung?
Der Übersicht halber möchte ich 2 Zellinhalte verbinden, die in der Kopfzeile angezeigt werden sollten.
Ich habe folgendes versucht:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error Resume Next
If Target.Address = "$K$1" & "$K$2" Then
Sheets("Tabelle1").PageSetup.LeftHeader = Range("K1") & Range("K2")
End If
End Sub

Entschuldige bitte mein häppchenweises Vorgehen!
Gruß Korl
Anzeige
AW: Steigerung z.B. "K1" & "K2"
28.11.2004 21:54:52
Josef Ehrensberger
Hallo Korl!
Kein Problem.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error Resume Next
If Not Intersect(Target, [K1:K2]) Is Nothing Then
Sheets("Tabelle1").PageSetup.LeftHeader = [K1] & " " & [K2]
'oder
'Sheets("Tabelle1").PageSetup.LeftHeader = [K1]
'Sheets("Tabelle1").PageSetup.CenterHeader = [K2]
End If
End Sub


Gruß Sepp
Sepp es haut alles hin! Daaanke
28.11.2004 22:44:19
Korl
Hallo Sepp,
besten Dank auch für die 2. Lösungsvariante. Selber habe ich die Zellinhalte nebeneinander "K1:L1" versucht.
Es haut alles hin.
Du hast mir einen Großen gefallen getan... kann jetzt ohne zu Grübeln ins Bett gehen.
Daaanke
Gruß Korl
Anzeige
Schriftgradänderung möglich?
29.11.2004 11:55:41
Korl
Hallo,
ich war im Glauben der Schriftgrad aus den Zellen wird mit übernommen - denkste :-(
Also, ich würde gerne den Zellwert der in die Kopfzeile eingetragen wird,
im Schriftgrad 12 und fett darstellen lassen.
Ich habe mich schon daran versucht, bekomme es aber nicht hin.
Gibt es eine Möglichkeit?
Gruß Korl
AW: Schriftgradänderung möglich?
29.11.2004 12:31:54
Josef Ehrensberger
Hallo Korl!
Ja, es gibt die Möglichkeit.
.PageSetup.LeftHeader = "&""Arial,Fett""&12" & [K1] & " " & [L1]
Gruß Sepp
AW: Schriftgradänderung möglich?
29.11.2004 15:18:43
Korl
Hallo Sepp,
besten Dank für Deine Hilfe. Mein Code sieht folgender Maßen aus:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error Resume Next
If Not Intersect(Target, [K1:L1]) Is Nothing Then
Sheets("Tabelle1").PageSetup.LeftHeader = [K1] & " " & [L1]
'oder
'Sheets("Tabelle1").PageSetup.LeftHeader = [K1]
'Sheets("Tabelle1").PageSetup.CenterHeader = [K2]
With ActiveSheet.PageSetup
.PageSetup.LeftHeader = "&""Arial,Fett""&12" & [K1] & " " & [L1]
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = ""
.RightFooter = ""
.LeftMargin = Application.InchesToPoints(0.787401575)
.RightMargin = Application.InchesToPoints(0.787401575)
.TopMargin = Application.InchesToPoints(0.984251969)
.BottomMargin = Application.InchesToPoints(0.984251969)
.HeaderMargin = Application.InchesToPoints(0.4921259845)
.FooterMargin = Application.InchesToPoints(0.4921259845)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlPortrait
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
.PrintErrors = xlPrintErrorsDisplayed
End With
End If
End Sub


Vorher hatte ich mich schon dran versucht mit den Makro-Recorder und habe dort Deine Zeile eingebaut. So läuft es aber noch nicht.
Sicherlich habe ich hier wieder etwas falsch!
Gruß Korl
Anzeige
AW: Schriftgradänderung möglich?
29.11.2004 15:36:44
Josef Ehrensberger
Hallo Korl!
Das sollte reichen.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error Resume Next
If Not Intersect(Target, [K1:L1]) Is Nothing Then
Sheets("Tabelle1").PageSetup.LeftHeader = "&""Arial,Fett""&12" & [K1] & " " & [L1]
End If
End Sub

Gruß Sepp
Sepp, kurz aber herzlich - DANKE-
29.11.2004 17:46:20
Korl
Hallo Sepp,
Du hast mir mal wieder sehr geholfen, dafür ein herzliches Dankeschön.
Diese Kapitel ist für mich damit abgeschlossen. Eine Hürde muß ich in meiner Arbeitsmappe noch nehmen, das aber im neuen Thread.
Gruß Korl
Quelle/Ziel ungleich, was nun?
30.11.2004 08:45:33
Korl
Hallo Sepp,
ich verzweifle jetzt langsam. Bin jetzt in meiner eigentlichen Arbeitsmappe und mußte deshalb den Code einwenig verändern, da die Einträge in Tabelle2 in der Spalte C erfolgen und in die Tabelle1 jetzt("Kreis") diese Werte soweit wie möglich von meinen Einträgen in dieser Tabelle platzieren möchte.
Also sind jetzt Quellzelle und Zielzelle nicht identisch.
Mein Code jetzt, der wieder nicht funktioniert:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error Resume Next
If Not Intersect(Target, [C2&C4]) Is Nothing Then
Sheets("Kreis").PageSetup.LeftHeader = "&""Arial,Fett""&12Einteilung " & [K1] & "   " & [L1]
End If
End Sub


Gibt es dafür auch eine Lösung?
Gruß Korl
Anzeige
AW: Quelle/Ziel ungleich, was nun?
30.11.2004 13:43:45
Josef Ehrensberger
Hallo Korl!
Wenn ich dich richtig verstehe, dann soll bei änderung in "Tabelle2"
in den Zellen "C2" oder "C4", die Werte von "K1" und "L1" als Kopfzeile
in Tabelle "Kreis" eingetragen werden.
Dann dieser Code in Tabelle2.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error Resume Next
If Not Intersect(Target, [C2:C4]) Is Nothing Then
Sheets("Kreis").PageSetup.LeftHeader = "&""Arial,Fett""&12" & "Einteilung " & [K1] & "   " & [L1]
End If
End Sub


Gruß Sepp
AW: Quelle/Ziel ungleich, was nun?
30.11.2004 14:22:36
Korl
Hallo Sepp,
ja so hätte ich es gerne, aber die Zellinhalte werden aus "K1" + "L1" nicht in die Kopfzeile übernommen. Nur die Konstante "Einteilung" wird angezeigt.
Schön währe es, wenn ich den Zellinhalt aus "C2:C4" an einen beliebigen Ort in Sheets("Kreis") ablegen könnte.
Gruß Korl
PS: Da mein Notebook in Reparatur ist, spiele ich das ganze in Excel 2002 durch. Macht es einen Unterschied?
Anzeige
Nachfrage
30.11.2004 14:33:21
Josef Ehrensberger
Hallo Korl!
Nochmal:
"K1" bzw. "L1" aus "Tabelle2" sollen in die Kopfzeile, oder aus "Kreis" ?
"Schön währe es, wenn ich den Zellinhalt aus "C2:C4" an einen beliebigen Ort in Sheets("Kreis") ablegen könnte"
Da versteh ich nun überhaupt nur Bahnhof! Kannst du das nochmal erläutern?
Gruß Sepp
AW: Nachfrage
30.11.2004 14:48:13
Korl
Hallo Sepp,
danke für Deine schnelle Reaktion.
Die Werte, die ich in die Kopzeile haben möchte, trage ich in Tabelle2 C2-C4 ein.
In Tabelle("Kreis") werden sie in Zelle K1 u. L1 angezeigt um von dort aus übernommen zu werden in die Kopfzeile.
Sind die Zellstandorte auf beiden Blättern identisch, funktioniert alles.
Gruß Korl
Anzeige
AW: Nachfrage
30.11.2004 14:54:22
Josef Ehrensberger
Hallo Nochmal!
Damit du die Werte in die Kopfzeile von "Kreis" anzeigen kannst, müssen diese aber
nicht in "Kreis" stehen!
Die Werte stehen in "Tabelle2" in "C2" und in "C4".

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error Resume Next
If Not Intersect(Target, [C2,C4]) Is Nothing Then
Sheets("Kreis").PageSetup.LeftHeader = "&""Arial,Fett""&12" & "Einteilung " & [C2] & "   " & [C4]
'um die Werte auch in "Kreis" anzuzeigen
Sheets("Kreis").[K1] = [C2]
Sheets("Kreis").[L1] = [C4]
'sonst diese Zeilen entfernen!
End If
End Sub

Gruß Sepp
Anzeige
peinlich für mich, großes Danke an Dich
30.11.2004 15:27:21
Korl
Hallo Sepp,
da bin ich doch eine ganze Zeit mit einem falschen Pferd unterwegs gewesen!
Ein großes Dankeschön für Deine Unterstützung. Es funktioniert.
Gruß Korl

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige