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

Position des ersten Zeichen in einem String!

Forumthread: Position des ersten Zeichen in einem String!

Position des ersten Zeichen in einem String!
15.01.2004 17:43:04
Thomas
Hallo,
könnte mir jemand sagen ob es einen Befehl gibt der mir sagt wann ich in einem String auf den ersten Buchstaben treffe wenn z.B. Zahlen oder Leerzeichen davor stehen!
Grüße
Thomas
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Position des ersten Zeichen in einem String!
15.01.2004 18:31:49
K.Rola
Hallo,
wirklich nur Zahlen und Leerzeichen oder können da auch irgendwelche
Sonderzeichen vorkommen?
Gruß K.Rola
AW: Position des ersten Zeichen in einem String!
15.01.2004 18:40:21
Koenig W.
Hallo Thomas
für Zahlen. Leerzeichen und Buchstaben sollte es mit folgendem Code gehen.
Sonst musst Du es halt modifizieren.

Sub ErsterBuchstabe()
Dim i As Long
Dim var As Variant
For i = 1 To Len(ActiveCell)
var = Mid(ActiveCell.Value, i, 1)
Select Case var
Case Is = " "
Case Is <> IsNumeric(var)
MsgBox ("Es ist das " & i & " Zeichen")
Exit Sub
Case Else
End Select
Next i
End Sub

Gruss Wilhelm
Anzeige
AW: Position des ersten Zeichen in einem String!
15.01.2004 19:59:34
FP
Hallo Thomas,
wie wäre es damit ?
Excel Jeanie HTML
Anzeige
AW: Position des ersten Zeichen in einem String!
16.01.2004 09:28:26
Thomas
Danke schön! Ich dachte es gäbe eine Funktion die mir nur dass Wort zurücktgibt in einem String!
Gruß
Thomas
;

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

Infobox / Tutorial

Position des ersten Zeichens in einem String ermitteln


Schritt-für-Schritt-Anleitung

Um die Position des ersten Zeichens in einem String zu ermitteln, kannst Du ein einfaches VBA-Skript verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

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

  2. Erstelle ein neues Modul:

    • Klicke mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsx)".
    • Wähle "Einfügen" und dann "Modul".
  3. Füge den folgenden Code ein:

    Sub ErsterBuchstabe()
       Dim i As Long
       Dim var As Variant
       For i = 1 To Len(ActiveCell)
           var = Mid(ActiveCell.Value, i, 1)
           If var <> " " And Not IsNumeric(var) Then
               MsgBox ("Es ist das " & i & " Zeichen")
               Exit Sub
           End If
       Next i
    End Sub
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. Markiere die Zelle, deren Zeichenposition Du überprüfen möchtest.

  6. Starte das Makro über ALT + F8, wähle "ErsterBuchstabe" und klicke auf "Ausführen".

Jetzt solltest Du die Position des ersten Zeichens in dem String angezeigt bekommen.


Häufige Fehler und Lösungen

  • Fehler: "Typenübereinstimmung"

    • Lösung: Stelle sicher, dass die Zelle, die Du ausgewählt hast, einen Text-String enthält.
  • Fehler: Das Makro gibt nichts zurück

    • Lösung: Überprüfe, ob die Zelle Leerzeichen oder Zahlen vor dem ersten Zeichen enthält. Das Skript ist so konzipiert, dass es nur Buchstaben erkennt.

Alternative Methoden

Du kannst die Position eines Zeichens auch mit Excel-Funktionen ermitteln, ohne VBA zu verwenden. Hier ist eine Methode:

  1. Benutze die Funktion FINDEN:

    =FINDEN("*",A1)

    Diese Formel sucht das erste Zeichen in der Zelle A1 und gibt die Position zurück, wenn Du "*" anstelle eines spezifischen Zeichens nutzt. Achte jedoch darauf, dass die FINDEN-Funktion nicht mit Platzhaltern umgehen kann.

  2. Verwende die Funktion WECHSELN:

    =FINDEN(WECHSELN(A1," ",""),A1)

    Diese Funktion entfernt die Leerzeichen und gibt die Position des ersten Zeichens zurück.


Praktische Beispiele

  • Beispiel 1: Wenn in A1 der Wert " 123abc" steht, gibt das VBA-Skript die Position 5 zurück, weil das erste Zeichen "a" ist.

  • Beispiel 2: In A1 steht "##@Test". Das Skript ignoriert die Sonderzeichen und gibt die Position 5 zurück, da "T" das erste Buchstaben-Zeichen ist.


Tipps für Profis

  • Nutze die InStr-Funktion in VBA, um die Position eines spezifischen Zeichens schneller zu finden:

    Dim pos As Long
    pos = InStr(1, ActiveCell.Value, "a")
    If pos > 0 Then MsgBox "Position: " & pos
  • Teste Deine Skripte immer mit verschiedenen Eingaben, um sicherzustellen, dass sie robust sind. Dies hilft Dir, fehlerhafte Ergebnisse zu vermeiden.


FAQ: Häufige Fragen

1. Wie kann ich das Skript anpassen, um Sonderzeichen zu berücksichtigen?
Du kannst den Select Case-Block im VBA-Code anpassen, um auch Sonderzeichen zu erkennen und im Fall eines Treffers eine entsprechende Meldung anzuzeigen.

2. Funktioniert das Skript in allen Excel-Versionen?
Ja, das Skript sollte in den meisten modernen Excel-Versionen funktionieren, solange Du VBA unterstützt.

3. Gibt es eine Möglichkeit, die Position des ersten Zeichens ohne VBA zu finden?
Ja, Du kannst die Funktionen FINDEN oder WECHSELN in Excel verwenden, um die Position zu ermitteln.

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