online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon jojo5 vom 13.02.2020, 16:45 Options

VBA Suchen und ersetzen - Blatt/Arbeitsmappe

Hallo,

durch Aufzeichnen habe ich den folgenden Code in mein Makro aufgenommen:

Columns("E:E").Select
Selection.Replace What:="techn. OK", Replacement:="TOK", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

Wenn ich es richtig ausgetestet habe, hat man keine Möglichkeit, in VBA-Code einzubauen, dass auf keinen Fall in der gesamten Arbeitsmappe, sondern ausschließlich in dem zuvor selektierten Bereich (hier: Spalte E) ersetzt wird. In meinem Fall stand im "Suchen und Ersetzen"-Popup (wahrscheinlich von einem früheren Ersetzen-Vorgang) die erste Einstellung "Suchen" auf 'Arbeitsmappe' als das Makro lief. Dadurch hat es mir auch den Inhalt sämtlicher Formeln ersetzt, was sehr viele Verknüpfungen vernichtete.

Wie kann ich sicherstellen, dass das Makro ausschließlich im markierten/selektierten Bereich ersetzt?

Danke für eure Hilfe, Gruß
Jojo


Antwort schreiben

Antwort 1 von gast123 vom 14.02.2020, 13:02 Options

hi all :-)

was spricht dagegen die betroffene erste zeile wegzulassen ?

gruss gast123

Antwort 2 von jojow vom 14.02.2020, 13:35 Options

Hallo Gast123,

Du meinst diese?

Columns("E:E").Select

Das verstehe ich nicht - es sollen ja gerade nur diese Felder für das Ersetzen herangezogen werden.

Gruß
Jojo

Antwort 3 von gast123 vom 15.02.2020, 09:54 Options

hi jojo :-)

zitat
Wie kann ich sicherstellen, dass das Makro ausschließlich im markierten/selektierten

indem die erste zeile weggelassen werden sollte

bzw bei festen bereichen workbook wie worksheet angaben man vornehmen koennte

oder praezisiere deine problemstellung

gruss gast123

Antwort 4 von gast123 vom 15.02.2020, 10:03 Options

hi jojo :-)

eine vorgehende selection von worbooks wie worksheets sollte entfernt werden bzw korrigiert werden

zu 99% sind selectionen ueberfluessig wie auch zeitaufwendiger im ablauf

bei einem aufgenommenen makro sind die selectionen durch direkte befehlszugriffe zu korrigieren,wie z.b. schon oben erwaehnt workbooks wie worksheets angaben,mit den moeglichkeiten einer index oder namens angabe

gruss gast123

Antwort 5 von jojo5 vom 26.02.2020, 19:46 Options

Hallo,

ich versuche es noch einmal, obwohl ich nicht weiß, was ich hier noch präzisieren soll ...

Wenn ich die erste Zeile "Columns("E:E").Select" weglassen würde, würde sich das Ersetzen sogar auf ALLE ZELLEN des aktiven Arbeitsblatts beziehen. Das macht es ja noch schlimmer. Ich möchte, dass das Ersetzen EXAKT NUR in der Spalte E des aktiven Arbeitsblatts stattfindet. Deshalb muss ich hier eine Selektion wählen. Wenn aber im "Suchen und Ersetzen"-Popup (z.B. von einem früheren Ersetzen-Vorgang) die erste Einstellung "Suchen" auf 'Arbeitsmappe' steht während das Makro läuft, so ersetzt der Befehl in JEDER Zelle der gesamten Arbeitsmappe - und das darf auf keinen Fall passieren. Bei dem aufgezeichneten Code (s.o.) gibt es keinerlei Möglichkeit, die Einstellung "Suchen" = 'Arbeitsmappe' zurück zu nehmen.

Die Frage lautet deshalb: Gibt es einen entsprechenden Befehl, der dies ermöglicht?

Gruß
Jojo

Ähnliche Themen

Arbeitsmappe öffnen mit einem bestimmten aktiven Blatt
Peter-Otto  23.01.2007 - 71 Hits - 2 Antworten

uchen und Ersetzen
trebron94  19.03.2007 - 131 Hits - 1 Antwort

VBA - zurück zum letzten Blatt
Tomschi  12.10.2007 - 91 Hits - 8 Antworten

Excel: Benannten Bereich auf mehreren Arbeitsblättern nutzen?
Chriss_netsw  06.02.2008 - 33 Hits - 8 Antworten

Makroproblem nach abspeichern der Arbeitsmappe
Ric1963  22.04.2008 - 38 Hits - 6 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026