Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Alle Buchstaben aus einer Zelle löschen

Alle Buchstaben aus einer Zelle löschen
09.12.2004 12:46:05
Hoffi
Hallo Ihr,
ich möchte in einer Zelle alle Zeichen, die keine Zahlen (0-9) sind löschen oder durch ein Leerzeichen ersetzen. Wie kann ich das machen?
Folgender Hintergrund: aus einer Datenbank bekomme ich ein Feld für die Telefonnummer. Nachdem dort Buchstaben zugelassen sind, werden von den Nutzern auch Anmerkungen eingetragen. Diese müssen nun rausgelöscht werden.
Danke für Eure Hilfe
Hoffi
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Alle Buchstaben aus einer Zelle löschen
IngoG
Hallo Hoffi ?,
versuchs mal mit folgendem Macro:

Sub aaa()
Dim zelle As Range
Dim i%
Application.ScreenUpdating = False
For Each zelle In Selection
For i = Len(zelle) To 1 Step -1
If InStr(1, "0123456789", Mid(zelle, i, 1)) = 0 Then
zelle = Left(zelle, i - 1) & Right(zelle, Len(zelle) - i)
End If
Next i
Next zelle
Application.ScreenUpdating = True
End Sub

Einfach in ein Modul kopieren und über extra/macro/macros aufrufen.
im vorher selektierten Bereich werden alle Buchstaben gelöscht.
Gruß Ingo
PS eine Rückmeldung wäre nett...
Anzeige
AW: Alle Buchstaben aus einer Zelle löschen
hoffi
Vielen Dank, ich habe Dein Makro verwendet und noch eine kleine Formatierung bezüglich der Vorwahlen eingebaut. Es ist ein wenig umständlich geworden, weil ich natürlich die führenden Nullen benötige. Aber was solls. Vielen Dank und viele Grüße Hoffi

Sub ZahlMitVorwahl()
Dim zelle As Range
Dim i%
Application.ScreenUpdating = False
For Each zelle In Selection
If Left(zelle, 2) = "00" Then
zelle = "~" & Right(zelle, Len(zelle) - 2)
ElseIf Left(zelle, 1) = "+" Then
zelle = "~" & Right(zelle, Len(zelle) - 1)
ElseIf Left(zelle, 1) = "0" Then
zelle = "~49" & Right(zelle, Len(zelle) - 1)
ElseIf InStr(1, "123456789", Left(zelle, 1)) = 0 Then
zelle = "~4989" & Right(zelle, Len(zelle) - 1)
End If
For i = Len(zelle) To 1 Step -1
If InStr(1, "~0123456789", Mid(zelle, i, 1)) = 0 Then
zelle = Left(zelle, i - 1) & Right(zelle, Len(zelle) - i)
End If
Next i
If Left(zelle, 1) = "~" Then
zelle = "'+" & Right(zelle, Len(zelle) - 1)
End If
Next zelle
Application.ScreenUpdating = True
End Sub

Anzeige
Danke für die Rückmeldung oT
IngoG
.
AW: Alle Buchstaben aus einer Zelle löschen
Georg
Hallo,
soll für jeden Buchstaben ein Leerzeichen gesetzt werden?
Vielleicht kannst Du das ja anpassen, ist eine Formel von Boris hier aus dem Forum
{=TEXT(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));WIEDERHOLEN(0;SUMME(ISTZAHL(TEIL(A1;ZEILE($1:$256);1)*1)*1)))}
geschweifte Klammer nicht mit kopieren, sondern über Strg.+shift+enter eingeben.
Grüße
Georg
Anzeige
AW: Alle Buchstaben aus einer Zelle löschen
UweD
Hallo
hier meine Lösung


      
Sub ABC_raus()
    
'Bereich vorher markieren
    For Each Zelle In Selection
        
If Zelle.Value <> "" Then
        abc = 
"ABCDEFGHIJKLMNOPQRSTUVWXYZÄÖÜß"
            
For J = 1 To Len(abc)
                Zelle.Value = Application.Substitute(Zelle.Value, Mid(abc, J, 1), 
"")
                Zelle.Value = Application.Substitute(Zelle.Value, LCase(Mid(abc, J, 1)), 
""'Auch die Kleinbuchstaben raus
                If IsNumeric(Zelle.Value) Then Exit For
            
Next
        
End If
    
Next
End Sub 



abc kannst du ja beliebig erweitern.
Gruß UweD
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Buchstaben aus einer Zelle entfernen in Excel


Schritt-für-Schritt-Anleitung

Um alle Buchstaben aus einer Zelle zu entfernen und nur die Zahlen zu behalten, kannst Du entweder ein VBA-Makro verwenden oder eine spezielle Excel-Formel. Hier sind die Schritte für beide Methoden:

Mit VBA-Makro:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Wähle Einfügen > Modul, um ein neues Modul zu erstellen.

  3. Kopiere den folgenden Code in das Modul:

    Sub alleBuchstabenEntfernen()
       Dim zelle As Range
       Dim i%
       Application.ScreenUpdating = False
       For Each zelle In Selection
           For i = Len(zelle) To 1 Step -1
               If InStr(1, "0123456789", Mid(zelle, i, 1)) = 0 Then
                   zelle = Left(zelle, i - 1) & Right(zelle, Len(zelle) - i)
               End If
           Next i
       Next zelle
       Application.ScreenUpdating = True
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Markiere die Zellen, aus denen Du die Buchstaben entfernen möchtest.

  6. Drücke ALT + F8, wähle alleBuchstabenEntfernen aus und klicke auf Ausführen.

Mit einer Formel (Excel 365 oder 2019):

  1. Angenommen, Deine Daten stehen in Zelle A1, verwende folgende Formel:

    =TEXTJOIN("", TRUE, IF(ISNUMBER(VALUE(MID(A1, ROW($1:$255), 1)), MID(A1, ROW($1:$255), 1), ""))
  2. Drücke CTRL + SHIFT + ENTER, um die Eingabe als Array-Formel zu bestätigen.


Häufige Fehler und Lösungen

  • Problem: Das VBA-Makro funktioniert nicht.

    • Lösung: Stelle sicher, dass der Code korrekt kopiert wurde und Du die richtigen Zellen markiert hast.
  • Problem: Die Formel gibt einen Fehler zurück.

    • Lösung: Überprüfe, ob Du die Eingabe als Array-Formel mit CTRL + SHIFT + ENTER bestätigt hast.
  • Problem: Buchstaben löschen sich beim Schreiben.

    • Lösung: Dies könnte an einer falschen Formatierung oder an einer aktiven Formel liegen. Überprüfe die Zellformatierung.

Alternative Methoden

Neben der Verwendung von VBA und Formeln gibt es auch die Möglichkeit, das Menü "Suchen und Ersetzen" zu nutzen:

  1. Markiere die Zellen oder den Bereich, in dem Du die Buchstaben löschen möchtest.
  2. Drücke CTRL + H, um das Dialogfeld "Suchen und Ersetzen" zu öffnen.
  3. Gib in das Feld "Suchen nach" den Buchstaben ein, den Du entfernen möchtest.
  4. Lass das Feld "Ersetzen durch" leer.
  5. Klicke auf "Alle ersetzen".

Diese Methode funktioniert gut, wenn Du nur bestimmte Buchstaben entfernen möchtest.


Praktische Beispiele

  • Beispiel 1: Du hast die Telefonnummer +49 123 ABC 456 in Zelle A1. Nach der Anwendung des Makros oder der Formel solltest Du 49123456 erhalten.

  • Beispiel 2: Wenn Du die Daten 00A0B123 in Zelle B1 hast, wird das Ergebnis 00123 sein, wenn Du die Vorwahlbehandlung im VBA-Makro einbaust.


Tipps für Profis

  • Verwende VBA für große Datenmengen: Wenn Du mit vielen Zellen arbeitest, kann ein VBA-Makro wesentlich schneller sein als eine Formel.
  • Anpassungen vornehmen: Du kannst die VBA-Codes leicht anpassen, um auch spezielle Zeichen oder Buchstaben zu entfernen.
  • Regelmäßige Sicherung: Stelle sicher, dass Du Deine Excel-Datei regelmäßig sicherst, besonders wenn Du mit Makros arbeitest.

FAQ: Häufige Fragen

1. Kann ich mit einer Formel auch bestimmte Buchstaben entfernen? Ja, Du kannst die Formel anpassen, indem Du den gewünschten Buchstaben in der VALUE-Funktion ersetzt.

2. Wie kann ich die Buchstaben aus mehreren Zellen gleichzeitig entfernen? Wähle einfach alle Zellen aus, bevor Du das Makro ausführst oder die Formel anwendest. Das Makro wird dann auf alle markierten Zellen angewendet.

3. Funktioniert das auch in älteren Excel-Versionen? Die VBA-Methode funktioniert in allen Versionen von Excel. Die Formel ist jedoch nur in Excel 365 oder 2019 verfügbar.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige