Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1912to1916
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

PowerBi - Excel Datenbasis

PowerBi - Excel Datenbasis
16.01.2023 13:11:13
Sebastian
Hallo zusammen,
ich melde mich mal wieder zu einem Problem. Ich würde gerne eine automatische Auswertung über Power Bi erstellen und hierbei als Datenbasis eine Excelliste pro Kalenderjahr hernehmen.
Grob zusammengefasst geht es um verschiedene Bewertungskriterien von verschiedenen Kunden die ich monatlich in rot/gelb/grün unterteilen möchte. Hierbei verwende ich aktuell eine bedingte Formatierung, die die Zellen automatisch einfärbt.
Problem 1:
Die unterschiedlichen Monate sind als Spalte vorhanden. Wenn ich die Excel Liste nun im PowerBi als Datenbasis verknüpfe, weiß ich nicht wie ich die Monate + Jahr zuweisen muss damit diese für die Datenpunkte auch als Datum erkannt werden. So dass man später auch nach Jahren / Monaten filtern kann.
Problem 2:
Ich würde gerne einen Chart darstellen, bei dem man den prozentualen Anteil von rot/gelb/grün sehen kann. Ich schaffe es auch in Excel nicht die eingefärbten Zellen mit bedingter Formatierung zählen zu lassen. Wenn die Zellen manuell eingefärbt werden, ist dies ja über den Farbwert (z.B. rot = 3) möglich.
Ich habe mal eine Beispieldatei mit angehängt auf der im ersten Arbeitsblatt die Datenbasis aufgezeigt wird. Und auf dem 2. Arbeitsblatt ein Beispiel für einen Chart wie er in PowerBi aussehen sollte.
https://www.herber.de/bbs/user/157284.xlsm
Beste Grüße und schonmal vielen Dank
Sebastian

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: PowerBi - Excel Datenbasis
16.01.2023 13:28:53
ChrisL
Hi
Falls keine relevanten Makros vorhanden sind, könntest du die Datei bitte mal als "xlsx" abspeichern. Ich bin neugierig, aber IT-Security macht mir bei Makro-Dateien einen Strich durch die Rechnung.
cu
Chris
AW: PowerBi - Excel Datenbasis
16.01.2023 16:31:45
ChrisL
Hi
Für die Auswertung übernimmt man i.d.R. das Kriterium (wie für die bedingte Formatierung verwendet) und greift nicht direkt auf die Farbe zu. Es existiert ja eine Bedingung.
Nun hast du das Problem, dass du für unterschiedliche Zeilen, unterschiedliche Bedingungen verwendest. Grundsätzlich schon einmal ungewöhnlich, weil ein Datenfeld (Spalte) im Rahmen von Auswertungen eigentlich den gleichen Informationsgehalt haben sollte.
Wenn du dies so stehen lassen willst, dann würde ich wenigstens die Kriterien in der Tabelle ablegen und nicht wie aktuell fix in der bedingten Formatierung "einprogrammieren". So bleibst du flexibel z.B. beim Sortieren/Filtern.
Darum habe ich die Kriterien in Zahlenwerte umgewandelt:
C2 = 0
D2 = 3
E2 = 4,0001
C5 = 0%
D5 = 40%
D6 = 80,0001%
So hast du eine Datenbasis um die "Farbe" (1 = grün, 2 = gelb, 3 = rot) mittels Formel zu ermitteln:

=VERGLEICH(F2;$C2:$E2;1)
Nun kommt als weitere Hürde hinzu, dass für die ersten 3 Zeilen der kleinste Wert = grün, für die weiteren Zeile der kleinste Wert = rot entspricht. Mittels Erweiterung der Formel kannst dies abfangen bzw. die Logik umdrehen.

=WENN($E2
Damit hättest du mal eine "berechnete" Datenbasis. Die Formel kann bei Bedarf für die bedingte Formatierung verwendet werden. Entscheidend ist, dass alle Daten über die Tabelle ermittelt werden und nicht auf die zeilenweise manuell erstellte bedingte Formatierung zurückgegriffen werden muss.
Weiter:
- Datenbasis markieren
- Menü Daten, Aus Tabelle/Bereich
- PQ Editor öffnet
- Menü Ansicht, Erweiterter Editor
- Folgender Code einfügen:

let
Quelle = Excel.CurrentWorkbook(){[Name="Tabelle1"]}[Content],
#"Entpivotierte Spalten" = Table.UnpivotOtherColumns(Quelle, {"Kunde", "Bewertungskriterium", "Kriterium rot", "Kriterium gelb", "Kriterium grün"}, "Monat", "Wert"),
#"Hinzugefügte benutzerdefinierte Spalte" = Table.AddColumn(#"Entpivotierte Spalten", "Farbe", each
if [Wert]>[Kriterium rot] and [Wert]=[Kriterium gelb] and [Wert]
In den Optionen von "Speichern & Laden" kannst du die Daten direkt an eine Pivot-Chart übergeben. Wenn du möchtest, kannst du auch noch die Option "Datenmodell" aktivieren (für Power-Pivot).
Nun hast du die Datengrundlage für Pivot
Spalten: Farbe
Zeilen: Monat
Werte: Anzahl von Farbe
Zusätzliche Hinweise:
- Als Diagrammtyp "Gestapelte Säulen (100 %)" verwenden
Ergibt m.E. eine besser lesbare Darstellung und zudem kannst du dir die Prozentrechnung sparen.
- Du schreibst im Text zwar "Jahr" aber in der Datei ist kein Jahr vorhanden. Habe ich ignoriert.
- Die Sortierung könnte man ggf. noch lösen, sollte alles andere soweit passen.
cu
Chris
Anzeige
AW: PowerBi - Excel Datenbasis
17.01.2023 12:38:47
Sebastian
Wow, vielen Dank Chris...wegen Leuten wie dir ist das hier eines der tollsten Foren, die ich kenne!!
Das Jahr hatte ich tatsächlich nicht in der Beispieldatei eingefügt. Hierbei würde ich das gerne entweder aus dem Dateinamen oder aus einer einzelnen Zelle nehmen.
Zusätzlich sind in der Excel Datenbasis mehrere Arbeitsblätter mit der gleichen Struktur. Könnte man in deinem Code für den PQ Editor noch den Namen des Arbeitsblattes mit einfließen lassen? Für jedes Jahr würde es dann wieder eine eigene Datei geben mit jeweils gleicher Struktur.
In meiner Vorstellung müsste ich dann nur noch in Power Bi die entsprechenden Excel Dateien angeben, den Code im PQ Editor einfügen und so eine "gemeinsame" Datenbasis für die Auswertungen erweitere.
Bezüglich der bedingten Formatierung habe ich leider auch nicht ganz verstanden, wie ich das auf die komplette Tabelle anwende und dabei die verschiedenen Kriterien berücksichtigt werden.
Ich habe deine Formel angepasst, um ein wahr oder falsch Ergebnis für die unterschiedlichen Farbwerte zu erhalten.
Bsp für rot

=WENN(WENN($E1
Dies funktioniert für den 1. Kunden mit Kriterien auch einwandfrei, für den 2. wird es allerdings falsch dargestellt.
Ich habe die bedingte Formatierung in dieser Exceldatei auf dem Arbeitsblatt „Datenbasis2“ eingefügt.
https://www.herber.de/bbs/user/157311.xlsx
Beste Grüße
Sebastian
Anzeige
AW: PowerBi - Excel Datenbasis
17.01.2023 13:09:23
ChrisL
Hi
Ich habe jetzt nicht nachgeforscht, wo in deiner Formel genau der Fehler entsteht. Ein zusätzliches WENN braucht es nicht.
Datenbasis1, Bereich F2:Q7 markieren.
Bedingte Formatierung

=WENN($E2
Auf eine dritte Bedingung kannst du verzichten und den Bereich einfach ganz grün einfärben (Zellfarbe).
cu
Chris
AW: PowerBi - Excel Datenbasis
17.01.2023 14:18:08
Sebastian
Hi Chris,
mit deiner Formel wird es leider ebenfalls nur für einen Kunden richtig herum angezeigt. Wenn es für den einen passt ist es für den anderen das genaue Gegenteil.
Userbild
Anzeige
AW: PowerBi - Excel Datenbasis
17.01.2023 14:26:35
ChrisL
Hi Sebastian
Ich habe es noch einmal mit deinem Sollzustand gemäss Datei vom 16.1. verglichen. Das Bild stimmt überein, nur dass rot/grün vertauscht wurde.
Gemäss deiner Vorgabe von gestern war es so, dass bei Punkten ggü. Prozenten die umgekehrte Logik zur Anwendung kommt. Kleinste Punkte = grün, kleinste Prozente = rot.
Ansonsten müsstest du den Sollzustand nochmals neu definieren.
cu
Chris
AW: PowerBi - Excel Datenbasis
18.01.2023 11:42:42
Sebastian
Hi Chris,
sorry für die Verwirrung. Leider kommt es in den realen Dateien tatsächlich zu beiden Möglichkeiten. Manche Kunden bewerten nach Schulnoten, andere in Prozent oder z.B. Punkesystem von 1 - 5.
Beste Grüße
Sebastian
Anzeige
AW: PowerBi - Excel Datenbasis
18.01.2023 12:14:23
ChrisL
Hi
Dann sollte es passen. Es kommt das Resultat gemäss deine Vorgabe raus. Sobald in Spalte E ein Prozentwert (kleiner 1) steht, dann wird die Logik umgedreht.
cu
Chris
AW: PowerBi - Excel Datenbasis
18.01.2023 14:29:03
Sebastian
Evtl. hab ich einen Hänger aber es kommt aktuell immer noch zu einem Problem.
Anbei nochmal die Datei mit bereits eingefügter bedingert Formatierung wie von dir vorgeschlagen.
https://www.herber.de/bbs/user/157348.xlsx
Hierbei kommt es bei Kunde 2 und Kunde 3 zu einem Problem. Denn Kunde 2 bewertet nach Schulnoten (6 schlecht - 1 sehr gut) und Kunde 3 nach Punkten 1 - 5 (1 schlecht - 5 sehr gut).
Anzeige
AW: PowerBi - Excel Datenbasis
18.01.2023 14:51:43
ChrisL
Hi
Die Tabelle für den Vergleich muss aufsteigend sortiert sein:
0% - 31% - 80% (wobei du Werte von 60%-79% gemäss Vorgabe nicht definierst)
0 - 3 - 5
0 - 3 - 4
Bis anhin waren Prozente in umgekehrter Logik ggü. Punkten. Es bestand also ein eindeutiges Kriterium für die Unterscheidung.
Neu bewertest du mache Punkte aufsteigend, andere absteigend. Das Kriterium ($E2 kleiner 1) zur Erkennung der Logik funktioniert darum nicht mehr.
Ich habe Spalte C neu eingefügt und für Kunde2 ein "x" gesetzt, was der entgegengesetzten Logik von den anderen beiden Kunden entspricht.
Die Formel für rot lautet dann:

=WENN($C2"x";WAHL(VERGLEICH(G2;$D2:$F2;1);3;2;1);VERGLEICH(G2;$D2:$F2;1))=3
Bei der Gelegenheit ist mir noch aufgefallen, dass sich die Formel für gelb kürzen lässt. Die Logik spielt für gelb keine Rolle:

=VERGLEICH(G2;$D2:$F2;1)=2
cu
Chris
Anzeige
AW: PowerBi - Excel Datenbasis
19.01.2023 11:36:22
Sebastian
Super, damit funktioniert die Formatierung auch wie gewünscht. Vielen Vielen Dank.
Könntest du mir für PQ den Befehl im erweiterten Editor auch so anpassen, dass die Datenpunkte nun wie bei der bedingten Formatierung benannt werden (inkl. Berücksichtigung der neuen Spalte C "entgegengesetzte Logik bei X")?
Zusätzlich würde ich gerne für den PQ noch pro Datenpunkt das Jahr und den Names des Arbeitsblattes (hier wird im original file nach Regionen unterteilt) mit aufnehmen.
Sorry für die vielen Fragen und nochmals vielen vielen Dankf ür deine tolle Hilfe!
AW: PowerBi - Excel Datenbasis
19.01.2023 12:46:31
ChrisL
Hi
Schön, dass die bedingte Formatierung funktioniert.
Kannst du bitte noch einmal eine Beispieldatei machen. Im Grundsatz ist mir schon klar wie du meinst, aber im Detail ergibt es dann doch wieder Fragen z.B. ob es pro Blatt mehrere Jahre geben kann und wie du dies dann darstellst. Dem Jahr kann man einen Namen geben, welcher für die Auswertung übernommen wird. Aber wenn es mehrere Jahre gibt, dann fehlt der Bezug zwischen der Datentabelle und dem Namen, es muss eine Zuordnung erfolgen. Wahrscheinlich machst du aus dem Jahr am besten eine zusätzliche Spalte in der Datentabelle.
PQ kann zwar mehrere Tabellen einsammeln, aber die Bezeichnung erfolgt nicht über das Tabellenblatt, sondern über den Tabellennamen. Die Region solltest du also im Namen definieren.
cu
Chris
Anzeige
AW: PowerBi - Excel Datenbasis
20.01.2023 08:21:04
Sebastian
Hi Chris,
die Dateien sind nach Jahren benannt und innerhalb einer Datenbasisdatei wird immer das gleiche Jahr benötigt.
Bsp.
Datenbasis Dateien = Datenbasis_2022.xlsx / Datenbasis_2023.xlsx
Arbeitsblätter innerhalb der Dateien = EMEA / China / AMER
Die Struktur ist hierbei jeweils identisch und ich möchte diese Dateien in PowerBi einpflegen um damit ein filterbares Dashboard zu erstellen.
Hier die Beispieldatei (Datenbasis_2022.xlsx) mit benannten Tabellennamen + Jahr in Spalten
https://www.herber.de/bbs/user/157396.xlsx
Beste Grüße
Sebastian
Anzeige
AW: PowerBi - Excel Datenbasis
20.01.2023 10:06:06
ChrisL
Hi Sebastian
Die Kriterien für die umgekehrte Logik müssen ebenfalls aufsteigend sortiert sein. Zeile 3 (Kunde2)
0 - 3 - 5
Deshalb brauchen wir das "x" zur Unterscheidung, weil es gleich aussieht, wie Zeile 4.
Neue leere Abfrage und den nachfolgenden Code verwenden.
Das Ergebnis wird als "Abfrage1" abgespeichert. Solltest du den Namen vom Resultat ändern, müsstest du im Code die Filter-Zeile anpassen.
Zusätzlich habe ich noch die Sortierung gelöst (Nummer in die Text-Bezeichnung integriert).

let
Quelle = Excel.CurrentWorkbook(),
Monate = Table.FromRecords({[i=1,m="Jan"],[i=2,m="Feb"],[i=3,m="Mrz"],[i=4,m="Apr"],[i=5,m="Mai"],[i=6,m="Jun"],[i=7,m="Jul"],[i=8,m="Aug"],[i=9,m="Sep"],[i=10,m="Okt"],[i=11,m="Nov"],[i=12,m="Dez"]}),
Farben = Table.FromRecords({[j=1,f="grün"],[j=2,f="gelb"],[j=3,f="rot"]}),
#"Gefilterte Zeilen" = Table.SelectRows(Quelle, each ([Name]  "Abfrage1")),
#"Erweiterte Content" = Table.ExpandTableColumn(#"Gefilterte Zeilen", "Content", {"Jahr", "Kunde", "Bewertungskriterium", "Kriterium gedreht", "Kriterium rot", "Kriterium gelb", "Kriterium grün", "Jan", "Feb", "Mrz", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"}, {"Jahr", "Kunde", "Bewertungskriterium", "Kriterium gedreht", "Kriterium rot", "Kriterium gelb", "Kriterium grün", "Jan", "Feb", "Mrz", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"}),
#"Entpivotierte Spalten" = Table.Unpivot(#"Erweiterte Content", Monate[m], "Monate", "Wert"),
#"Hinzugefügte benutzerdefinierte Spalte" = Table.AddColumn(#"Entpivotierte Spalten", "Farbe-Index", each
if [Wert]>=[Kriterium gelb] and [Wert]
cu
Chris
Anzeige

70 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige