Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1916to1920
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Text einer List in Zelle suchen

Text einer List in Zelle suchen
17.01.2023 14:48:43
Michael
Hallo Excel-Profis,
ich habe eine Liste mit Einsätzen die unter anderem eine Projektbezeichnung enthält. Diese ist jedoch nicht ein-eindeutig und nicht für die weitere Auswertung geeignet. Ich habe auch keinen Einfluss auf die Dateneingabe dieser Projektbezeichnung.
Deshalb möchte ich diesen Daten ein eindeutiges Projektkürzel zuordnen.
Dafür habe ich eine Liste mit Projektkürzeln angelegt.
Nun soll der Projektbezeichnung das entsprechende Projektkürzel automatisch zugeordnet werden
Eine Beispieldatei habe ich hochgeladen
https://www.herber.de/bbs/user/157314.xlsx
Als Ergebnis habe ich mir in etwa vorgestellt:
ID 1
Projekt AFG AA 20 o.Ä.
Projektkürzel AFG
Das Problem das ich habe ist wie folgt (Bezug auf unten angehängten Text; nicht Beispieldatei):
Ich kann nach einem festen Kürzel innerhalb der Projektzelle suchen und in z.B. J ausgeben.
J1=Suchen(B2;I1)
Verbunden mit Ist-Zahl und weiteren komme ich auf das gewünschte Ergebnis.
Dies ist ja aber der logisch umgekehrte Weg und kann nicht automatisiert werden.
Wie kann ich als Suchkriterium eine Liste angeben und das entsprechende Kürzel als Ergebnis ausgegeben bekommen?
Kann ich die Suchen-Funktion "umdrehen". Z.B. mithilfe eines Arrays?
Ich hoffe ich habe mich verständlich ausgedrückt.
A B C
1 SOL Somaliland
2 AFG Afghanistan
3 EGY Ägypten
4 ALG Algerien
5 ETH Äthiopien
6 BGD Bangladesch
7 BIH Bosnien und Herzegowina
8 BFA Burkina Faso
9 CHL Chile
10 CHN China
11 GHA Ghana



H I
1 "AFG AA 20, 32, 33"
2 AFG AGEF 03
3 BA Leitung (JPN)
4 COL AA 02
4 IRQ 2014 (AA02)
5 JOR AA 04
6 SDN AA 04, SDN AA 05
7 SLE AA 05
8 TV BA Leitg. (SLE)
9 UGA AA 01

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Text einer List in Zelle suchen
17.01.2023 15:08:18
onur
Zeige doch mal anhand der Beispielsdatei, was du meinst, statt irgendwelcher Textkolonnen.
AW: Text einer List in Zelle suchen
17.01.2023 16:07:02
Michael
Mir ist nicht ganz klar was du damit meinst, aber ich versuchs mal:
Ab G2 sollen die Kürzel aus B2:B40 ausgegeben werden, welche in F2:F12 gesucht wurden.
Ist das verständlicher?
AW: Text einer List in Zelle suchen
17.01.2023 16:45:28
onur
"Zeige doch mal anhand der Beispielsdatei" bedeutet, dass du IN DER BEISPIELSDATEI (anhand eines Beispieles mit Wunschergebnis) zeigen sollst, wie das nachher aussehen soll.
AW: Text einer List in Zelle suchen
17.01.2023 16:34:58
ChrisL
Hi Michael
Es gefällt mir, solche Herausforderungen mittels Power-Query zu lösen. Aufgrund der Multiplikation der Vergleiche (10 Projekte * 39 Länder = 390 Vergleiche), wird die Lösung nur bis zu einer gewissen Datenmenge performant sein, aber ich schätze dies ist auch bei anderen Lösungsansätzen der Fall.
Für die Lösung musste ich zugegeben etwas tiefer in die PQ-Trickkiste greifen. Jedoch funktioniert die Lösung auch, wenn es Mehrfachtreffer gibt oder wenn keine Übereinstimmung gefunden wird.
Eingriffe direkt im M-Code sind kaum dabei, aber das Coding der benutzerdefinierten Spalten ist etwas komplexer.
- Menü Daten, Daten abrufen, Aus anderen Quellen, leere Abfrage
- PQ-Editor öffnet
- Menü Ansicht, Erweiterter Editor, Code hineinkopieren
- Speichern & Laden
let
    QuelleAuswertung = Excel.CurrentWorkbook(){[Name="Tabelle3"]}[Content],
    QuelleLänder = Excel.CurrentWorkbook(){[Name="Tabelle1"]}[Content],
    #"Geänderter Typ" = Table.TransformColumnTypes(QuelleAuswertung,{{"ID", Int64.Type}, {"Projekt", type text}}),
    #"Hinzugefügte benutzerdefinierte Spalte" = Table.AddColumn(#"Geänderter Typ", "Länder", each QuelleLänder),
    #"Erweiterte Länder" = Table.ExpandTableColumn(#"Hinzugefügte benutzerdefinierte Spalte", "Länder", {"Kürzel"}, {"Kürzel"}),
    #"Hinzugefügte benutzerdefinierte Spalte1" = Table.AddColumn(#"Erweiterte Länder", "Land", each if Text.PositionOf([Projekt],[Kürzel],Occurrence.First)>=0 then true else false),
    #"Gruppierte Zeilen" = Table.Group(#"Hinzugefügte benutzerdefinierte Spalte1", {"ID", "Projekt"}, {{"alle", each _, type table [ID=nullable number, Projekt=nullable text, Kürzel=text, Land=logical]}}),
    #"Hinzugefügte benutzerdefinierte Spalte2" = Table.AddColumn(#"Gruppierte Zeilen", "Kürzel", each Table.SelectRows(Table.RemoveRowsWithErrors([alle]), (r) => r[Land]=true)[Kürzel]),
    #"Erweiterte Kürzel" = Table.ExpandListColumn(#"Hinzugefügte benutzerdefinierte Spalte2", "Kürzel"),
    #"Ersetzter Wert" = Table.ReplaceValue(#"Erweiterte Kürzel",null,"nicht gefunden",Replacer.ReplaceValue,{"Kürzel"}),
    #"Zusammengeführte Abfragen" = Table.NestedJoin(#"Ersetzter Wert", {"Kürzel"}, QuelleLänder, {"Kürzel"}, "Länder", JoinKind.LeftOuter),
    #"Erweiterte Länder1" = Table.ExpandTableColumn(#"Zusammengeführte Abfragen", "Länder", {"ID", "Projekt"}, {"Länder.ID", "Länder.Projekt"}),
    #"Sortierte Zeilen" = Table.Sort(#"Erweiterte Länder1",{{"ID", Order.Ascending}, {"Projekt", Order.Ascending}}),
    #"Entfernte Spalten" = Table.RemoveColumns(#"Sortierte Zeilen",{"alle"})
in
    #"Entfernte Spalten"
cu
Chris
Anzeige
AW: Text einer List in Zelle suchen
17.01.2023 18:35:32
Herbert_Grom
Hallo Michael,
schau dir mal meinen Vorschlag an. Das geht evtl. auch eleganter und vielleicht postet ja noch einer einen kürzeren Vorschlag, aber er tuts zumindest:
https://www.herber.de/bbs/user/157332.xlsx
Servus
AW: Tnoch ein Formelvorschlag ...
18.01.2023 09:51:31
neopa
Hallo Michael,
... in G2 folgende:
=WENNFEHLER(INDEX(Tabelle1[Kürzel];AGGREGAT(15;6;ZEILE(Tabelle1[Kürzel])/FINDEN(Tabelle1[Kürzel];[@Projekt])^0;1)-ZEILE(Tabelle1[#Kopfzeilen]));"")
wobei Du in der Beispieldatei anstelle -ZEILE(Tabelle1[#Kopfzeilen]) weiter verkürzt einfach -1 schreiben kannst.
Gruß Werner
.. , - ...
Anzeige

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige