Ich hoffe, Sie alle haben einen schönen Tag. Ich habe eine kleine Frage an Sie. Ich bereite einen Bericht vor, der Eingaben aus verschiedenen Tabellenblättern erfordert. Wenn ich diese Informationen in einem Blatt kombiniere, erscheint folgende Art von Anordnung.
Jetzt muss ich diese Informationen auch mit anderen Quellen vergleichen, was erfordert, Informationen aus Spalte B und C zu nehmen und in einer Zelle mit dem eindeutigen Wert in Spalte A zusammenzuführen. Hier ist die Antwort, nach der ich suche
Kann mir jemand dabei helfen?
Antwort1
dies erfordert ein wenig Vorbereitungsarbeit.
- Das erste Excel sollte so aussehen:
- das Zweite:
Diese Änderungen lassen sich mit dem Trick „Leerzeichen auswählen“ mit der Formel + Strg + Eingabe leicht aufheben.Hierwenn du nicht weißt wie
Dann benötigen Sie eine zusätzliche Spalte in der ersten Spalte mit dieser Formel: =B8&" : "&C8 Das gibt "Inst tag -a : Constraint pt-a" zurück. Dann benötigen Sie eine Array-Formel, die jedem Wert aus der dritten Spalte, die wir erstellt haben, mit dem entsprechenden Server entspricht. ARRAY-FORMEL, EINGABE MIT STRG+UMSCHALT+EINGABE! =VLOOKUP(D8,IF($A$20:$A$27=A8,$B$20:$C$27),2,FALSE)
$b$20:$c$27 ist der Ort, an dem Sie die Daten haben, um eine vertikale Suche mit dem „Inst-Tag …“ durchzuführen.
$A$20:$A$27 sollte der Ort sein, an dem in der zweiten Datei auf das System verwiesen wird.
Und A8, wo in dieser Zeile in der ersten Datei auf das System verwiesen wird.
Und ... voilà ... es funktioniert ...
es ist ziemlich kompliziert, wenn Sie neu sind, also lassen Sie mich wissen, ob Sie es schaffen.
Antwort2
Sie könnenPower Query
verfügbar in Excel 2010+
Sobald Sie diese Abfrage entwickelt haben, können Sie sie problemlos aktualisieren/auffrischen, wenn neue Daten hinzugefügt werden.
- Aus Excel: Daten aus Tabelle/Bereich abrufen (oder das Äquivalent in Excel 2010-2013)
- Im PQ Editor:
Subsystem
Spalte auswählen undFill --> Down
- *dadurch werden die leeren Zeilen in der ersten Spalte ausgefüllt
- Wählen Sie die Spalten 2 und 3 aus
" : "
Spalten mit als Trennzeichen zusammenführen
- Spalte 1 auswählen
- Gruppiere nach
- Neuer SpaltennameZusammengeführt
- Betrieb: Alle Zeilen
- Gruppiere nach
- Spalte hinzufügen
- Formel: =Tabelle.Spalte([Gruppiert],"Zusammengeführt")
Wählen Sie den Doppelpfeil oben in der neuen Spalte „Benutzerdefiniert“ aus.
- Werte extrahieren
- Verketten mit Sonderzeichen:#(lf) Dies ist das Zeilenvorschubzeichen
Schließen und laden
Auf dem Excel-Arbeitsblatt - Spalte 1 für vertikale Zentrierung formatieren - Spalte 2 für Zeilenumbruch formatieren
Alles kann über die Benutzeroberfläche erledigt werden, außer die Formel für die benutzerdefinierte Spalte einzugeben. Aber hier ist der M-Code:
M-Code
let
Source = Excel.CurrentWorkbook(){[Name="Table4"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Subsystem No.", type text}, {"Inst. Tag", type text}, {"Constraint", type text}}),
#"Filled Down" = Table.FillDown(#"Changed Type",{"Subsystem No."}),
#"Merged Columns" = Table.CombineColumns(#"Filled Down",{"Inst. Tag", "Constraint"},Combiner.CombineTextByDelimiter(" : ", QuoteStyle.None),"Merged"),
#"Grouped Rows" = Table.Group(#"Merged Columns", {"Subsystem No."}, {{"Grouped", each _, type table [#"Subsystem No."=text, Merged=text]}}),
#"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each Table.Column([Grouped],"Merged")),
#"Extracted Values" = Table.TransformColumns(#"Added Custom", {"Custom", each Text.Combine(List.Transform(_, Text.From), "#(lf)"), type text})
in
#"Extracted Values"