3.2k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo zusammen,

ich habe eine Artikelübersicht mit ca. 400 Produkten in Excel.
Die normale Suchfunktion STRG+F ist nicht ausreichend.

Aktuell ist in Zeile 1 die Überschrift wie Artikelnummer, Bezeichnung Artikel, Preis, Bestand, usw....
Ab Zeile 2 beginnen die eigentlichen Daten.

Für mich besteht das Problem darin, dass die Artikel sich teilweise nur in der Farbbezeichnung unterscheiden und der Typ gleich ist.

Meine Traum wäre es, wenn in Zeile 2 eine Suchfunktion integriert wäre, die mir alle Artikel mit dem Suchbegriff anzeigt.
Wichtig ist vielleicht noch, dass der gesucht Begriff nicht zwingend am Anfang in der Zelle steht - Bsp.: Nokia Handy 1616 blau

1616 wäre dann der Suchbegriff.

Es ist auch nicht notwendig, dass über mehrere Tabellenblätter gesucht werden muss.

Bin für jede Hilfe dankbar

Viele Grüße
Maik

10 Antworten

0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Halo Maik,

benutze doch Autofilter, enthält

Gruß Hajo
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo Maik,

nach Deiner Schilderung wirst Du ewig Probleme bei der Auswertung Deiner Daten haben, deshalb würde ich Dir zwingend empfehlen Deine Daten als erstes datenbankgerecht aufzubereiten.

D.h. vergib für jeden Artikel eine Artikelnummer oder ein anderes Kennzeichen, an dem der Artikel eindeutig zu erkernnen ist.
Wenn Du gewährleistest, dass jede Artikelnummer nur einmal in den Daten vorkommt, ist eine beliebige Auswertung ein Kinderspiel.

Eher lohnt sich nicht über Dein Problem nachzudenken, schon gar nicht ohne Beispieldatei.

Gruß
Rainer
0 Punkte
Beantwortet von
Hallo und vielen Dank,

Autofilter ist mir zu umständlich, da ich 100 x in der Stunde eine Suche machen muss. Und ich habe dann Kunden am Telefon. Da muss es schnell gehen :-)

Jeder Artikel ist bereits mit einer Artikelnummer versehen, die auch nur 1 x vorkommt.

Hintergrund ist, dass ich über die Bezeichnung suche, um eben die Artikelnummer in Erfahrung zu bringen, um diese zu kopieren.

Ich ziehe die Daten aus meiner Warenwirtschaft. Die hat natürlich auch eine Suche, welche aber von der Geschwindigkeit mehr als bescheiden ist (also unbrauchbar). Daher kam ich auf die Idee, die Artikel jeden Morgen nach Excel zu importieren und ordentlich zu formatieren.
Dafür habe ich auch bereits ein Makro aufgezeichnet.

Ich habe bereits verschieden VBA Codes aus dem Netz ausprobiert, aber keiner erfüllt meinen Zweck richtig.

Wie kann ich denn die Beispieldatei hochladen?

Danke
Maik
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo Maik,

über diese Adresse könntest Du bdie Datei ins Netz stellen und den Download-Link hier posten.

Gruß
Rainer
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
0 Punkte
Beantwortet von
Hallo Hajo,

vielen, vielen Dank - genau das was ich brauche!!!
Ich habe nur noch eine Frage:

Der Suchbegriff im Bereich B2 funktioniert nur mit Text.
Wenn ich eine Zahl eingebe, z. B. 1616 findet er den Artikel nicht.

Ist hoffentlich nur eine kleine Änderung???

Danke und viele Grüße
Maik
0 Punkte
Beantwortet von beverly Experte (3.5k Punkte)
Hi Maik,

der Code funktioniert auch in Spalte B mit Zahlen. Ich habe jetzt in einige Zellen der Spalte B die Zahl 1616 geschrieben, in andere eine andere Zahl und in einigen Text belassen - sobald in B1 die Zahl 1616 eingetragen wird, erfolgt die korrekte Filterung nach 1616.

Bis später,
Karin
0 Punkte
Beantwortet von
Ja, bei mir auch.

Aber schreib mal vor die Zahl noch einen Text
Also Nokia 1616

Suchbegriff wieder 1616 und dann findet er es nicht :-(
0 Punkte
Beantwortet von beverly Experte (3.5k Punkte)
Hi Maik,

ich habe nur deinen letzten Beitrag gelesen, da ich darauf aufmerksam gemacht wurde, dass das Autofilterbeispiel von meiner HP verlinkt wurde, und nicht den gesamten Thread.

Der Code ist so ausgelegt, dass bei einer numerischen Eingabe der gesamte Inhalt verglichen wird. Wenn du dir den Kommentar im Code ansiehst, dann steht dort eindeutig:

' Autofilter für das betreffende Feld setzen, Filterkriterium "entspricht"
.AutoFilter Field:=raZelle.Column + 1 - ActiveSheet.AutoFilter.Range(1).Column, _
Criteria1:="=" & raZelle

somit musst du den Code an dieser Stelle ändern, um anstelle Filterkriterium "entspricht" das Filterkriterium "enthält" zu verwenden

' Autofilter für das betreffende Feld setzen, Filterkriterium "enhält"
.AutoFilter Field:=raZelle.Column + 1 - ActiveSheet.AutoFilter.Range(1).Column, _
Criteria1:="=*" & raZelle & "*"

Ein betreffendes Beispiel gibt es übrigens weiter unten im Code im Else-Zweig, da hätte man es ablesen können - dazu sind schließlich Kommentare im Code da. Hajo hatte dich ja schon darauf hingewiesen, dass du das Filterkriterum "enthält" benutzen sollst.

Bis später,
Karin
0 Punkte
Beantwortet von
Super und vielen Dank und sorry fürs Überlesen....
Maik
...