Registriert seit: 29.08.2017
Version(en): 216
Guten Tag :19: ,
ich brauche einen VBA Code, der eine Zelle ersetzt, wenn z.B. die ersten 2 Zeichen "80" sind.
Ich weiss wie man z.B. die 80 ersetzt, wenn diese an einer beliebigen Stelle stehen kann, aber nicht wie man das tut, wenn
dies die ersten 2 Zahlen sein sollen
Vielen Dank im Voraus !
Tolik :19:
Registriert seit: 11.04.2014
Version(en): 2021
Hallo,
wie ist es mit:
If Left(Range("A1"), 2)=80 Then [neue Zeichenfolge] & Mid(Range("A1"), 3, Len(Range("A1"))
wenn der entsprechende Wert in A1 steht.
Gruß Günter
aus der Helden-, Messe-, Musik-, Buch-, Universitäts- und Autostadt Leipzig
Registriert seit: 06.12.2015
Version(en): 2016
Hallo,
die Antwort ist sicher richtig, aber es geht auch etwas skuriler:
Für A1:
Code:
Sub fen()
Tx = cells(1,1)
mid(Tx,1,2) = "QW" ' neuer Code
cells(1,1) = Tx
end sub
Die Schleife über alle Zellen wird der Fragesteller hinbekommen.
mfg
Registriert seit: 11.04.2014
Version(en): 2021
Hallo,
warum Mid, wenn der Fragesteller doch auf die ersten 2 Stellen reflektiert, und nicht geich Left?
Ausserdem der Umweg über Tx und nicht gleich in Cells(1, 1)?
Gruß Günter
aus der Helden-, Messe-, Musik-, Buch-, Universitäts- und Autostadt Leipzig
Registriert seit: 06.12.2015
Version(en): 2016
@Glausius:
die "Mid"-Funktion zum replace zu "missbrauchen", ist schon etwas bizar, mit der "left"-Funktion geht das nicht. Eine Anwendung direkt auf die Zelle, hat nicht geklappt, deshalb der Umweg über den string.
Alternativ ginge auch "cells(1,1).characters.insert" ... (die genaue Syntax müßte ich nachschauen).
mfg
Registriert seit: 29.08.2017
Version(en): 216
Danke für die Antworten !
werde sie mal ausprobieren