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

nur Zwei Zeichen ersetzen

nur Zwei Zeichen ersetzen
18.01.2007 09:55:33
Lorenz
Guten Morgen!
Ich möchte in einer Spalte die Ersten zwei Zeichen austauschen.
mit meinem geschnitzten Code wills leider nicht

Private Sub aendern()
Dim i as Integer
for i = 20 to 580
With Cells(i, 2)
If .Value2 <> "" Then
If Left(.Value, 2) = "06" Then Left(.Value, 2) = "60"
End If
End With
next
End Sub

bei "Left(.Value, 2) = "60"" tritt leider ein Laufzeitfehler 424 (Objekt erforderlich) ein
Hat vielleicht jemand ´ne Idee wie der Code ausschauen muss?
PS.: Der Zelleintrag ist nicht immer numerisch (ist fallweise "Text")
Danke im Voraus
Lorenz

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: nur Zwei Zeichen ersetzen
18.01.2007 10:11:53
Bertram
Hallo Lorenz,
mit deinem Makro müßte es so lauten:

Private Sub aendern()
Dim i As Integer
For i = 20 To 580
With Cells(i, 2)
If .Value2 <> "" Then
If Left(.Value, 2) = "06" Then .Value = "60" & Mid(.Value, 3)
End If
End With
Next
End Sub

Allerdings wäre es besser (wenn möglich) mit Suchen und Ersetzten zu arbeiten.
Gruß
Bertram
AW: nur Zwei Zeichen ersetzen
18.01.2007 10:37:33
Lorenz
Hallo Bertram!
zu geänderten Code:
Funktioniert!! Super!! Danke!!!!
zu "mit Suchen und Ersetzten zu arbeiten":
Ist in meinem Fall schlecht, da "06113306" durch "60113360" ersetzt wird.
Grüsse
Lorenz
Anzeige
Gerne oT
18.01.2007 10:55:18
Bertram
AW: nur Zwei Zeichen ersetzen
18.01.2007 10:13:47
fcs
Hallo Lorenz,
folgende Modifikation sollte das Grundproblem lösen.

Private Sub aendern()
Dim i As Integer
For i = 20 To 580
With Cells(i, 2)
If .Value2 <> "" Then
If Left(.Value, 2) = "06" Then 'evtl. auch If Left(.Text, 2) = "06"
.Value = "60" & Mid(.Value, 3) 'evtl. auch .Value = "60" & Mid(.Text, 3)
End If
End With
Next
End Sub

evtl. muss du aber auch noch Unterscheidung für Zellen mit Zahlen/Text einbauen, damit es korrekt funktioniert. Bei Zahlen mit führenden Nullen, die durch ein Format erzeugt werden, funktioniert der Weg über den Zellwert (Value) nicht. Dann ggf. die Variante mit ".Text" verwenden oder Zahlen separat in einer If-Bedingungung behandeln.
Gruß
Franz
Anzeige
AW: nur Zwei Zeichen ersetzen
18.01.2007 10:43:26
Lorenz
Hallo Franz!
"folgende Modifikation sollte das Grundproblem lösen" ist nicht richtig, da folgende Modifikation das Problem 1A gelöst hat.
Danke & viele Grüsse
Lorenz

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige