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

Zeichen einfügen

Zeichen einfügen
11.01.2008 17:10:00
Mat
Hallo Leute,
ich müste eine größere Zahl von Zellinhalten nach einem bestimmten Muster über Suche und ersetzen ändern. Leider habe ich noch keine Möglichkeit gefunden wie es funktioniert.
Hier einige Beispiele:
Zellinhalt = D100FE
Zellinhalt = 200TE
Zellinhalt = FS123ABC
soll geändert werden in
Zellinhalt = D100.FE
Zellinhalt = 200.TE
Zellinhalt = FS123.ABC
Wie Ihr seht muss immer ein Punkt nach den Zahlen eingefügt werden. Wenn jemand eine Lösung dafür wüsste wäre ich begeistert.
Viele Grüße
Mat

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeichen einfügen
11.01.2008 17:41:00
Ramses
Hallo
das geht am einfachsten mit einer UDF
Sheet1

 ABC
1D100FED100.FE 
2200TE200.TE 
3FS123ABCFS123.ABC 
4   

Formeln der Tabelle
ZelleFormel
B1=splitcell(A1)
B2=splitcell(A2)
B3=splitcell(A3)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Den Code in ein VBA-Modul deiner Mappe eintragen
Option Explicit

Function SplitCell(tarR As Range) As String
    Dim i As Integer
    For i = Len(tarR) To 1 Step -1
        If IsNumeric(Mid(tarR, i, 1)) Then
            SplitCell = Left(tarR, i) & "." & Right(tarR, Len(tarR) - i)
            Exit Function
        End If
    Next i
    SplitCell = tarR
End Function

... und die Formel entsprechend eintragen.
Danach, wenn nicht mehr gebraucht, die Spalte markieren, Kopieren, Bearbeiten - Inhalte einfügen - Werte und die ursprüngliche Spalte löschen
Gruss Rainer

Anzeige
AW: Zeichen einfügen
11.01.2008 17:46:35
ransi
Hallo Mat
Mit suchen und ersetzen wüsste ich auch nicht wie es geht.
Mit diesem kleinen Code geht das aber:
Tabelle2

 A
1Vorher;
2D100FE
3200TE
4FS123ABC


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Jetzt den Code:
' **********************************************************************
' Modul: Tabelle2 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit


Public Sub test()
Dim zelle As Range
Dim B As Integer
For Each zelle In Range("A2:A4")
    For B = Len(zelle) To 1 Step -1
        If IsNumeric(Mid(zelle.Text, B, 1)) Then
            zelle = Left(zelle, B) & "." & Mid(zelle.Text, B + 1, 1000)
            Exit For
        End If
    Next
Next
End Sub

Tabelle2

 A
1Nacher:
2D100.FE
3200.TE
4FS123.ABC


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Den Bereich musst du dir allerdings auf deine Gegebenheiten anpassen....
ransi

Anzeige
AW: Zeichen einfügen
11.01.2008 17:59:37
Mat
Hallo Ramses und Ransi,
echt spitze!! Danke für die Antworten, mit ist damit schon Super geholfen!!
Manche Werte haben nach den Zahlen keine Buchstaben mehr. Wäre es schwierig den code so zu ändern, dass in diesem Fall ein Punkt angefügt wird?
Viele Grüße
Mat

der Punkt ist doch schon da! vertippt?
11.01.2008 18:57:00
Matthias
Hallo
Hast Du Dich vertippt?
In beiden Vorschlägen wird ein Punkt gesetzt, wenn nach der letzten Ziffer kein Buchstabe mehr kommt
Userbild
Userbild

Anzeige
AW: der Punkt ist doch schon da! vertippt?
11.01.2008 19:36:05
Mat
Hallo Leute,
mache Werte sehen wie folgt aus:
AB 500
In diesem Fall soll kein Punkt gesetzt werden. Würde mich sehr freuen wenn Ihr mir helfen könnt den Code noch mal so zu verändern dass in diesem Fall nichts geändert wird.
Viele Grüße
Mat

AW: der Punkt ist doch schon da! vertippt?
11.01.2008 23:09:00
Ramses
Hallo
Probier mal
Sheet1

 AB
1D100FED100.FE
2200TE200.TE
3FS123ABCFS123.ABC
4MusterMuster
5FA 500FA 500
6  

Formeln der Tabelle
ZelleFormel
B1=splitcell(A1)
B2=splitcell(A2)
B3=splitcell(A3)
B4=splitcell(A4)
B5=splitcell(A5)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
und hier die geänderte Function
Option Explicit

Function SplitCell(tarR As Range) As String
    Dim i As Integer
    For i = Len(tarR) To 1 Step -1
        If IsNumeric(Right(tarR, 1)) Then
            SplitCell = tarR
            Exit Function
        End If
        If IsNumeric(Mid(tarR, i, 1)) Then
            SplitCell = Left(tarR, i) & "." & Right(tarR, Len(tarR) - i)
            Exit Function
        End If
    Next i
    SplitCell = tarR
End Function

Gruss Rainer

Anzeige
AW: der Punkt ist doch schon da! vertippt?
12.01.2008 14:50:13
Mat
Hallo Rainer,
danke für die Ergänzung, klappt jetzt Super!!!
Allerdings hatte die Lösung von Ransi den Vorteil, dass ich den Bereich im Makro bestimmen und direkt ändern kann ohne zusätzliches kopieren und wieder einfügen. Leider hab ich es jedoch nicht hinbekommen die Formel entsprechend zu ändern!
Vielen lieben Dank nochmals!!
Gruß Mat

AW: Zeichen einfügen
11.01.2008 18:00:00
Reinhard
Hallo Ransi,
wieso die 1000? Wenn man die völlig wegläßt funktioniert Mid doch auch.
Andrerseits gehe ich sehr sicher davon aus daß du das auch weißt.
Jetzt grüble ich halt warum du die 1000 benutzt.
Gruß
Reinhard

Anzeige
AW: Zeichen einfügen
11.01.2008 18:30:00
ransi
HAllo Rainhard
Andrerseits gehe ich sehr sicher davon aus daß du das auch weißt.
Wenn du dich da mal nicht täuscht ;-)
Habs grade in der Hilfe nachgelesen.
length ist tatsächlich optional.
Bis jetzt habe ich immer aus Gewohnheit 1000 geschrieben wenn ich den Rest eines Strings brauche und keine Ahnung habe wie lang der Rest ist...
Die 1000 haben bis jetzt immer gereicht.
ransi

AW: Zeichen einfügen
11.01.2008 18:50:00
Reinhard
Hallo Ransi,
das freut mich sehr, bisher habe ich immer von deinem Wissen gelebt, mich ernährt von deinen Antworten in meinem Bemühen Vba zu kapieren.
Nun wußte ich was was du nicht wußtest *freu*
Denn somit konnte ich einmalig mal was Winziges zurückliefern für deine Hilfe die ganze Zeit hinweg.
Lieben Gruß
Reinhard
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige