Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Aus Spalte Erste 5 Zeichen auslesen

Aus Spalte Erste 5 Zeichen auslesen
07.05.2018 14:05:11
Goeschl
Hallo!
Ich habe eine Frage an die Profis!
Und zwar habe ich eine Spalte KSt (Kostenstelle) wo darunter in den Zellen eine fünfstellige Nummer plus ein text getrennt mit "-" steht! z.b.
KSt
12000 - Lohn
22000 - Material...
Ich würde mir jetzt gerne aus dieser Spalte immer nur die Nummer vorm "-" in eine andere Spalte kopieren?
Hab schon alles Mögliche probiert komm aber nicht drauf!
Hätte da jemand eine Idee wie das funktionieren könnte?
Ich würds gerne mit einem Makro lösen (VBA).
Ich wäre echt dankbar!
lg Roland
Anzeige

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Aus Spalte Erste 5 Zeichen auslesen
07.05.2018 14:21:47
Werner
Hallo Roland,
=LINKS(A1;5)
in A1 steht die Kostenstelle mit Text.
Gruß Werner
AW: Aus Spalte Erste 5 Zeichen auslesen
07.05.2018 14:22:03
SF
Hola,
=links(A2;5)*1
Gruß,
steve1da
AW: Aus Spalte Erste 5 Zeichen auslesen
07.05.2018 14:24:06
{Boris}
Hi,
Ich würds gerne mit einem Makro lösen (VBA).
Sub erste_fuenf()
Dim C As Range
For Each C In Range("A1:A100") 'Bereich anpassen
C.Offset(0, 3) = Left(C, 5) 'Offset(0, 3) = 3 Spalten weiter rechts
Next C
End Sub
VG, Boris
Anzeige
AW: Aus Spalte Erste 5 Zeichen auslesen
07.05.2018 14:33:33
Goeschl
Vieeeeleeen Dank!
Ich denke mit der VB Lösung kann ich super weiter arbeiten!
Danke nochmal!
AW: Aus Spalte Erste 5 Zeichen auslesen
07.05.2018 14:37:26
Goeschl
Hi nochmal!
Ich bin unverschämt! ;-) Gäbe es auch eine Lösung wo ich die Werte vor dem "-" auslese?
lg Roland
AW: Aus Spalte Erste 5 Zeichen auslesen
07.05.2018 14:45:25
{Boris}
Hi,
Sub bis_Bindestrich()
Dim C As Range
For Each C In Range("A1:A100") 'Bereich anpassen
If InStr(1, C, "-") Then
C.Offset(0, 3) = Left(C, InStr(1, C, "-") - 1) 'Offset(0, 3) = 3 Spalten weiter rechts
End If
Next C
End Sub
VG, Boris
Anzeige
AW: Aus Spalte Erste 5 Zeichen auslesen
07.05.2018 14:48:19
Goeschl
Super!
Danke nochmal!
lg
AW: Aus Spalte Erste 5 Zeichen auslesen
08.05.2018 12:58:45
Goeschl
Hallo!
Könnte man das auch noch so machen das ich "manuell" ("A1:A100") eingebe sondern das vorher geschaut wird wieviele Spalten es gibt?
Ich hab eines wo ich eine Spalte lösche und das schaut so aus:
Könnte man das so anpassen?
'** Ermittlung der letzten Spalte in Zeile 1
ls = Cells(1, Columns.Count).End(xlToLeft).Columns.Column
'** Durchlauf aller Zeilen
For s = ls To 1 Step -1 'Zählung rückwärts bis Spalte 1
'** Abfragen, ob in der ersten Spalte die Ziffer 0 steht
If Cells(1, s).Value = "KSt-Betrag" Then
Columns(s).Delete Shift:=xlToLeft
End If
Next s
Anzeige
AW: Aus Spalte Erste 5 Zeichen auslesen
08.05.2018 13:03:30
Rudi
Hallo,
for each c in range(cells(1,1),cells(1,1).end(xlup))
Gruß
Rudi
AW: Aus Spalte Erste 5 Zeichen auslesen
08.05.2018 13:18:48
Goeschl
Danke! Habs so versucht aber da tut sich gar nix!
Sub bis_Bindestrich()
Dim C As Range
For Each C In Range(Cells(1, 1), Cells(1, 1).End(xlUp)) 'Bereich anpassen
If InStr(1, C, "-") Then
C.Offset(0, 3) = Left(C, InStr(1, C, "-") - 1) 'Offset(0, 3) = 3 Spalten weiter rechts
End If
Next C
End Sub

Anzeige
AW: Aus Spalte Erste 5 Zeichen auslesen
08.05.2018 15:05:44
Rudi
mein Fehler
For Each C In Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp))
AW: Aus Spalte Erste 5 Zeichen auslesen
08.05.2018 15:19:44
Goeschl
Funktioniert super!
Vielen Dank nochmal!
lg Roland
AW: Aus Spalte Erste 5 Zeichen auslesen
07.05.2018 15:02:29
Daniel
Hi
geht mit DATEN - DATENTOOLS - TEXT IN SPALTEN
Schritt 1: feste Breite auswählen
Schritt 2: Trenner nach dem 5. Zeichen einfügen, andere Trenner löschen
Schritt 3: bei Zielbereich die erste Zelle der Zielspalte angeben, die zweite Spalte anklicken und bei Datenformat... die Option "Spalte nicht importieren" auswählen
Um es als Makro ausführen zu lassen, einfach den Recorder mitlaufen lassen, gibt eine einzige Programmzeile für die vollständige Aufgabe:
Columns("A:A").TextToColumns Destination:=Range("D1"),DataType:=xlFixedWidth, _
FieldInfo:=Array(Array(0, 1), Array(5, 9))
Gruß Daniel
Anzeige
AW: Aus Spalte Erste 5 Zeichen auslesen
07.05.2018 16:52:30
Günther
Moin,
und beides geht (natürlich) ganz elegant mit Power Query über Spalte teilen und dann bei Bedarf Spalte löschen.
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
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

Erste 5 Zeichen auslesen in Excel


Schritt-für-Schritt-Anleitung

Um aus einer Zelle in Excel nur die ersten 5 Zeichen auszulesen, kannst Du die Funktion LINKS() verwenden. Hier ist eine einfache Anleitung:

  1. Öffne Deine Excel-Datei.

  2. Gehe zu der Zelle, in der Du die ersten 5 Zeichen anzeigen möchtest.

  3. Gib die folgende Formel ein:

    =LINKS(A1; 5)

    Ersetze A1 durch die Adresse der Zelle, aus der Du die Zeichen auslesen möchtest.

  4. Drücke die Eingabetaste. Die ersten 5 Zeichen der Zelle werden nun angezeigt.

Wenn Du die ersten 6 Zeichen auslesen möchtest, ändere die Zahl in der Formel einfach auf 6.


Häufige Fehler und Lösungen

  • Fehler: #WERT! wird angezeigt.

    • Lösung: Stelle sicher, dass die Referenzzelle (z.B. A1) tatsächlich Text enthält und nicht leer ist.
  • Fehler: Es wird nicht das erwartet Ergebnis angezeigt.

    • Lösung: Überprüfe, ob in der Zelle mehr als 5 Zeichen vorhanden sind. Wenn die Zelle weniger Zeichen enthält, gibt Excel die verfügbaren Zeichen zurück.

Alternative Methoden

Neben der Verwendung von Formeln kannst Du auch VBA verwenden, um die ersten Zeichen einer Zelle auszulesen. Hier ist ein einfaches Makro, das die ersten 5 Zeichen aus einer Spalte in eine andere kopiert:

Sub erste_fuenf()
    Dim C As Range
    For Each C In Range("A1:A100") 'Bereich anpassen
        C.Offset(0, 1) = Left(C, 5) 'Offset(0, 1) = eine Spalte rechts
    Next C
End Sub

Wenn Du die Werte vor einem Bindestrich auslesen möchtest, kannst Du folgendes Makro verwenden:

Sub bis_Bindestrich()
    Dim C As Range
    For Each C In Range("A1:A100") 'Bereich anpassen
        If InStr(1, C, "-") Then
            C.Offset(0, 1) = Left(C, InStr(1, C, "-") - 1) 'Offset(0, 1) = eine Spalte rechts
        End If
    Next C
End Sub

Praktische Beispiele

  1. Die ersten 3 Zeichen auslesen:

    =LINKS(A1; 3)
  2. Die ersten 10 Zeichen anzeigen:

    =LINKS(A1; 10)
  3. Erste vier Zeichen einer Zelle ausgeben:

    =LINKS(A1; 4)

Für komplexere Anforderungen kannst Du auch die TEXTINSPALTEN-Funktion verwenden, um feste Breiten zu definieren.


Tipps für Profis

  • Verwende =LINKS(A1; 2) für die ersten zwei Zeichen oder =LINKS(A1; 6) für die ersten sechs Zeichen.
  • Um die Anzahl der Zeichen in einer Zelle zu ermitteln, kannst Du die Funktion LÄNGE() nutzen. Zum Beispiel: =LÄNGE(A1) gibt die Anzahl der Zeichen in Zelle A1 zurück.
  • Wenn Du mit großen Datenmengen arbeitest, ziehe in Betracht, Power Query zu verwenden, um Zeichen effizient zu extrahieren.

FAQ: Häufige Fragen

1. Wie kann ich die ersten 5 Zeichen aus mehreren Zellen gleichzeitig auslesen? Du kannst die Formel einfach nach unten ziehen, um sie auf weitere Zellen anzuwenden. Alternativ kannst Du VBA verwenden, um dies automatisch zu erledigen.

2. Gibt es eine Möglichkeit, nur die ersten Zeichen zu übernehmen, wenn sie bestimmten Kriterien entsprechen? Ja, Du kannst die WENN()-Funktion zusammen mit LINKS() verwenden, um nur die Zeichen zu übernehmen, die Deinen Kriterien entsprechen.

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