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

Schleife Buchstaben löschen Zahlen bleiben stehen

Schleife Buchstaben löschen Zahlen bleiben stehen
23.11.2007 17:07:22
Michael
Hallo!
Wie kann ich alle Buchstaben löschen und nur die Zahlen stehen lassen.
Beispiel
sdfjl 15
sdfssss 2
Ergebnis
15
2
Die Datei ist etwas umfangreicher!
Gruß Michael

22
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ziffern extrahieren
24.11.2007 12:42:12
Michael
Sorry!
Hab es ausprobiert, klappte nicht. Beispiel
adventure (2)
kost (122)
Ergebnis
2
122
Gruß Michael

AW: Ziffern extrahieren
24.11.2007 18:27:00
Erich
Hallo Michael,
was eigentlich möchtest du? Sind die Ergebnisse 2 und 122 für dich richtig oder falsch?
So kommen diese Ergebnisse mit der Formel von www.excelformeln.de raus:
 AB
1adventure (2)2
2kost (122)122
3x0
4 0

Formeln der Tabelle
ZelleFormel
B1{=SUMME((TEIL(0&A1;KGRÖSSTE(WENN(ISTZAHL(TEIL(0&A1;ZEILE($1:$256); 1)*1); ZEILE($1:$256); 1); ZEILE($1:$256)); 1)*1)*10^(ZEILE($1:$256)-1))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen

Einen Nachteil hat die Formel noch: Wenn im Text keine Ziffer vorkommt, gibt sie eine Null aus.
Das ließe sich aber wohl auch noch beheben.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Ziffern extrahieren
26.11.2007 15:13:00
Michael
Hallo!
Danke!
PS.: Manchmal kommt man auf die einfachen Sachen auch nicht!

AW: Schleife Buchstaben löschen Zahlen bleiben stehen
23.11.2007 17:28:00
Peter
Hallo Michael,
eine Möglichkeit:

Public Sub NurZiffern()
Dim lZeile    As Long
Dim sZeichen  As String
Dim iPosit    As Integer
With Worksheets("Tabelle1")
For lZeile = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
For iPosit = 1 To Len(Range("A" & lZeile).Value)
sZeichen = Mid(Range("A" & lZeile), iPosit, 1)
If IsNumeric(sZeichen) Then
Range("B" & lZeile).Value = Range("B" & lZeile).Value & sZeichen
End If
Next iPosit
Next lZeile
End With
End Sub


Gruß Peter

Anzeige
AW: Schleife Buchstaben löschen Zahlen bleiben stehen
23.11.2007 17:46:36
Tino
Hallo,
hier noch eine Möglichkeit, nun hast du die Qual der Wahl.

Sub TEST()
Dim Bereich As Range, Zelle1 As String
Dim Wert As Long, A As Long
On Error Resume Next
If Cells.SpecialCells(xlCellTypeConstants) Then
Zelle1 = Cells.SpecialCells(xlCellTypeConstants).Address
End If
If Cells.SpecialCells(xlCellTypeFormulas) Then
If Zelle1 > "" Then
Zelle1 = Zelle1 & "," & Cells.SpecialCells(xlCellTypeFormulas).Address
Else
Zelle1 = Cells.SpecialCells(xlCellTypeFormulas).Address
End If
End If
On Error GoTo 0
For Each Bereich In Range(Zelle1)
For A = 1 To Len(Bereich)
If IsNumeric(Mid(Bereich, A, 1)) Then
Wert = Wert & Mid(Bereich, A, 1)
End If
Next A
Bereich = Wert
Wert = 0
Next Bereich
End Sub


Gruss
Tino

Anzeige
AW: Schleife Buchstaben löschen Zahlen bleiben stehen
24.11.2007 13:13:25
Michael
Hallo sehr gut!
Er bearbeitet nicht die ganze Datei. Bei Spalte A sind mehr Daten vorhanden wie in Spalte H und ab und an folgt noch ein Lehrzeichen? Kann dieses Berücksichtigt werden?
Danke Gruß Michael

AW: Schleife Buchstaben löschen Zahlen bleiben stehen
24.11.2007 15:14:28
Michael
Super!
Hat alles soweit geholfen, bis er auf Spalte 109 getroffen ist, die war koplett leer. Leider sind darunter noch 600 Zeilen!
?
Er läuft nicht bis zur letzten Zeile durch?
Vielen Dank

AW: Schleife Buchstaben löschen Zahlen bleiben stehen
24.11.2007 19:19:46
Tino
Hallo,
hilft dies weiter?

Sub TEST()
Dim Bereich As Range, Zelle1 As String
Dim Wert As Long, A As Long
On Error Resume Next
If Cells.SpecialCells(xlCellTypeConstants) Then
Zelle1 = Cells.SpecialCells(xlCellTypeConstants).Address
End If
If Cells.SpecialCells(xlCellTypeFormulas) Then
If Zelle1 > "" Then
Zelle1 = Zelle1 & "," & Cells.SpecialCells(xlCellTypeFormulas).Address
Else
Zelle1 = Cells.SpecialCells(xlCellTypeFormulas).Address
End If
End If
On Error GoTo 0
For Each Bereich In Range(Zelle1)
If Bereich > "" Then
For A = 1 To Len(Bereich)
If IsNumeric(Mid(Bereich, A, 1)) Then
Wert = CDbl(Mid(Bereich, A, 1))
End If
Next A
Bereich = Wert
End If
Wert = 0
Next Bereich
End Sub


Gruss
Tino

Anzeige
AW: Schleife Buchstaben löschen Zahlen bleiben stehen
26.11.2007 15:14:41
Michael
Hallo!
Funktioniert wunderbar!
Danke
Michael

AW: Schleife Buchstaben löschen Zahlen bleiben stehen
23.11.2007 17:41:21
Peter
Hallo Michael,
wenn alles in der gleichen Zelle passieren soll, dann so:

Public Sub NurZiffern()
Dim lZeile    As Long
Dim sZeichen  As String
Dim iPosit    As Integer
Dim sErgebnis As String
With Worksheets("Tabelle1") ' Tabellenblattnamen ggf. anpassen !!!
For lZeile = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
sErgebnis = ""
'         die Werte werden in Spalte A ab Zeile 1 angenommen !!!
For iPosit = 1 To Len(Range("A" & lZeile).Value) ' Werte aus Spalte A
sZeichen = Mid(Range("A" & lZeile), iPosit, 1)
If IsNumeric(sZeichen) Then
sErgebnis = sErgebnis & sZeichen
End If
Next iPosit
Range("A" & lZeile).Value = sErgebnis * 1 ' Ergebnis in Spalte A
Next lZeile
End With
End Sub


Gruß Peter

Anzeige
AW: Schleife Buchstaben löschen Zahlen bleiben stehen
24.11.2007 13:07:00
Michael
Vielen Dank!
Die Erste Schleife funktioniert. Bei der Zweiten Schleife die ich benötige, gibt er immer einen Laufzeitfehler 13 an. In der einen oder anderen Zelle sind keine Zahlen vorhaden nur Buchstaben? Gibt es da eine Möglichkeit dieses zu umgehen?
Vielen Dank für die schnelle Hilfe
Michael

AW: Schleife Buchstaben löschen Zahlen bleiben stehen
24.11.2007 17:15:47
Peter
Hallo Michael,
wenn auch leere Zellen oder Zellen ohne Ziffern vorkommen, dann so:
'
' wenn alles in der gleichen Zelle passieren soll, dann so:
'

Public Sub NurZiffern()
Dim lZeile    As Long
Dim sZeichen  As String
Dim iPosit    As Integer
Dim sErgebnis As String
With Worksheets("Tabelle12") ' Tabellenblattnamen ggf. anpassen !!!
For lZeile = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
sErgebnis = "" ' die Ausgabe-Variable leeren/löschen
'         die Werte werden in Spalte A ab Zeile 1 angenommen !!!
For iPosit = 1 To Len(.Range("A" & lZeile).Value) ' Werte aus Spalte A
sZeichen = Mid(.Range("A" & lZeile), iPosit, 1)
If IsNumeric(sZeichen) Then
sErgebnis = sErgebnis & sZeichen
End If
Next iPosit
If sErgebnis  "" Then ' wurde eine Zahl gefunden ?
.Range("A" & lZeile).Value = sErgebnis * 1 ' Ergebnis nach Spalte A
End If
Next lZeile
End With
End Sub


Gruß Peter

Anzeige
AW: Schleife Buchstaben löschen Zahlen bleiben stehen
26.11.2007 15:13:52
Michael
Vielen Dank!
Gruß Michael

AW: Schleife Buchstaben löschen Zahlen bleiben stehen
24.11.2007 14:16:08
Daniel
Hi
das folgende Makro löscht aus der aktuellen Selektion ALLE Zeichen und Sonderzeichen (aus dem ASCII-Range bis 255) und lässt nur die Zahlen stehen.
wie es Tempomässig bei grossen Datenmengen aussieht, weiß ich aber nicht.
ggf. könnt man die Schleife noch etwas einschränken, wenn man sicher ist, daß bestimmte sonderzeichen nicht vorkommen:

Sub alles_ausser_Ziffern_löschen()
Dim rngBereich As Range
Dim i As Integer
Set rngBereich = Selection
For i = 3 To 255
Select Case i
Case 48 To 57 '--- Zahlen werden nicht gelöscht
Case 42, 63 '--- Platzhalter ? * müssen gesondert betrachtet werden
rngBereich.Replace "~" & Chr(i), ""
Case Else '--- alles andere: Hasta la Vista, Zeichen
rngBereich.Replace Chr(i), ""
End Select
Next
End Sub


Gruß, Daniel

Anzeige
AW: Schleife Buchstaben löschen Zahlen bleiben stehen
24.11.2007 14:42:00
Daniel
Hi
kleine Optimierung in Bezug auf Sicherheit und Performance:

Sub Buchstaben_löschen()
Dim rngBereich As Range
Dim i As Integer
On Error Resume Next
Set rngBereich = Selection.SpecialCells(xlCellTypeConstants, 2)
On Error GoTo 0
If rngBereich Is Nothing Then Exit Sub
Application.ScreenUpdating = False
For i = 3 To 255
Select Case i
Case 48 To 57
Case 42, 63
rngBereich.Replace "~" & Chr(i), "", xlPart
Case Else
rngBereich.Replace Chr(i), "", xlPart
End Select
Next
Application.ScreenUpdating = True
End Sub


Gruß, Daniel

Anzeige
AW: Schleife Buchstaben löschen Zahlen bleiben stehen
24.11.2007 15:07:52
Michael
Hurra Hurra!
Danke so klappt es!
Interessieren würde mich jetzt schon wie löscht man denn alle Ziffern?
Danke

AW: Schleife Buchstaben löschen Zahlen bleiben stehen
24.11.2007 15:31:08
Daniel
HI
das sollte man sich aus meinem Code relativ leicht selbst ableiten können, dafür hab ich ja extra die Kommentare reingschrieben.
Gruß, Daniel
for i = 48 to 57
rngBereich.Replace Chr(i), ""
next

AW: Schleife Buchstaben löschen Zahlen bleiben stehen
24.11.2007 16:31:48
Michael
Super!
Wer lesen kann ist klar im Vorteil! Problem gelößt! HURRA! Danke!
Eine Frage noch?
Geht das unten zusammengeschusterte auch einfacher?
Danke
Schönes Wochenende
Viele Grüße Michael

Sub alles_ausser_Zeichen_löschen_()
Dim rngBereich As Range
Dim i As Integer
Dim j As Integer
Columns("A:A").Select
Set rngBereich = Selection
For i = 40 To 41
rngBereich.Replace Chr(i), ""
Next
For j = 48 To 57
rngBereich.Replace Chr(j), ""
Next
End Sub


Anzeige
AW: Schleife Buchstaben löschen Zahlen bleiben ste
24.11.2007 18:37:00
Erich
Hallo Michael,
dieser Code tut das Gleiche:

Sub alles_ausser_Zeichen_löschen2_()
Dim i As Integer
With Columns("A:A")
.Replace Chr(40), "", xlPart
.Replace Chr(41), "", xlPart
For i = 48 To 57
.Replace Chr(i), "", xlPart
Next
End With
End Sub

xlPart ist wesentlich, wenn zufällig vorher nach einem ganzen Wort gesucht wurde.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

AW: Schleife Buchstaben löschen Zahlen bleiben ste
26.11.2007 15:08:00
Michael
Hallo!
Vielen Vielen Dank!
Alleine wäre ich darauf wohl nie gekommen!
Danke
Gruß Michael

123 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige