Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema InputBox
BildScreenshot zu InputBox InputBox-Seite mit Beispielarbeitsmappe aufrufen

Suchen / Ersetzen in Kopfzeilen



Excel-Version: Versionsunabhängig

Betrifft: Suchen / Ersetzen in Kopfzeilen
von: Annja
Geschrieben am: 03.09.2002 - 11:25:30

Hallo,
ich habe eine Excel Datei mit > 20 Tabellenblättern. Ich muß den Inhalt der Kopfzeile von allen Blättern verändern. Über Suchen / Ersetzten klappt das bei mir nicht, die Kopfzeilen werden ausgenommen. Gibt es eine andere Möglichkeit ?

Viele Grüße
Annja


  

Re: Suchen / Ersetzen in Kopfzeilen
von: Udo RiHü
Geschrieben am: 03.09.2002 - 12:53:06

Hallo,
da bleibt die nur VBA.

Sub Kopfzeilen_ersetzen()
Suchtext = InputBox("Suchtext?")
ErsText = InputBox("Ersetzen durch?")
For Each Blatt In ActiveWorkbook.Sheets
With Blatt.PageSetup
If .LeftHeader = Suchtext Then .LeftHeader = ErsText
If .CenterHeader = Suchtext Then .CenterHeader = ErsText
If .RightHeader = Suchtext Then .RightHeader = ErsText
End With
Next Blatt
End Sub

Hiermit werden die Kopfzeilen aller Blätter durchsucht und ersetzt.

Gruss Udo


  

Re: Suchen / Ersetzen in Kopfzeilen
von: Annja
Geschrieben am: 03.09.2002 - 15:14:56

Hallo Udo,
vielen Dank für die Info. Leider habe ich keine Erfahrung mit VBA.
Ich habe die Sub in ein neues Module in meiner Datei eingefügt und über Ausführen (F5) gestartet. Ich bekomme auch die beiden Abfragen auf Suchtext / zu ersetzender Text aber in der Kopfzeile tut sich nichts. Was mache ich noch falsch ?

Gruß,
Annja


  

Re: Suchen / Ersetzen in Kopfzeilen
von: Udo RiHü
Geschrieben am: 03.09.2002 - 16:14:59

Hallo Annja,
Suchtext? ist der zu ersetzende Text, d.h.dein Kopfzeilentext. Das muss genau stimmen.
Ersetzen durch? ist der Text, der statt dessen eingefügt werden soll.
Wenn du nur Teile suchen willst, klappt das so nicht. Dann so:

Option Compare Text
Sub Kopfzeilen_ersetzen()
Suchtext = InputBox("Suchtext?")
ErsText = InputBox("Ersetzen durch?")
For Each Blatt In ActiveWorkbook.Sheets
With Blatt.PageSetup
If .LeftHeader Like "*" & Suchtext & "*" Then .LeftHeader = ErsText
If .CenterHeader Like "*" & Suchtext & "*" Then .CenterHeader = ErsText
If .RightHeader = "*" & Suchtext & "*" Then .RightHeader = ErsText
End With
Next Blatt
End Sub

Gruss Udo

  

Re: Suchen / Ersetzen in Kopfzeilen
von: Annja
Geschrieben am: 03.09.2002 - 21:48:12

Hallo Udo,
klappt leider immer noch nicht. Den Suchtext und den zu ersetzenden Text hatte ich von Anfang an komplett eingegeben. Selbst die Veränderung der Funktion bringt keine Änderung.
Muß ich noch irgend was anders machen außer Ausführen (F5) und eingeben der Texte ?

Gruß,
Annja


  

Re: Suchen / Ersetzen in Kopfzeilen
von: Udo RiHü
Geschrieben am: 04.09.2002 - 09:40:41

Hallo Annja,
das verstehe ich nicht.
Ich schicke dir mal die Datei per eMail. Ich habe da noch ein bischen dran gebastelt. Jetzt werden auch Teilstrings ersetzt. Die Kopfzeile ist auf aleen Blättern "Bericht August 2002". Es hat problemlos geklappt, "August" durch "September" zu ersetzen. Auch "Bericht" lässt sich problemlos durch "Report" erstzen. Groß- und Kleinschreibung muss beachtet werden.

Gruss Udo


  

Re: Suchen / Ersetzen in Kopfzeilen
von: Annja
Geschrieben am: 04.09.2002 - 13:53:45

Hallo Udo,
die Datei per Email habe ich nicht bekommen.
Jetzt klappt es aber. Mir ist aufgefallen warum es nicht ging. Der Text den ich verändern wollte war im rechten Bereich und hier stand in Deinem Code ein "=" statt ein "Like" in dem Programmauszug. Ich habe es geändert und jetzt gehts.

Vielen Dank für die Hilfe.

Gruß,
Annja


  

Re: Suchen / Ersetzen in Kopfzeilen
von: Annja
Geschrieben am: 04.09.2002 - 14:01:19

Hallo Udo,
die Veränderung der Texte ist jetzt okay. Leider wird die Schrifthöhe ebenfalls verändert. Kann man das auch so machen, daß die Schrifthöhe bestehen bleibt ?

Gruß,
Annja


 

Beiträge aus den Excel-Beispielen zum Thema "Suchen / Ersetzen in Kopfzeilen"