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

aus alphanum. String alles ausser Zahl entfernen

aus alphanum. String alles ausser Zahl entfernen
29.08.2007 17:55:00
Peter
Guten Abend
Ich habe in der Tabelle "Ursprung" in Spalte A von Zeile 1 bis 200 verschiedene numerische Einträge (nur Zahlen) und weitere alphanumerische Einträge.
Nun möchte ich diese Spalte von Zeile 1 bis 200 in die Tabelle "Ziel" (ist in gleicher Arbeitsmappe wie die Tabelle "Ursprung") kopieren, wobei bei den alphanumerischen Einträge die Buchstaben und allfällige andere Zeichen (jedoch nicht die Zahlen) entfernt werden sollen.
Beispiel
aus AA104949B soll 104949 werden
aus A?10X939_ soll 10939 werden
aus 13A17B19 soll 131719 werden
Habe im Moment keine Idee, wie ich das anpacken kann.
Danke für jede Hilfe.
Peter

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: aus alphanum. String alles ausser Zahl entfernen
29.08.2007 21:29:27
Peter
Hallo Christian
Vielen Dank die Formel ist beeindruckend. Allerdings hätte ich gerne eine Lösung mit VBA, da die zu verarbeitende Zeilenanzahl der Spalte A variabel ist und ich dies gerne automatisieren möchte.
Hat jemand eine Idee?
Danke, Peter

AW: aus alphanum. String alles ausser Zahl entfernen
29.08.2007 21:39:00
Sigi
Hi Peter,
darf's eine VBA-Funktion sein?

Function ZiffernAusString(Text As String) As String
Dim Tx As String
Dim i As Long
For i = 1 To Len(Text)
If Asc(Mid(Text, i, 1)) > 47 And Asc(Mid(Text, i, 1)) 


Gruß
Sigi

Anzeige
AW: aus alphanum. String alles ausser Zahl entfernen
29.08.2007 21:50:40
Peter
Hallo Sigi
Das ging aber schnell! Selbstverständlich darf es eine Funktion sein. Ich habe eine kleine Ergänzung angebracht, die bewirkt, dass führende NULLEN nicht angezeigt werden, da ich tx mit 1 multipliziere. Allerdings bleibt das Problem, dass wenn der String keine Zahl enthält, "#WERT" zurückgegeben wird. In diesem Fall hätte ich gerne, dass als Wert "" (NICHTS) zurückgegeben wird.
Kannst du mir da (oder jemand anders) auch noch weiterhelfen? Vielen Dank!!
Peter

Function ZiffernAusString(Text As String) As String
Dim Tx As String
Dim i As Long
For i = 1 To Len(Text)
If Asc(Mid(Text, i, 1)) > 47 And Asc(Mid(Text, i, 1)) 


Anzeige
AW: aus alphanum. String alles ausser Zahl entfernen
29.08.2007 22:01:38
Sigi
Hi Peter,
ich würde die Funktion so lassen, aber den Fall, dass die Zelle leer ist, mit Formel abfangen:
=WENN(A1=""; ""; WERT(ZiffernAusString(A1)))
Gruß
Sigi

AW: aus alphanum. String alles ausser Zahl entfernen
29.08.2007 22:26:14
Peter
Hallo Sigi
Danke für die Rückmeldung. Habe mich wohl nicht ganz deutlich ausgedrückt. Grundsätzlich möchte ich eine Zahl zurück erhalten. Deshalb habe ich mal 1 gerechnet. Es kann Fälle geben, bei denen der String aus lauter Buchstaben besteht, die Zelle also nicht leer ist. Diesen Fall wollte ich mit der gewünschten Erweiterung nach abfangen. Vielen Dank für deine Hilfe.
Peter

Nachfrage...
29.08.2007 21:48:45
Original
Hi,
was, wenn in den Strings Kommata vorkommen, wie soll dann verfahren werden, oder kann das
sicher ausgeschlossen werden?
mfg Kurt

Anzeige
AW: Nachfrage...
29.08.2007 22:28:00
Peter
HalloKurt
Die Nachfrage ist sicher berechtigt. Im vorliegenden Fall handelt es sich um eine Ordnungsnummer, die in verschiedenen Fällen mit Buchstaben ergänzt sein kann, die jedoch für meine Zwecke nicht benötigt werden. Es reicht in jedem Fall, wenn nur die Zahlen oder "" (nichts) zurückgegeben wird.
Gruss, Peter

Dann is ja nix mehr offen... (owT)
30.08.2007 08:43:00
Renee

AW: Doch
30.08.2007 09:09:42
Peter
Hallo Renée
Meine Nachfrage von gestern 21:50 ist noch offen:
Ich habe eine kleine Ergänzung angebracht, die bewirkt, dass führende NULLEN nicht angezeigt werden, da ich tx mit 1 multipliziere. Allerdings bleibt das Problem, dass wenn der String keine Zahl enthält, "#WERT" zurückgegeben wird. In diesem Fall hätte ich gerne, dass als Wert "" (NICHTS) zurückgegeben wird.
Gruss, Peter

Function ZiffernAusString(Text As String) As String
Dim Tx As String
Dim i As Long
For i = 1 To Len(Text)
If Asc(Mid(Text, i, 1)) > 47 And Asc(Mid(Text, i, 1)) 


Anzeige
AW: Doch
30.08.2007 09:26:44
Renee
Hi Peter,
Sorry, hab nicht aufgepasst.

lösche:        Tx = Tx * 1
ersetze:       ZiffernAusString = Format(Tx, "#")
oder:          ZiffernAusString = Format(Tx, "0") 


Greetz Renee

AW: Doch
30.08.2007 10:42:00
Peter
Hallo Renée
Vielen Dank. Das stimmt so, allerdings nur "optisch". Wenn die aus dem String verbleibenden Zahlen mit NULL beginnen, sind diese ohne die Multiplikation im String enthalten, werden entweder angezeigt "0" oder nicht "#". Das Problem ist, dass ich anschliessend eine SVERWEIS oder eine SUMMEWENN Abfrage vornehme und in der anderen Tabelle führende Nullen nicht vorhanden sind. Deshalb war ich auf die Idee gekommen zu mulitiplizieren, wo dann allerdings das Problem aufgetaucht ist, dass bei einem String ohne Zahl eine Multiplikation nicht möglich ist. Deshalb wollte ich die Multiplikation lassen (führende Nullen sind so "erledigt") und zusätzlich eine Abfrage einbauen, die verhindert, dass bei einem String ohne Zahl nicht "#WERT" zurück gegeben wird.
Kannst du mir da noch einen Tipp geben?
Danke, Peter

Anzeige
AW: Doch
30.08.2007 11:04:44
Renee
Hallo Peter,
Was heisst für Dich Das stimmt so, allerdings nur "optisch".
Hast Du die Änderung ausprobiert ? Wann soll den bei meinem Vorschlag #WERT zurückkommen?
Wenn die aus dem String verbleibenden Zahlen mit NULL beginnen....bla bla ....
Mit meinem Vorschlag (ohne Multiplikation!) werden führende Nullen nicht zurückgegeben und es wird kein Fehlerwert zurückgegeben. Beim Vorschlag mit "0" im Format wird nur dann eine "0" zurückgegeben, wenn keine anderen Zahlen ausser einer oder mehreren Null(en) vorhanden sind .
Erst testen, dann motzen.
Greetz Renee

Anzeige
AW: Doch noch Missverständnis
30.08.2007 11:07:05
Renee
Hi again Peter,
Um alle Misverständnisse auszuräumen, mein Vorschlag musst Du in den Code einbauen!, er hat nix mit der Formatierung der Zellen zu tun!
Renee

AW: Doch noch Missverständnis
30.08.2007 11:18:11
Peter
Hallo Renée
Du hast recht. Ich wollte zwar alles umsetzen, habe jedoch nun entdeckt, dass ich die Codezeile
ZiffernAusString = Tx
nicht eliminiert habe.
Nochmals vielen Dank!
Gruss, Peter

323 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige