Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1200to1204
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

Eintrag über mehrere Tabellen Ersetzen per VBA

Eintrag über mehrere Tabellen Ersetzen per VBA
kle
Hallo,
ich habe eine Datei mit vielen Arbeitsblättern. Ich möchte gern per VBA, dass der Text aus Textbox1 vom Sheet("List") in allen anderen Datenblättern gesucht wird und durch den Text der Textbox2 ersetzt wird.
Leider klappt es nicht so ganz...mit der Auswahl der Bereiche. Muss ein Arbeitsblatt erst AKTIV sein, um die Funktion des Ersetzens nutzen zu können ?
Und wie ganz ich das machen, dass Excel die jeweiligen Arbeitblätter im Hintergrund durchsucht und alle Einträge entsprechend ändert ?!
Versuchte es so:
For i = worksheets.count to 1 step-1
if worksheets(i).Name "Data" then
Worksheets(i).Range("A1").
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
' Kennzahl
Selection.Replace What:=tKennzahlalt, Replacement:=objTBKennzahl.Text, LookAt:= _
xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
end if
next i
Gruß Kay

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Eintrag über mehrere Tabellen Ersetzen per VBA
17.02.2011 15:32:26
Rudi
Hallo,
das geht doch auch mit der normalen Ersetzen-Funktion.
Zeichne den Vorgang auf.
Gruß
Rudi
AW mit Recorder aufgezeichnet, half nichts...
17.02.2011 15:58:21
kle
Hallo Rudi,
hatte ich versucht - auch mit dem Rekorder. So sah es aus, mit der Optioneinstellung: Suche in "Arbeitsmappe"
Selection.Replace What:="Artikel 123", Replacement:= _
"Artikel 567", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase _
:=False, SearchFormat:=False, ReplaceFormat:=False
(genauso auch mit der Suchoption Suche in: "Blatt")...komisch, kein Unterschied ?!?
Habe es dann in meinen Code so übernommen, aber es passiert nichts. Keine Änderung in den Blättern.
Gruß
Kay
Anzeige
AW: AW mit Recorder aufgezeichnet, half nichts...
17.02.2011 16:15:47
Rudi
Hallo,
einfach nur
Cells.Replace What:=.....
Gruß
Rudi
AW: leider noch immer nicht...
17.02.2011 16:35:19
kle
Keine Ahnung, aber bei mir klappt es irgendwie nicht.
Folgenden Code nutze ich:
For i = Worksheets.count to 1 step - 1
If worksheets(i).Name "Data" then
Worksheets(i).Cells.Replace What:=tKennzahlalt, Replacement:=tKennzahlneu, LookAt:= _
xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
end if
next i
Aber er scheint nicht alle Zellen im Arbeitblatt zu durchsuchen, da Änderungen nicht erfolgen ?!?
Gruß
Kay
Wat denn nu?
17.02.2011 16:48:47
Rudi
Hallo,
erst willst du in der ganzen Mappe ersetzen, jetzt wieder nicht?
Dein Code ersetzt nur in Worksheets(i).
Evtl. noch LookIn:=xlValues bzw. xlFormulas einbauen.
Gruß
Rudi
Anzeige
AW: Wat denn nu?
17.02.2011 18:07:05
kle
Hallo Rudi,
...sorry, wollte erst in allen es ersetzen, aber das klappte ja nicht und da aber der aufgezeichnete Code kein Unterschied aufwies, dachte ich ich mache da was falsch und bin wieder auf die Schleife zurück gegangen.
Habe grad entdeckt, das ein Blatt schreibgeschützt war (warum auch immer), kann es daran gelegen haben, das dort dann die Änderungen nicht vorgenommen wurden ?
Habe nun Deinen Vorschlag mit .cells.Replace und LookIn:=xlValues genommen und es scheint zu funktionieren. Vielen lieben Dank - für Deine Geduld!
Woran erkenn ich denn am Code - ob er jetzt in allen Blättern sucht oder nur in einem bestimmt. An der Einleitung vor dem What:=... ?! D.h. ohne was, nur mit Cells.Replace wäre dann über alle Datenblätter ?!?
Habe in der Hilfe nicht wirklich was gefunden dazu...
Gruß und Danke
Kay
Anzeige
AW: Wat denn nu?
17.02.2011 18:30:06
Rudi
Hallo,
An der Einleitung vor dem What:=... 

woran sonst? Da wird schließlich definiert, wo gesucht und ersetzt werden soll.
Gruß
Rudi

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige