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

Zeichen löschen udn ersetzen

Zeichen löschen udn ersetzen
22.10.2008 11:33:19
Marco
Ich hätte da mal ne Frage, und zwar:Ich möchte einen bestimmten Teil meiner Tabelle makieren, und er soll aus jeder Zelle die ersten beiden Zeichen löschen und sie durch ein anderes Zeichen ersetzen. Die ersten beiden Zeichen in Jeder Zelle sind verschieden sollen aber duch ein durchgehend gleiches Zeichen ersetzt werden. Ist sowas möglich und wenn ja wie?!

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeichen löschen udn ersetzen
Ramses
Hallo
das solle tun
Option Explicit

Sub ex_Char()
Dim tarRng As Range, tarC As Range
Dim tmpCtr As Long
Dim repChr As String, newChr As String
On Error Resume Next
Set tarRng = Application.InputBox("Zellbereich zum ersetzen auswählen", "Auswahl", Type:=8)
If tarRng Is Nothing Then
MsgBox "Abbruch", vbCritical + vbOKOnly, "Fehler"
Exit Sub
End If
repChr = InputBox("Welche Zeichenfolge soll ersetzt werden", "Suchen")
If StrPtr(repChr) = 0 Then
MsgBox "Abbruch", vbCritical + vbOKOnly, "Fehler"
Exit Sub
End If
newChr = InputBox("Welche Zeichenfolge soll für:""" & repChr & """ gesetzt werden", "Ersetzen")
If StrPtr(newChr) = 0 Then
MsgBox "Abbruch", vbCritical + vbOKOnly, "Fehler"
Exit Sub
End If
tmpCtr = 0
For Each tarC In tarRng
If Left(tarC, 2) = repChr Then
tarC = newChr & Right(tarC, Len(tarC) - 2)
tmpCtr = tmpCtr + 1
End If
Next
MsgBox tmpCtr & " Ersetzungen vorgenommen", vbOKOnly + vbInformation, "Abschluss"
End Sub


Gruss Rainer

Anzeige
AW: Zeichen löschen udn ersetzen
22.10.2008 11:50:26
Marco
mmmmhhh...
und wie mache ich das jetzt in excel?! :-)?
AW: Zeichen löschen udn ersetzen
22.10.2008 12:09:00
Marco
Und was gebe ich bei den zu suchenden zeichen ein um halt die ersten beiden zeichen jeder zelle zu nehmen?!
Anzeige
AW: Zeichen löschen udn ersetzen
22.10.2008 12:23:44
UweD
Hallo
da du scheinbar keine VBA Erfahrung hast, hier eine Formellösung:
 
 ABCDE
1abaaaaaaaHhaaaaaaa HhNeue Zeichenfolge
212bbbbHhbbbb   
345cccccHhccccc   
4aadddddHhddddd   
5df    fgfgHh    fgfg   
Formeln der Tabelle
B1 : =$D$1&RECHTS(A1;LÄNGE(A1)-2)
 

Danach die Hilfspalte markieren, kopieren, Inhalte einfügen, Werte
Originalspalte dann löschen
Gruß UweD
Anzeige
AW: Zeichen löschen udn ersetzen
22.10.2008 12:39:00
Marco
Das bringt mich leider garnicht nach vorne....
das ist die Tabelle... und das sind dann halt nicht 5 poweredge sondern immer nur eine... daneben ist das immer wieder ne spalte mit den Festplatten ram usw...
kann ich dir die komplette tabelle mal schicken?!
5 POWEREDGE 2850 - XEON 3.06GHZ/1MB, 800MH
12 POWEREDGE 1850 - XEON 2.8GHZ/1MB, 800MHZ
5 POWEREDGE 2850 - XEON 3.06GHZ/1MB, 800MH
12 POWEREDGE 1850 - XEON 2.8GHZ/1MB, 800MHZ
5 POWEREDGE 2850 - XEON 3.06GHZ/1MB, 800MH
12 POWEREDGE 1850 - XEON 2.8GHZ/1MB, 800MHZ
12 POWEREDGE 1850 - XEON 2.8GHZ/1MB, 800MHZ
5 POWEREDGE 2850 - XEON 3.06GHZ/1MB, 800MH
7 POWEREDGE 2850 - XEON 3.06GHZ/1MB, 800MH
7 POWEREDGE 2850 - XEON 3.06GHZ/1MB, 800MH
1 POWEREDGE 2850 - XEON 3.06GHZ/1MB, 800MH
7 POWEREDGE 2850 - XEON 3.06GHZ/1MB, 800MH
12 POWEREDGE 1850 - XEON 2.8GHZ/1MB, 800MHZ
Anzeige
AW: Zeichen löschen udn ersetzen
22.10.2008 12:54:35
Marco
https://www.herber.de/bbs/user/56191.xls
sooo da isse...
das ist halt das alle geräte mehrmals gekauft wurden, das aber jetzt auf einzelstück runtergesetzt werden soll...
beim ram sinds dann tlw noch 2. usw.,..
ist eigentlich ganz selbsterklärend
AW: Zeichen löschen udn ersetzen
22.10.2008 13:09:00
Ramses
Hallo
nachdem du offensichtlich resistent gegen Eigeninitiative bist, hier mit dem Makro.
Das Makro kannst du starten über "Extras - Makro - Ausführen" oder über den Button
Den Rest musst du selber machen, da die Tabelle und deine Anforderung alles andere als selbsterklärend ist.
https://www.herber.de/bbs/user/56192.xls
Gruss Rainer
Anzeige
AW: Zeichen löschen udn ersetzen
22.10.2008 13:42:07
UweD
Hallo nochmal
ich verstehe Marco so, daß vorne jede Zeichenfolge ersetzt werden soll.
Das kann dann noch 1stellig oder 2 Stellig sein.
Ich das Makro mal so umgeschrieben, daß das erste Leerzeichen gesucht wird.
Alles vor dem Leerzeichen und das Leerzeichen selbst werden dann an den Neuen Text (evtl wieder mit Leerzeichen) angehangen.
Gruß UweD


       Sub ex_Char()
       Dim tarRng As Range, tarC As Range
       Dim tmpCtr As Long
       Dim repChr As String, newChr As String
       Dim PosInt As Integer
       On Error Resume Next
       Set tarRng = Application.InputBox("Zellbereich zum ersetzen auswählen""Auswahl", Type:=8)
       If tarRng Is Nothing Then
           MsgBox "Abbruch", vbCritical + vbOKOnly, "Fehler"
           Exit Sub
       End If
       newChr = InputBox("Welche Zeichenfolge soll gesetzt werden""Ersetzen")
       If StrPtr(newChr) = 0 Then
           MsgBox "Abbruch", vbCritical + vbOKOnly, "Fehler"
           Exit Sub
       End If
       tmpCtr = 0
       For Each tarC In tarRng
            'Suchen des ersten Leerzeichens
            PosInt = Application.Find(" ", tarC, 2)
            tarC = newChr & Mid(tarC, PosInt + 2)
            tmpCtr = tmpCtr + 1
       Next
       MsgBox tmpCtr & " Ersetzungen vorgenommen", vbOKOnly + vbInformation, "Abschluss"
       End Sub


Anzeige
AW: Zeichen löschen udn ersetzen
22.10.2008 17:50:51
Ramses
Hallo
Das ist doch auch Quatsch weil nur eine Vermutung
Er soll endlich sagen was er eigentich haben will aber wahrschenlich hat er in einem anderen Forum schon die Antwort.
Hier ist es egal wie gross die Zeichenlänge ist zum ersetzen
For Each tarC In tarRng
tarC = newChr & right(tarc.Value, len(tarC.Value) - len(newChr))
tmpCtr = tmpCtr + 1
Next
Damit kann er ALLE zeichenfolgen ersetzen die sich am Anfang befinden.
Gruss Rainer

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige