Suchen in Spalte A
#1
Hallo Profis,
habe eine Tabelle mit ca. 600 Zeilen und unterschiedlichen Inhalten.
In Spalte A steht z.B. A1495-A1501
Wenn ich nach A1496 suche wird nichts gefunden, logisch
Die Werte liegen also zwischen A1495 und A1501

Hapt ihr eine Idee, das auch die dazwischenliegenden Werte gefunden werden und die Zeile oder Feld markiert wird?

Mir fehlt momentan jeglicher Ansatz, VBA oder Hilfsspalten egal,
bin für jede Hilfe offen.

Besten Dank im voraus
LG André
Antworten Top
#2
Moin!
Text in Spalten (für A), Trennzeichen -
Ein einziges(!) Beispiel lässt etwas zuviel Platz für Mutmaßungen …
Lade Mal Deine Datei hoch!
(Spalte A reicht)

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#3
Hallo Ralf,

hier die Datei

Gruss André


Angehängte Dateien
.xlsx   ED2024.xlsx (Größe: 38,89 KB / Downloads: 22)
Gruss André
Antworten Top
#4
Hallo Andre,

hier ist mein Vorschlag bei dem der Suchwert in Zelle A16 eingegeben wird.
Folgende Formel als bedingte Formatierung hinterlegen:

Code:
=ZEILE()=SUMMENPRODUKT((TEIL($A$18:$A$1000;2;4)<=TEIL($A$16;2;4))*(TEIL($A$18:$A$1000;8;4)>=TEIL($A$16;2;4))*(ZEILE($A$18:$A$1000)))

Wichtig: 
Die Formel ist leider sehr statisch. Der Aufbau der Zellen muss immer identisch sein. Somit ein Buchstabe plus 4-stellige Nummern.
Der Buchstabe wird nicht beachtet. 
Würde es denn in deinem Fall z.B. A1503 UND B1503 geben? Dann müsste ein zusätzlicher Abgleich des Buchstabens eingebaut werden.

Hoffe die Formel hilft für einen ersten Ansatz weiter.


Angehängte Dateien
.xlsx   Vorschlag_mit_Summenprodukt.xlsx (Größe: 39,97 KB / Downloads: 7)
[-] Folgende(r) 1 Nutzer sagt Danke an el-rettev für diesen Beitrag:
  • AndreLieske
Antworten Top
#5
Hi Andre,

oder falls es deine Umgebung zulässt, mit Makro.
Ist eigentlich selbsterklärend, Du klickst auf 'Neue Suche', gibst einen Teilsuchbegriff ein und 'OK'
Dann wird nur noch die Zeile angezeigt.
Zum lösen des Filters auf "'Komplette Tabelle' klicken.



.xlsm   ED2024.xlsm (Größe: 48,66 KB / Downloads: 8)
Grüße

J.K.H.
Antworten Top
#6
Hallo J.K.H.
das Macro funktioniert leider nicht, so wie es soll.
Gebe mal "A1496" ein.

Hallo el-rettev,
erstmal Danke für deine Mühe.
Habe die Suche in L16 &M16 eingebaut und die Formel angepasst.
Funktioniert fast, wenn ich "E3616" eingebe, soll der Artikel sich lt. Ausgabe in Zeile 476 befinden,
er ist aber in Zeile 330
Der Fehler scheint ab Zeile 64 zu passieren
Was ist verkehrt?


Angehängte Dateien
.xlsx   ed.xlsx (Größe: 62,4 KB / Downloads: 7)
Gruss André
Antworten Top
#7
Bevor ich jetzt alle Artikel durchgehen muss, kannst du mir vllt sagen, ob es die gleiche Artikelnummer mit unterschiedlichen Buchstaben in deinem Artikelstamm gibt.
Siehe meine vorherige Anmerkung:


Zitat:Der Buchstabe wird nicht beachtet. 
Würde es denn in deinem Fall z.B. A1503 UND B1503 geben? Dann müsste ein zusätzlicher Abgleich des Buchstabens eingebaut werden.
Antworten Top
#8
Hi,

Hallo J.K.H.
das Macro funktioniert leider nicht, so wie es soll.
Gebe mal "A1496" ein.

Dann kommt bei mir die Meldung das der Suchbegriff nicht vorhanden ist, mit OK dann wieder die ursprüngliche Tabelle.
Was soll denn genau passieren bei Eingabe von A1496?

Hier noch mal ein angepasster Code, der wesentlich schneller ist.
Code:
Sub NeueSuche()
    Dim ws As Worksheet
    Dim searchTerm As String
    Dim lastRow As Long
    Dim found As Boolean

    ' Referenz auf das Arbeitsblatt
    Set ws = ThisWorkbook.Sheets("Industriepreisliste_IND") ' Ersetzen Sie "NameDesArbeitsblatts" durch den tatsächlichen Namen Ihres Arbeitsblatts

    ' Benutzereingabe für den Suchbegriff
    searchTerm = InputBox("Geben Sie einen Teilbegriff ein:", "Teilsuche")

    ' Überprüfen, ob der Benutzer eine Eingabe gemacht hat
    If searchTerm <> "" Then
        ' Letzte Zeile in Spalte A finden
        lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
        found = False

        ' Alle Filter entfernen
        ws.AutoFilterMode = False

        ' Filtern basierend auf dem Suchbegriff
        ws.Range("A17:A" & lastRow).AutoFilter Field:=1, Criteria1:="*" & searchTerm & "*"

        ' Überprüfen, ob Zeilen gefunden wurden
        If ws.Cells(ws.Rows.Count, "A").End(xlUp).Row > 18 Then
            found = True
        End If

        ' Meldung anzeigen, wenn nichts gefunden wurde
        If Not found Then
            MsgBox "Suchbegriff nicht in der Datei.", vbExclamation
            ' Alle Zeilen wieder anzeigen
            ws.AutoFilterMode = False
        End If
    End If
End Sub

Sub KompletteTabelle()
    Dim ws As Worksheet

    ' Referenz auf das Arbeitsblatt
    Set ws = ThisWorkbook.Sheets("Industriepreisliste_IND") ' Ersetzen Sie "NameDesArbeitsblatts" durch den tatsächlichen Namen Ihres Arbeitsblatts

    ' Alle Zeilen wieder anzeigen
    ws.AutoFilterMode = False
    ws.Rows.Hidden = False
End Sub
Grüße

J.K.H.
Antworten Top
#9
Guten Morgen,
nein es gibt keine doppelten Zahlen.
Gebe mal E3616 ein, im Suchwert steht Zeile 476,
dort ist es aber nicht.
Es ist in Zeile 330

Bin von oben bis Zeile 63 durchgegangen,
ab Zeile 64kommt der Fehler.
Gruss André
Antworten Top
#10
Hab mir die Formel nochmal angeschaut.
Wie gesagt, bin davon ausgegangen, dass es keine überschneidende Bereiche mit unterschiedlichen Buchstaben gibt.
Aber anscheinend gibt es die.
Um bei deinem Beispiel zu bleiben: E3616
Die Zeile wird nicht richtig angegeben, da es den Bereich A3609-A3625 gibt, sowie E3616-E3618. Bei beiden Bereichen liegt der Suchwert "3616" in dem jeweiligen Bereichen.
Hier eine Alternative mit zusätzlichen Abgleich des Buchstabens. Muss dann als bedingte Formatierung hinterlegt werden.
Code:
=ZEILE()=SUMMENPRODUKT((TEIL($A$18:$A$1000;2;4)<=TEIL($L$16;2;4))*(TEIL($A$18:$A$1000;8;4)>=TEIL($L$16;2;4))*(TEIL($A$18:$A$1000;1;1)=TEIL($L$16;1;1))*(ZEILE($A$18:$A$1000)))


Angehängte Dateien
.xlsx   Suche Zahl von bis mit Buchstabe.xlsx (Größe: 63,72 KB / Downloads: 4)
[-] Folgende(r) 1 Nutzer sagt Danke an el-rettev für diesen Beitrag:
  • Sabotaz
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste