Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Einen String in einer Tabelle finden / Spalte

Einen String in einer Tabelle finden / Spalte
14.11.2006 11:26:38
LotharP
Guten morgen zusammen,
ich möchte in einer Tabelle einen String finden und mir die entsprechende Spaltennummer wiedergeben lassen.
Gibt es bereits eine Funktion die das liefert oder muss ich mir eine basteln?!!
Vielen Dank im Vorraus für die Mühe!
Liebe Grüsse
Lothar
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Einen String in einer Tabelle finden / Spalte
14.11.2006 12:00:32
Dr.
Hi, so zB

Sub test()
MsgBox Range("A:G").Find("Suchbegriff", searchorder:=xlByRows).Column
End Sub

AW: Einen String in einer Tabelle finden / Spalte
14.11.2006 16:11:02
LotharP
Hallo Herr Dr.! ;-))
Jau das sieht gut aus, aber eine vorhandene Funktion gibt es demnach nicht!?
Vielen Dank, werde es gleich probieren als Function.
Gruß
Lothar
Anzeige
AW: Einen String in einer Tabelle finden / Spalte
14.11.2006 16:17:42
Norbert
Als Formel wäre das die Funktion "VERGLEICH" ...
AW: Einen String in einer Tabelle finden / Spalte
14.11.2006 16:34:13
LotharP
Hallo Norbert, Hallo DR.
danke für die Antwort. Die hatte ich schon erfolglos versucht!
Ich habe in der einen Tabelle "netsales" stehen und diesen suche ich in der nächsten Tabelle und möchte wissen "wo " er steht.
Vieleicht mache ich etwas falsch, aber bisher hat das nicht geklappt!
Die Functionsvariante von DR. ist auch nicht erfolgreich gewesen! Hier ist definitiv ein Fehler von mir:

Function NETSALESCol()
NETSALESCol = Sheets("DATEN").Range("d:aG").Find("60 Materials used", searchorder:=xlByRows).Column
End Function

Wäre nett wenn ihr nochmal schauen könntet!!
VIelen Dank nochmal!
Lothar
Anzeige
AW: Einen String in einer Tabelle finden / Spalte
14.11.2006 16:51:55
Norbert
Kannst Du nicht mal die Datei (oder den entsprechenden Teil davon) hochladen ? Wäre einfacher ...
AW: Einen String in einer Tabelle finden / Spalte
14.11.2006 17:03:03
LotharP
Hallo Norbert, DR.,
https://www.herber.de/bbs/user/38161.xls
hoffe das hilft etwas weiter.
Wahrscheinlich eine Kleinigkeit, aber nur wenn mans weiss! ;-))
Danke!
Lothar
Anzeige
AW: Einen String in einer Tabelle finden / Spalte
15.11.2006 11:44:40
LotharP
Hallo Norbert,hallo DR.,
ich hatte meine Antwort gestern scheinbar als geschlossen gepostet!?
Ich schicke den Dateilink nochmal.
https://www.herber.de/bbs/user/38161.xls
Wäre nett wenn ihr nochmal schauen könntet!
Vielen Dank im Vorraus!
Lothar
Anzeige
AW: Einen String in einer Tabelle finden / Spalte
15.11.2006 15:49:38
Norbert
Hallo Lothar,
sorry, hatte ich fast vergessen ... Also die Funktion
=VERGLEICH("60 Materials used";5:5;0)
liefert den Wert 12 (12.Spalte). Geht natürlich genauso als Zeilensuche ...
Hilft Dir das weiter !?
Viele Grüße,
Norbert
AW: Einen String in einer Tabelle finden / Spalte
16.11.2006 12:43:53
LotharP
Hallo Norbert,
Danke. Hatte jetzt schon nicht mehr mit gerechnet!
Frage: Muss es in der Zeile 5 sein oder kann es ein Zeilenbereich sein?!
Hier mein missglueckter Versuch:
=VERGLEICH("60 Materials used";DATEN!1:80;0)
Gruß
Lothar
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Einen String in einer Tabelle finden und die Spalte zurückgeben


Schritt-für-Schritt-Anleitung

  1. VBA-Makro verwenden: Du kannst ein einfaches VBA-Makro erstellen, um einen String in einer Tabelle zu finden und die entsprechende Spaltennummer zurückzugeben. Hier ist ein Beispiel:

    Sub test()
        MsgBox Range("A:G").Find("Suchbegriff", searchorder:=xlByRows).Column
    End Sub

    Dieser Code sucht innerhalb der Spalten A bis G nach dem "Suchbegriff" und gibt die Spaltennummer in einer Meldung aus.

  2. Excel-Funktion nutzen: Alternativ kannst du die VERGLEICH-Funktion verwenden, um den Text in einer bestimmten Zeile zu suchen. Zum Beispiel:

    =VERGLEICH("60 Materials used"; 5:5; 0)

    Diese Funktion sucht nach dem Text "60 Materials used" in der 5. Zeile und gibt die Spaltennummer zurück.


Häufige Fehler und Lösungen

  • Fehler: Funktion gibt #WERT! zurück: Dies kann auftreten, wenn der gesuchte Text nicht im angegebenen Bereich vorhanden ist. Überprüfe die Schreibweise des Suchbegriffs und stelle sicher, dass er im Bereich vorhanden ist.

  • Fehler: Makro funktioniert nicht: Wenn das VBA-Makro nicht funktioniert, stelle sicher, dass du das Makro in einem Modul eingefügt hast und dass die Funktion Find korrekt verwendet wird. Achte darauf, dass die Sucheigenschaften wie LookIn und LookAt richtig gesetzt sind.


Alternative Methoden

  • SVERWEIS-Funktion: Du kannst auch die SVERWEIS-Funktion verwenden, um einen Wert in einer Tabelle zu finden und die zugehörige Spalte zurückzugeben. Beachte jedoch, dass diese Funktion nur nach dem ersten Wert in der ersten Spalte einer Tabelle sucht.

  • FILTER-Funktion (Excel 365): Wenn du Excel 365 verwendest, kannst du die FILTER-Funktion verwenden, um alle Zeilen zu finden, die einem bestimmten Kriterium entsprechen. Beispiel:

    =FILTER(A1:G100; A1:A100="Suchbegriff")

Praktische Beispiele

  • Beispiel 1: Angenommen, du hast eine Tabelle mit Verkaufsdaten und möchtest herausfinden, in welcher Spalte der Text "netsales" steht. Du könntest die folgende Funktion verwenden:

    =VERGLEICH("netsales"; A1:G1; 0)
  • Beispiel 2: Um mit VBA zu arbeiten und den Text "60 Materials used" zu finden, kannst du diesen Code verwenden:

    Function NETSALESCol()
        NETSALESCol = Sheets("DATEN").Range("D:A:G").Find("60 Materials used", searchorder:=xlByRows).Column
    End Function

Tipps für Profis

  • Suchoptionen anpassen: Achte darauf, dass du die Suchoptionen wie LookIn und LookAt in der Find-Methode anpasst, um genauere Ergebnisse zu erhalten. Dies kann dir helfen, die Suche zu optimieren und nur relevante Ergebnisse zu liefern.

  • Verwendung von Platzhaltern: In der Find-Methode kannst du Platzhalter verwenden, um Teilstrings zu suchen. Zum Beispiel kannst du *Material* verwenden, um alle Variationen zu finden, die "Material" enthalten.


FAQ: Häufige Fragen

1. Frage
Wie kann ich einen Teilstring in einer Spalte suchen?
Du kannst die Find-Methode in VBA verwenden und Platzhalter wie * verwenden, um einen Teilstring zu finden. Beispiel: Range("A:A").Find("*Teilstring*").

2. Frage
Kann ich die Suche auf mehrere Spalten ausweiten?
Ja, du kannst den Suchbereich in der Find-Methode erweitern, indem du mehrere Spalten angibst, z.B. Range("A:G").

3. Frage
Was kann ich tun, wenn die Suchfunktion nicht funktioniert?
Überprüfe die Schreibweise des Suchbegriffs und stelle sicher, dass er genau so in der Tabelle steht. Achte auch darauf, dass der Suchbereich korrekt definiert ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige