Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
360to364
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
360to364
360to364
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Selection.Replace

Selection.Replace
08.01.2004 16:28:08
Holger
Hallo,
gibt es eine Möglichkeit, in dem Befehl selection.replace die Werte für what und replacement variabel zu gestalten?
Im Beispiel (ist nur ein Ausschnitt aus dem ganzen Befehl) wird der Begriff Wert durch Test ersetzt. Wenn ich diesen Befehl jedoch noch einmal anwende, so funzt er nicht, da in den betreffenden Zellen nun Test steht.
Habt Ihr eine Idee???
Selection.Replace What:="Wert", Replacement:="Test"
Gruß, Holger

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Selection.Replace
08.01.2004 21:05:22
Volker Croll
Hallo Holger,
ohne den Zusammenhang zu kennen, stochert man immer etwas im Nebel. Aber natuerlich kannst Du anstelle von "Wert" bzw. "Test" Variablen verwenden, die Du immer wieder mit anderen Texten fuellst.
Ansonsten bitte etwas mehr Infos.
Gruss Volker
AW: Selection.Replace
09.01.2004 07:44:31
Holger
Hallo Volker,
mein Problem sieht wie folgt aus:

Sub Listenfeld2_BeiÄnderung()
Rows("15:21").Select
Selection.Replace What:=AlterWert, Replacement:=NeuerWert, LookAt:= _
xlPart, SearchOrder:=xlByRows, MatchCase:=False
End Sub

Bei einem Anklicken des Listenfeldes werden die Zeilen 15 bis 21 markiert und alles, was in den Zeilen als AlterWert vorkommt, durch NeuerWert ersetzt. Bis dahin ist es OK. Wähle ich nun allerdings wieder etwas Neues in dem Listenfeld aus, so funzt das Makro nicht mehr, da in den Zeilen nirgends mehr AlterWert steht. Deshalb meine Frage, ob ich diese Begriffe elegant durch Variable ersetzen kann.
Vielleicht kannst Du mir da weiter helfen??
Gruß, Holger
Anzeige
Vorschlag ...
09.01.2004 13:50:49
Volker Croll
Hallo Holger,
wie waers mit (wobei Du auf das "selecten" verzichten kannst):

Sub Listenfeld2_BeiÄnderung()
Rows("15:21").Replace What:=AlterWert, Replacement:=NeuerWert, LookAt:= _
xlPart, SearchOrder:=xlByRows, MatchCase:=False
AlterWert = NeuerWert
End Sub

Gruss Volker
AW: Vorschlag ...
09.01.2004 14:06:18
Holger
Hallo Volker,
die Idee mit AlterWert = NeuerWert ist OK, aber das Makro bricht bereits vorher ab (bei dem Befehl mit replace). Das Ganze funzt aber, wenn das Blatt nicht geschützt ist. Es muss also mit dem Befehl replace und dem Blattschutz zu tun haben.
Ich habe bei Herber mal ein wenig weiter geforscht und eine Sache gefunden, die mir geholfen hat. Vor dem Markieren der Zellen wird automatisch der Blattschutz aufgehoben, nach dem Ersetzen der Begriffe wieder aktiviert. Der Nutzer sieht dies nicht, und es funzt.
Vielen Dank für Deine Hilfe.
Gruß, Holger
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige