<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Hügemann Informatik</title>
	<atom:link href="https://www.huegemann-informatik.de/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.huegemann-informatik.de/</link>
	<description></description>
	<lastBuildDate>Thu, 23 Jul 2026 13:43:58 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://www.huegemann-informatik.de/wp-content/uploads/2025/02/cropped-hi-favicon-32x32.png</url>
	<title>Hügemann Informatik</title>
	<link>https://www.huegemann-informatik.de/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Power Query: Leichter filtern mit List.Contains statt vieler Einzelbedingungen</title>
		<link>https://www.huegemann-informatik.de/power-query-leichter-filtern-mit-list-contains-statt-vieler-einzelbedingungen/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Thu, 23 Jul 2026 13:36:03 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Power BI]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[List-Funktionen]]></category>
		<category><![CDATA[List.Contains]]></category>
		<category><![CDATA[M-Code verbessern]]></category>
		<category><![CDATA[mehrere Filterkriterien]]></category>
		<category><![CDATA[Zeilen performant filtern]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/?p=5262</guid>

					<description><![CDATA[<p>Wer in Power Query Daten nach Kostenstellen, Artikel-, Kunden- oder Lieferantennummern filtert, kann das mühelos erledigen. Um beispielsweise die Daten in der unten gezeigten grauen Tabelle nach Kostenstellen zu filtern, die mit &#8220;A&#8220; oder &#8220;B&#8220; beginnen, formuliere ich zwei einzelne Filterkriterien. &#160; Problematisch wird es jedoch, wenn es um deutlich mehr Filterkriterien geht: beispielsweise, wenn [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-leichter-filtern-mit-list-contains-statt-vieler-einzelbedingungen/">Power Query: Leichter filtern mit List.Contains statt vieler Einzelbedingungen</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Wer in Power Query Daten nach Kostenstellen, Artikel-, Kunden- oder Lieferantennummern filtert, kann das mühelos erledigen. Um beispielsweise die Daten in der unten gezeigten grauen Tabelle nach Kostenstellen zu filtern, die mit &#8220;A&#8220; oder &#8220;B&#8220; beginnen, formuliere ich zwei einzelne Filterkriterien.</p>
<div id="attachment_5259" style="width: 818px" class="wp-caption alignnone"><img fetchpriority="high" decoding="async" aria-describedby="caption-attachment-5259" class="size-full wp-image-5259" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/1_Kostenstellen_nach_Buchstaben_Ziffern.png" alt="Wie lassen sich die Daten links nach Kostenstellen mit Buchstaben oder mit Zahlen am Anfang filtern?" width="808" height="363" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/1_Kostenstellen_nach_Buchstaben_Ziffern.png 808w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/1_Kostenstellen_nach_Buchstaben_Ziffern-300x135.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/1_Kostenstellen_nach_Buchstaben_Ziffern-768x345.png 768w" sizes="(max-width: 808px) 100vw, 808px" /><p id="caption-attachment-5259" class="wp-caption-text">Wie lassen sich die Daten links nach Kostenstellen mit Buchstaben oder mit Zahlen am Anfang filtern?</p></div>
<p>&nbsp;</p>
<p>Problematisch wird es jedoch, wenn es um deutlich mehr Filterkriterien geht: beispielsweise, wenn nach beliebigen Buchstaben oder Ziffern am Anfang gefiltert werden soll. Ich zeige, wie ich den Aufwand bei gleichartigen Mehrfachfiltern mit <strong>List.Contains</strong> vereinfache und minimiere.</p>
<h3>Was passiert, wenn mehrere gleichartige&nbsp;Filterkriterien gebraucht werden?</h3>
<p>Die folgende Abbildung zeigt, dass es bei einer Vielzahl von Filterkriterien schnell unübersichtlich und aufwändig werden kann. Es funktioniert zwar, hat aber einige Nachteile:</p>
<ul>
<li>Das Definieren und Ändern der Filterkriterien sind aufwändig,</li>
<li>der M-Code wird unnötig lang,</li>
<li>die Lesbarkeit leidet.</li>
<li>Zudem muss Power Query für jede Zeile mehrere Bedingungen nacheinander auswerten.</li>
</ul>
<div id="attachment_5260" style="width: 921px" class="wp-caption alignnone"><img decoding="async" aria-describedby="caption-attachment-5260" class="size-full wp-image-5260" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/2_Standardfilterung.png" alt="Über den Spaltenkopf ließen sich mit Hilfe vieler Oder-Bedingungen die Kostenstellen herausfiltern, die mit einem Buchstaben beginnen, doch der Aufwand wäre hoch" width="911" height="423" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/2_Standardfilterung.png 911w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/2_Standardfilterung-300x139.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/2_Standardfilterung-768x357.png 768w" sizes="(max-width: 911px) 100vw, 911px" /><p id="caption-attachment-5260" class="wp-caption-text">Über den Spaltenkopf ließen sich mit Hilfe vieler Oder-Bedingungen die Kostenstellen herausfiltern, die mit einem Buchstaben beginnen, doch der Aufwand wäre hoch</p></div>
<p>&nbsp;</p>
<p>Die folgende Abbildung zeigt, dass bei diesem Standard-Vorgehen der M-Code unnötig lang und unübersichtlich wird.</p>
<div id="attachment_5261" style="width: 356px" class="wp-caption alignnone"><img decoding="async" aria-describedby="caption-attachment-5261" class="size-full wp-image-5261" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/3_Standardfilterung_Code.png" alt="Viele Oder-Bedingung beim Filtern erzeugen einen langen, unübersichtlichen M-Code" width="346" height="124" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/3_Standardfilterung_Code.png 346w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/3_Standardfilterung_Code-300x108.png 300w" sizes="(max-width: 346px) 100vw, 346px" /><p id="caption-attachment-5261" class="wp-caption-text">Viele Oder-Bedingung beim Filtern erzeugen einen langen, unübersichtlichen M-Code</p></div>
<h3>Die schlaue Alternative mit List.Contains</h3>
<ul>
<li>Eleganter ist es, die zulässigen Anfangszeichen in einer Liste zu definieren.</li>
<li>Anschließend prüfe ich mit <strong>List.Contains</strong>, ob das erste Zeichen der Kostenstelle in dieser Liste enthalten ist.</li>
<li>Der Code wird dadurch kompakter, leichter verständlich und flexibler.</li>
</ul>
<h3>Fall 1: Alle Kostenstellen beginnend mit einem Buchstaben filtern</h3>
<p>Um alle Kostenstellen nach einem beliebigen Anfangsbuchstaben mit einer einzigen Listenabfrage zu filtern, gehe ich wie folgt vor:</p>
<ul>
<li>Ich lade die Kosten-Tabelle über <strong>Daten</strong> &gt; <strong>Daten abrufen</strong> &gt; <strong>Aus Tabelle/Bereich</strong> in den Power Query-Editor.</li>
<li>Anschließend bestimme ich die Datentypen der Spalten, insbesondere wähle ich den Datentyp <strong>Text</strong> für die Spalte KST.</li>
<li>Um einen Musterschritt zur Filterung zu erzeugen, filtere ich über die Häkchenfelder nach einer bestimmten Kostenstelle.</li>
<li>Die Anweisung, die dem Wörtchen <strong>each</strong> folgt, tausche ich aus durch<strong>List.Contains({&#8220;A&#8220;..&#8220;Z&#8220;},Text.Start([KST], 1))</strong>.</li>
</ul>
<div id="attachment_5255" style="width: 776px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5255" class="size-full wp-image-5255" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/4_Filterung_ListContains.png" alt="Der Trick: Die Filteranweisung nach einer bestimmten Kostenstelle durch die List.Contains-Anweisung austauschen" width="766" height="81" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/4_Filterung_ListContains.png 766w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/4_Filterung_ListContains-300x32.png 300w" sizes="auto, (max-width: 766px) 100vw, 766px" /><p id="caption-attachment-5255" class="wp-caption-text">Der Trick: Die Filteranweisung nach einer bestimmten Kostenstelle durch die <strong>List.Contains</strong>-Anweisung austauschen</p></div>
<p>&nbsp;</p>
<p>Zur Erläuterung:</p>
<ul>
<li>Die Funktion <strong>List.Contains</strong> prüft, ob die im ersten Argument angegebene Liste den im zweiten Argument angegeben Wert enthält.</li>
<li>Für das erste Argument wird mit der Anweisung <strong>{</strong>&#8220;A&#8220;<strong>..</strong>&#8220;Z&#8220;<strong>}</strong> eine Liste aller Großbuchstaben erzeugt.</li>
<li>Für das zweite Argument wird mit der Funktion <strong>Text.Start</strong> und der Zahl 1 als zweiten Parameter der erste Buchstabe der Kostenstelle ermittelt.</li>
</ul>
<div id="attachment_5256" style="width: 526px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5256" class="size-full wp-image-5256" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/5_Funktion_ListContains.png" alt="Die Funktion List.Contains prüft, ob der angegebene Wert in einer Liste von Werten vorliegt" width="516" height="140" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/5_Funktion_ListContains.png 516w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/5_Funktion_ListContains-300x81.png 300w" sizes="auto, (max-width: 516px) 100vw, 516px" /><p id="caption-attachment-5256" class="wp-caption-text">Die Funktion <strong>List.Contains</strong> prüft, ob der angegebene Wert in einer Liste von Werten vorliegt</p></div>
<h3>Fall 2: Achtung Falle, Power Query ist »Case sensitive«</h3>
<p>Problematisch wird es, wenn eine Kostenstelle mit klein geschriebenem Anfangsbuchstaben vorliegt. Hier beispielsweise die Kostenstelle x9999. Sie wird bei der obigen Filterung <strong>nicht</strong> berücksichtigt.</p>
<p>Um nun nicht eine weitere Liste für &#8220;a&#8220;..&#8220;z&#8220; angeben zu müssen, umgehe ich das Problem mit Hilfe eines dritten, optionalen Parameters in der Funktion <strong>List.Contains</strong>.</p>
<p>So geht’s:<br />
Ich erweitere die <strong>List.Contains</strong>-Anweisung durch Eingabe eines Kommas und anschließender Auswahl des Vergleichswertes <strong>Comparer.OrdinalIgnoreCase</strong> als drittes Argument.</p>
<div id="attachment_5257" style="width: 1021px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5257" class="size-full wp-image-5257" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/6_Filterung_ListContains_IgnoreCase.png" alt="Durch Angabe des dritten Arguments als Comparer.OrdinalIgnoreCase wird die Groß-/Kleinschreibung ignoriert" width="1011" height="164" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/6_Filterung_ListContains_IgnoreCase.png 1011w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/6_Filterung_ListContains_IgnoreCase-300x49.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/6_Filterung_ListContains_IgnoreCase-768x125.png 768w" sizes="auto, (max-width: 1011px) 100vw, 1011px" /><p id="caption-attachment-5257" class="wp-caption-text">Durch Angabe des dritten Arguments als <strong>Comparer.OrdinalIgnoreCase</strong> wird die Groß-/Kleinschreibung ignoriert</p></div>
<h3>Fall 3: Alle Kostenstellen beginnend mit einer Ziffer filtern</h3>
<p>Um alle Kostenstellen beginnend mit einer Ziffer zu filtern, gehe ich wie oben beschrieben vor. Allerdings ersetze ich die im ersten Argument angegebene Liste {&#8220;A&#8220;..&#8220;Z&#8220;} durch {&#8220;0&#8220;..&#8220;9&#8220;}.</p>
<div id="attachment_5258" style="width: 774px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5258" class="size-full wp-image-5258" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/7_Filterung_ListContains_ZIffern.png" alt="Statt einer Liste von Großbuchstaben eine Liste von Ziffern vorgeben" width="764" height="36" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/7_Filterung_ListContains_ZIffern.png 764w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/7_Filterung_ListContains_ZIffern-300x14.png 300w" sizes="auto, (max-width: 764px) 100vw, 764px" /><p id="caption-attachment-5258" class="wp-caption-text">Statt einer Liste von Großbuchstaben eine Liste von Ziffern vorgeben</p></div>
<h3>FAZIT</h3>
<ul>
<li>Für alle, die Power Query regelmäßig einsetzen, ist dies ein Beispiel dafür, wie M-Code nicht nur zum Laufen gebracht, sondern bewusst so gestaltet wird, dass er verständlich und leicht anpassbar ist.</li>
<li>Hinzu kommt, dass sich je nach Datenquelle und Ausführungsplan zusätzlich ein Performancevorteil ergeben kann. Insbesondere bei umfangreicheren Wertelisten oder dynamisch erzeugten Listen ist ein solcher Ansatz dann die performantere Lösung.</li>
</ul>
<h3>Tipp: Power Query systematisch lernen</h3>
<p class="isSelectedEnd">Hat Ihnen dieser Tipp weitergeholfen? Dann vertiefen Sie Ihr Wissen in meinen <strong>offenen Online-Power-Query-Kursen</strong>. Im <strong>Einstiegskurs</strong> lernen Sie, Daten automatisiert zu importieren, zu bereinigen und zu transformieren – die ideale Grundlage für effiziente Datenaufbereitung. Wenn Sie bereits mit Power Query arbeiten, zeigt Ihnen der <strong>Aufbaukurs</strong>, wie Sie robuste, wiederverwendbare Abfragen entwickeln, Aktualisierungsfehler vermeiden und auch komplexe Datenstrukturen souverän beherrschen.</p>
<p class="isSelectedEnd">👉 <strong>Power Query: Einstiegskurs – Daten automatisiert importieren, bereinigen und transformieren am 6.10.2026:</strong><br />
<a href="https://www.huegemann-informatik.de/training/daten-automatisiert-importieren-bereinigen-und-transformieren/">https://www.huegemann-informatik.de/training/daten-automatisiert-importieren-bereinigen-und-transformieren/</a></p>
<p>👉 <strong>Power Query: Für Fortgeschrittene – Mehr Produktivität und hohe Datenqualität mit nachhaltigen Abfrage-Tools am 4.11.2026:</strong><br />
<a href="https://www.huegemann-informatik.de/training/power-query-fuer-fortgeschrittene-mehr-produktivitaet-und-hohe-datenqualitaet-mit-nachhaltigen-abfrage-tools/">https://www.huegemann-informatik.de/training/power-query-fuer-fortgeschrittene-mehr-produktivitaet-und-hohe-datenqualitaet-mit-nachhaltigen-abfrage-tools/</a></p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-leichter-filtern-mit-list-contains-statt-vieler-einzelbedingungen/">Power Query: Leichter filtern mit List.Contains statt vieler Einzelbedingungen</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Excel: Böse Falle bei Kontrollkästchen vermeiden</title>
		<link>https://www.huegemann-informatik.de/excel-boese-falle-bei-kontrollkaestchen-vermeiden/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Fri, 17 Jul 2026 07:00:18 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Fehler beim Filtern]]></category>
		<category><![CDATA[Kontrollkaestchen]]></category>
		<category><![CDATA[Kontrollkästchen Excel 365]]></category>
		<category><![CDATA[Kontrollkästchen filtern]]></category>
		<category><![CDATA[Mehrere Kontrollkästchen aktivieren]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/?p=5249</guid>

					<description><![CDATA[<p>Die neuen Kontrollkästchen in Excel 365 sind perfekt, um Informationen visuell auf den Punkt zu bringen: Erledigtes einfach abhaken oder einen Status gut sichtbar mit einem Häkchen dokumentieren. Doch Achtung, im gefilterten Modus kann es bei den Kontrollkästchen zu unangenehmen Überraschungen kommen. Die Ausgangsdaten, die per Datenschnitt nach Ort gefiltert werden An diesen Standard bei [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/excel-boese-falle-bei-kontrollkaestchen-vermeiden/">Excel: Böse Falle bei Kontrollkästchen vermeiden</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Die neuen Kontrollkästchen in Excel 365 sind perfekt, um Informationen visuell auf den Punkt zu bringen: Erledigtes einfach abhaken oder einen Status gut sichtbar mit einem Häkchen dokumentieren.<br />
Doch Achtung, im gefilterten Modus kann es bei den Kontrollkästchen zu unangenehmen Überraschungen kommen.</p>
<p><a href="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/Kontrollkaestchen_Filter-Problem_01_Einstieg.jpg"><img loading="lazy" decoding="async" class="size-full wp-image-48703" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/Kontrollkaestchen_Filter-Problem_01_Einstieg.jpg" alt="Die Ausgangsdaten, die per Datenschnitt nach Ort gefiltert werden kann" width="453" height="458" /></a> Die Ausgangsdaten, die per Datenschnitt nach Ort gefiltert werden</p>
<p><span id="more-5249"></span></p>
<h3>An diesen Standard bei gefilterten Daten sind wir gewöhnt …</h3>
<p>Wenn eine Liste oder Tabelle gefiltert ist, gehe ich wie folgt vor, um einen bestimmten Inhalt einzugeben. Die folgende Abbildung zeigt dafür ein Beispiel: in den nach Ulm gefilterten Zeilen soll das aktuelle Datum eingetragen werden.</p>
<p><a href="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/Kontrollkaestchen_Filter-Problem_02_Vergleich_nach_Datumseingabe.jpg"><img loading="lazy" decoding="async" class="size-full wp-image-48704" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/Kontrollkaestchen_Filter-Problem_02_Vergleich_nach_Datumseingabe.jpg" alt="Die hinzugefügten Einträge – hier ein Datum – erscheinen nur in den sichtbaren Zellen " width="930" height="462" /></a> Alles perfekt: Die im Filtermodus hinzugefügten Einträge – hier ein Datum – erscheinen nur in den sichtbaren Zellen</p>
<ul>
<li>Ich markiere die betreffenden Zellen im gefilterten Bereich.</li>
<li>Nun trage ich den gewünschten Inhalt ein – hier ein Datum.</li>
<li>Meine Eingabe schließe ich nicht mit<strong> Enter</strong>, sondern mit <strong>Strg + Enter</strong> ab, da nicht nur eine, sondern mehrere Zellen markiert sind.</li>
</ul>
<p>Nach Ausschalten des Filters sieht das Ergebnis so aus: Nur die sichtbaren, gefilterten Zeilen wurden geändert. Die ausgeblendeten Datensätze bleiben unverändert. So weit, so gut.</p>
<h3>… doch bei Kontrollkästchen gibt&#8217;s eine unangenehme Überraschung</h3>
<p>Logisch, dass genau dieses Verhalten nun auch bei Kontrollkästchen erwartet wird. Doch das ist ein Trugschluss.</p>
<ul>
<li>Ich filtere die Daten nach Ulm (siehe Bild unten links) und möchte jetzt in der Spalte &#8222;Inventur&#8220; für alle drei sichtbaren Zeilen die Kontrollkästchen aktivieren.</li>
<li>Ich markiere dazu die drei betroffenen Zellen in der Inventur-Spalte.</li>
<li>Anschließend aktiviere ich die Kontrollkästchen mittels <strong>Leertaste</strong>.</li>
</ul>
<p>Zunächst sieht alles gut aus. Doch wenn ich die Filterung aufhebe, sehe ich das Fiasko:<br />
Nicht nur die drei sichtbaren Zeilen wurden geändert, sondern alle Kontrollkästchen von Zeile 8 bis Zeile 12 wurden aktiviert. Also auch die Kontrollkästchen in den ausgeblendeten Zeilen.<a href="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/Kontrollkaestchen_Filter-Problem_03_Vergleich_nach_Aktivieren_der_KK.jpg"><img loading="lazy" decoding="async" class="size-full wp-image-48705" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/Kontrollkaestchen_Filter-Problem_03_Vergleich_nach_Aktivieren_der_KK.jpg" alt="Achtung Falle: Die Kontrollkästchen werden beim Betätigen der Leertaste nicht nur in den sichtbaren Zellen aktiviert" width="920" height="458" /></a> Achtung, Falle! Die Kontrollkästchen werden beim Betätigen der Leertaste nicht nur in den sichtbaren Zellen aktiviert</p>
<p>Jetzt habe ich ein Problem, denn meine Übersicht ist fehlerhaft. Es wurden drei Kontrollkästchen aktiviert, die eindeutig <strong>nicht</strong> zu Ulm gehören.</p>
<h3>Zwei Wege, wie sich solche Pannen vermeiden lassen</h3>
<p>Erste Schlussfolgerung: Bei einer gefilterten Liste oder Tabelle kann ich die Kontrollkästchen <strong>nicht per Leertaste</strong> für mehrere markierte Zellen aktivieren oder deaktivieren.</p>
<p>Muss ich jetzt also jedes Kontrollkästchen einzeln anklicken? NEIN, denn es gibt zwei Lösungswege:</p>
<p>💡Ich wähle nach dem Markieren der gefilterten Zellen die nur sichtbaren Zellen aus, indem ich die Tastenkombination <strong>Alt + ;</strong> drücke. Erst dann betätige ich die <strong>Leertaste</strong> zum Aktivieren bzw. Deaktivieren der Kontrollkästchen.</p>
<p>💡Oder ich tippe nach dem Markieren der betreffenden Zellen WAHR ein und schließe die Eingabe mit <strong>Strg + Enter</strong> ab. Damit aktiviere ich nur die Kontrollkästchen in den sichtbaren Zellen. Mit FALSCH werden sie deaktiviert.</p>
<h3>Fazit</h3>
<p>Kontrollkästchen sind nützlich, da sie den Status von Daten visuell mittels Kontrollkästchen aufzeigen. Jedoch gibt es beim Einsatz in gefilterten Listen und Tabellen eine Besonderheit:</p>
<ul>
<li>Anders als bei normalen Zellwerten wirken sich Änderungen der Kontrollkästchen per Leertaste <strong>nicht nur auf die sichtbaren, gefilterten Zeilen</strong> aus.</li>
<li>Unangenehme Überraschungen lassen sich mit den beiden oben beschriebenen Lösungswegen vermeiden. Die Variante mit WAHR bzw. FALSCH und dann <strong>Strg + Enter</strong> ist vermutlich leichter zu merken und umzusetzen.</li>
</ul>
<h3>Lust auf mehr Tipps &amp; Tricks zu Office?</h3>
<p>Bei den <a href="https://www.office-kompetenz.de/veranstaltungen/office-kompetenztage-2026/" target="_blank" rel="noopener">Office-Kompetenztagen</a> Ende September gibt es in über 30 Kursen geballtes Wissen zu den Office-Programmen. Wer sich besonders für das Thema Office + KI interessiert, findet im unten abgebildeten Kursplan die betreffenden Kurse farblich hervorgehoben.</p>
<p>Alle Informationen zu dem dreitägigen Trainings-Event gibt es <a href="https://www.office-kompetenz.de/veranstaltungen/office-kompetenztage-2026/" target="_blank" rel="noopener">hier</a>.</p>
<p><a href="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/4_Kursplan-Office-KT.png"><img loading="lazy" decoding="async" class="wp-image-48692 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/4_Kursplan-Office-KT.png" alt="Kursplan der Office-Kompetenztage mit Hervorhebung der KI-Kurse" width="1457" height="749" /></a></p>
<p>&nbsp;</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/excel-boese-falle-bei-kontrollkaestchen-vermeiden/">Excel: Böse Falle bei Kontrollkästchen vermeiden</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Geht auch ohne Power Query: Neue und veränderte Zeilen in zwei Listen finden mit Hilfe einer smarten Formel</title>
		<link>https://www.huegemann-informatik.de/geht-auch-ohne-power-query-neue-und-veraenderte-zeilen-in-zwei-listen-finden-mit-hilfe-einer-smarten-formel/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Thu, 02 Jul 2026 10:10:35 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[Array-Funktionen]]></category>
		<category><![CDATA[EINDEUTIG]]></category>
		<category><![CDATA[Listen abgleichen]]></category>
		<category><![CDATA[Neue Zeilen finden]]></category>
		<category><![CDATA[Veränderte Zeilen finden]]></category>
		<category><![CDATA[VSTAPELN]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/?p=5211</guid>

					<description><![CDATA[<p>Wie mit Power Query neue und veränderte Zeilen zwischen zwei Datenbeständen ermittelt werden, habe ich im diesem Blogbeitrag vom 16.06.2026 gezeigt. Aber es geht auch OHNE Power Query! Und zwar mit einer Formel in Excel, welche die beiden Array-Funktionen EINDEUTIG und VSTAPELN kombiniert. Die Formel mit den Array-Funktionen aufbauen Die Lösung sieht wie folgt aus: [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/geht-auch-ohne-power-query-neue-und-veraenderte-zeilen-in-zwei-listen-finden-mit-hilfe-einer-smarten-formel/">Geht auch ohne Power Query: Neue und veränderte Zeilen in zwei Listen finden mit Hilfe einer smarten Formel</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Wie mit Power Query neue und veränderte Zeilen zwischen zwei Datenbeständen ermittelt werden, habe ich im diesem <a href="https://www.huegemann-informatik.de/power-query-neue-und-veraenderte-zeilen-in-zwei-listen-finden/" target="_blank" rel="noopener">Blogbeitrag vom 16.06.2026</a> gezeigt. Aber es geht auch OHNE Power Query! Und zwar mit einer Formel in Excel, welche die beiden Array-Funktionen EINDEUTIG und VSTAPELN kombiniert.</p>
<div id="attachment_5216" style="width: 835px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5216" class="size-full wp-image-5216" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/01_Buchungszeilen_abgleichen_mit_Array-Funktionen.png" alt="Mit Hilfe von zwei Array-Funktionen lassen sich unstimmige Zeilen einfach ermitteln" width="825" height="657" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/01_Buchungszeilen_abgleichen_mit_Array-Funktionen.png 825w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/01_Buchungszeilen_abgleichen_mit_Array-Funktionen-300x239.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/01_Buchungszeilen_abgleichen_mit_Array-Funktionen-768x612.png 768w" sizes="auto, (max-width: 825px) 100vw, 825px" /><p id="caption-attachment-5216" class="wp-caption-text">Mit Hilfe von zwei Array-Funktionen lassen sich unstimmige Zeilen einfach ermitteln</p></div>
<h3>Die Formel mit den Array-Funktionen aufbauen</h3>
<p>Die Lösung sieht wie folgt aus:<br />
Zuerst liste ich den neuen/veränderten und den alten Datenbestand untereinander auf mit Hilfe der Funktion <strong>VSTAPELN</strong>.<br />
Dann ermittele ich aus diesem Komplettbestand mit <strong>EINDEUTIG</strong> und dem dritten Argument <strong>WAHR</strong> alle Zeilen, die genau einmal vorkommen.</p>
<p>So entwickle ich die Formel …</p>
<ul>
<li>In eine Zelle tippe ich zunächst die Funktion <strong>VSTAPELN</strong> ein und gebe darin die Bereiche der beiden Datenbestände <em>Belegdaten_aktuell</em> und <em>Belegdaten_alt</em> an.</li>
</ul>
<div id="attachment_5220" style="width: 480px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5220" class="size-full wp-image-5220" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/02_VSTAPELN_NEU.png" alt="Die Array-Funktion VSTAPELN ordnet die Zeilen beider Listen untereinander an" width="470" height="103" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/02_VSTAPELN_NEU.png 470w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/02_VSTAPELN_NEU-300x66.png 300w" sizes="auto, (max-width: 470px) 100vw, 470px" /><p id="caption-attachment-5220" class="wp-caption-text">Die Array-Funktion <strong>VSTAPELN</strong> ordnet die Zeilen beider Listen untereinander an</p></div>
<ul>
<li>Um nun nur die Zeilen zu erhalten, die neu oder verändert sind, wende ich die Funktion <strong>EINDEUTIG</strong> auf diese Liste an und nutze im dritten Argument <strong>WAHR</strong>. Damit werden alle Duplikatzeilen entfernt und es bleiben nur noch die erhalten, die <strong>genau einmal</strong> vorkommen.</li>
</ul>
<div id="attachment_5218" style="width: 654px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5218" class="size-full wp-image-5218" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/03_EINDEUTIG_NEU.png" alt="Mit der Funktion EINDEUTIG und dem dritten Argument WAHR bleiben nur die Zeilen erhalten, die in beiden Listen zusammen nur genau einmal vorkommen" width="644" height="102" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/03_EINDEUTIG_NEU.png 644w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/03_EINDEUTIG_NEU-300x48.png 300w" sizes="auto, (max-width: 644px) 100vw, 644px" /><p id="caption-attachment-5218" class="wp-caption-text">Mit der Funktion <strong>EINDEUTIG</strong> und dem dritten Argument <strong>WAHR</strong> bleiben nur die Zeilen erhalten, die in beiden Listen zusammen nur genau einmal vorkommen</p></div>
<h3>Nacharbeit nötig: Die Formellösung formatieren</h3>
<p>Diese Formel auf Basis von zwei Array-Funktionen muss nie mehr angepasst werden, da sie dynamisch auf neue Daten reagiert.<br />
Allerdings hat diese Lösung zu den Power Query-Lösungen den Nachteil, dass nicht automatisch eine intelligente Tabelle für die Ausgabedaten erstellt wird. Somit muss die Eingabe der Überschrift als auch die Formatierung der Spalten von Hand vorgenommen werden.</p>
<div id="attachment_5215" style="width: 648px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5215" class="size-full wp-image-5215" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/04_Formatierung_noetig.png" alt="Die Formellösung muss manuell nachgearbeitet werden bei den Überschriften und Formaten" width="638" height="312" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/07/04_Formatierung_noetig.png 638w, https://www.huegemann-informatik.de/wp-content/uploads/2026/07/04_Formatierung_noetig-300x147.png 300w" sizes="auto, (max-width: 638px) 100vw, 638px" /><p id="caption-attachment-5215" class="wp-caption-text">Die Formellösung muss manuell nachgearbeitet werden bei den Überschriften und Formaten</p></div>
<h3>Wo liegen die Unterschiede zu den Power Query-Lösungen?</h3>
<ol>
<li>Bei neu hinzugefügten Zeilen gibt es in der Ausgabe aller drei Lösungen keinen Unterschied. Bei veränderten Zeilen werden in der Formellösung sowohl die aktuelle als auch die bisherige Zeile angezeigt. Die Power Query-Lösungen hingegen zeigen nur die aktuelle Zeile an.</li>
<li>Die Power Query- Lösungen benötigen eine Aktualisierung, die Formellösung nicht.</li>
<li>Die Power Query- Lösungen liefern gleich eine sauber formatierte intelligente Tabelle. Bei der Formellösung müssen Spaltenüberschriften und Formatierung selbst erledigt werden.</li>
</ol>
<p>FAZIT: Gerade die Kombination aus modernen Excel-Formeln und Power Query zeigt, wie stark sich Excel in den letzten Jahren weiterentwickelt hat. Viele Aufgaben, die früher nur mit komplizierten Hilfsspalten oder VBA lösbar waren, lassen sich heute deutlich eleganter umsetzen. Wer sein Wissen dazu auf den aktuellen Stand bringen will, ist bei den <a href="https://www.office-kompetenz.de/veranstaltungen/office-kompetenztage-2026/" target="_blank" rel="noopener">Office-Kompetenztagen</a> vom 28. bis 30. September in der Kursreihe für Excel genau richtig.</p>
<p>&nbsp;</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/geht-auch-ohne-power-query-neue-und-veraenderte-zeilen-in-zwei-listen-finden-mit-hilfe-einer-smarten-formel/">Geht auch ohne Power Query: Neue und veränderte Zeilen in zwei Listen finden mit Hilfe einer smarten Formel</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Power Query: Neue oder veränderte Datensätze zwischen zwei Listen identifizieren</title>
		<link>https://www.huegemann-informatik.de/power-query-neue-und-veraenderte-zeilen-in-zwei-listen-finden/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Tue, 16 Jun 2026 08:53:47 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Power BI]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[Linker Anti Join]]></category>
		<category><![CDATA[Listen abgleichen]]></category>
		<category><![CDATA[Neue Zeilen finden]]></category>
		<category><![CDATA[Power Query Rezept]]></category>
		<category><![CDATA[Table.RemoveMatchingRows]]></category>
		<category><![CDATA[Veränderte Zeilen finden]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/?p=5190</guid>

					<description><![CDATA[<p>Neue Kunden, neue Produkte oder neue Buchungen – doch welche Datensätze sind seit dem letzten Import tatsächlich hinzugekommen? Wer regelmäßig Listen vergleichen muss, kennt dieses Problem nur zu gut. Bisher waren dafür oft SVERWEIS-Konstruktionen oder zusätzliche Hilfsspalten notwendig. Mit Power Query geht es jedoch wesentlich einfacher: Neue und veränderte Einträge lassen sich per Abfrage automatisch [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-neue-und-veraenderte-zeilen-in-zwei-listen-finden/">Power Query: Neue oder veränderte Datensätze zwischen zwei Listen identifizieren</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Neue Kunden, neue Produkte oder neue Buchungen – doch welche Datensätze sind seit dem letzten Import tatsächlich hinzugekommen? Wer regelmäßig Listen vergleichen muss, kennt dieses Problem nur zu gut.<br />
Bisher waren dafür oft SVERWEIS-Konstruktionen oder zusätzliche Hilfsspalten notwendig. Mit Power Query geht es jedoch wesentlich einfacher: Neue und veränderte Einträge lassen sich per Abfrage automatisch ermitteln – schnell, zuverlässig und ohne eine einzige Formel.</p>
<div id="attachment_5195" style="width: 839px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5195" class="size-full wp-image-5195" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/06/01_Buchungszeilen_abgleichen.png" alt="Per Abfrage neue und veränderte Buchungszeilen stets im Blick haben" width="829" height="597" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/06/01_Buchungszeilen_abgleichen.png 829w, https://www.huegemann-informatik.de/wp-content/uploads/2026/06/01_Buchungszeilen_abgleichen-300x216.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/06/01_Buchungszeilen_abgleichen-768x553.png 768w" sizes="auto, (max-width: 829px) 100vw, 829px" /><p id="caption-attachment-5195" class="wp-caption-text">Per Abfrage neue und veränderte Buchungszeilen stets im Blick haben</p></div>
<p>&nbsp;</p>
<p>In diesem Beitrag zeige ich dazu zwei Lösungswege, um neue bzw. veränderte Einträge automatisch per Abfrage zu ermitteln:</p>
<p><strong>Weg 1: Power Query mit einem Anti-Join</strong></p>
<p>Das ist der klassische und robuste Weg in Power Query. Dabei werden zwei Tabellen miteinander verglichen und gezielt nur die Datensätze ausgegeben, die ausschließlich in der neuen Liste vorkommen.</p>
<p><strong>Weg 2: Power Query mit der Funktion Table.RemoveMatchingRows</strong></p>
<p>Eine kompakte Alternative mit Hilfe von M-Code. Besonders interessant für Anwender, die gerne direkt im Power-Query-Code arbeiten und schlanke Abfragen bevorzugen.</p>
<h3>Daten nach Power Query laden und Abfragen erstellen</h3>
<p>Im Beispiel sollen in den zwei Beleglisten <em>Belegdaten_alt </em>und <em>Belegdaten_aktuell</em>&nbsp; komplette Zeilen abglichen werden. So gehe ich vor:</p>
<ul>
<li>Ich aktiviere eine Zelle in der Tabelle <em>Belegdaten_alt</em> und lade diese mit der Befehlsfolge <strong>Daten</strong> &gt; <strong>Daten abrufen</strong> &gt; <strong>Aus Tabelle/Bereich</strong> nach Power Query.</li>
<li>Ebenso verfahre ich mit der Tabelle <em>Belegdaten_aktuell</em>.</li>
<li>In beiden Abfragen bestimme ich für alle Spalten den passenden Datentyp.</li>
</ul>
<h3>Weg 1: Neue oder veränderte Zeilen finden mittels linkem Anti-Join</h3>
<ul>
<li>Ich markiere zunächst die Abfrage <em>Belegdaten_aktuell</em>.</li>
<li>Über <strong>Start</strong> &gt; <strong>Abfragen zusammenführen</strong> &gt; <strong>Als neue Abfrage zusammenführen</strong> wähle ich im folgenden Dialog als zweite Abfrage <em>Belegdaten_alt</em> aus [1].</li>
<li>Für den Abgleich über die komplette Zeile markiere ich in beiden Abfragen mit Hilfe der <strong>Strg</strong>&#8211; oder <strong>Umschalt</strong>-Taste alle Spalten in der gleichen Reihenfolge [2].</li>
<li>Unter <strong>Join-Art</strong> wähle ich <strong>Linker Anti-Join</strong> [3].</li>
</ul>
<div id="attachment_5204" style="width: 861px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5204" class="size-full wp-image-5204" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/06/02_Linker_Anti-Join_NEU.png" alt="Mit einem linken Anti-Join komplette Zeilen beider Beleglisten abgleichen" width="851" height="785" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/06/02_Linker_Anti-Join_NEU.png 851w, https://www.huegemann-informatik.de/wp-content/uploads/2026/06/02_Linker_Anti-Join_NEU-300x277.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/06/02_Linker_Anti-Join_NEU-768x708.png 768w" sizes="auto, (max-width: 851px) 100vw, 851px" /><p id="caption-attachment-5204" class="wp-caption-text">Mit einem linken Anti-Join komplette Zeilen beider Beleglisten abgleichen</p></div>
<p>&nbsp;</p>
<p>Im Ergebnis sehe ich alle neuen bzw. veränderten Zeilen. Da keine Daten aus der Abfrage <em>Belegdaten_alt</em> benötigt werden, lösche ich die Spalte <em>Belegdaten_alt</em> per Rechtsklick im Spaltenkopf mit dem Befehl <strong>Entfernen</strong>.</p>
<div id="attachment_5193" style="width: 1292px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5193" class="size-full wp-image-5193" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/06/03_Belegdaten_alt_loeschen.png" alt="Da die Spalte Belegdaten_alt nicht gebraucht wird, kann sie entfernt werden" width="1282" height="333" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/06/03_Belegdaten_alt_loeschen.png 1282w, https://www.huegemann-informatik.de/wp-content/uploads/2026/06/03_Belegdaten_alt_loeschen-300x78.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/06/03_Belegdaten_alt_loeschen-1024x266.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2026/06/03_Belegdaten_alt_loeschen-768x199.png 768w" sizes="auto, (max-width: 1282px) 100vw, 1282px" /><p id="caption-attachment-5193" class="wp-caption-text">Da die Spalte Belegdaten_alt nicht gebraucht wird, kann sie entfernt werden</p></div>
<h3>Weg 2: Neue und veränderte Zeilen finden mit Table.RemoveMatchingRows</h3>
<ul>
<li>Ich erzeuge eine neue leere Abfrage über <strong>Start</strong> &gt; <strong>Neue Quelle</strong> &gt; <strong>Andere Quellen</strong> &gt; <strong>Leere Abfrage</strong>.</li>
<li>In der Bearbeitungsleiste gebe ich folgenden Befehl ein:<br />
<strong>= Table.RemoveMatchingRows(Belegdaten_aktuell, Table.ToRecords(Belegdaten_alt))</strong></li>
</ul>
<div id="attachment_5194" style="width: 1034px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5194" class="size-full wp-image-5194" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/06/04_TableRemoveMatchingColumns.png" alt="Eine einzige M-Code-Zeile reicht aus, um zwei Listen abzugleichen" width="1024" height="144" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/06/04_TableRemoveMatchingColumns.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2026/06/04_TableRemoveMatchingColumns-300x42.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/06/04_TableRemoveMatchingColumns-768x108.png 768w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><p id="caption-attachment-5194" class="wp-caption-text">Eine einzige M-Code-Zeile reicht aus, um zwei Listen abzugleichen</p></div>
<p>&nbsp;</p>
<p>Zur Erläuterung: Die Funktion <strong>Table.RemoveMatchingRows</strong> entfernt Zeilen aus einer Tabelle, die den angegebenen Kriterien entsprechen. Sie vergleicht die Werte der angegebenen Spalten in der Tabelle mit denen einer bereitgestellten Liste von Datensätzen (<strong>Table.ToRecords</strong>) und löscht alle passenden Zeilen.</p>
<p>Im Ergebnis sehe ich nun schon alle neuen bzw. veränderten Zeilen.</p>
<h3>FAZIT: Welche Methode eignet sich wann?</h3>
<p><strong>Power Query mit Anti-Join</strong></p>
<p>Der Anti-Join ist vermutlich die &#8222;offizielle&#8220; und am besten nachvollziehbare Methode. Die einzelnen Schritte lassen sich komfortabel über die Oberfläche zusammenklicken und sind später auch für andere Anwender gut verständlich.</p>
<p><strong>Power Query mit der Funktion Table.RemoveMatchingRows</strong></p>
<p>Da diese Variante direkt im M-Code arbeitet, spart sie einige Zwischenschritte. Technisch ist sie elegant und kompakt, allerdings weniger intuitiv für Anwender, die nur gelegentlich und daher mit der Oberfläche von Power Query arbeiten.</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-neue-und-veraenderte-zeilen-in-zwei-listen-finden/">Power Query: Neue oder veränderte Datensätze zwischen zwei Listen identifizieren</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Power Query: Spaltenüberschriften verständlich statt kryptisch dank einer Matchingtabelle</title>
		<link>https://www.huegemann-informatik.de/power-query-spaltenueberschriften-verstaendlich-statt-kryptisch-dank-einer-matchingtabelle/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Mon, 16 Mar 2026 14:11:46 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Power BI]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[Matchingtabelle]]></category>
		<category><![CDATA[missingField]]></category>
		<category><![CDATA[MissingField.Error]]></category>
		<category><![CDATA[MissingField.Ignore]]></category>
		<category><![CDATA[Spalten kompakt umbenennen]]></category>
		<category><![CDATA[Table.RenameColumns]]></category>
		<category><![CDATA[Table.ToRows]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/?p=5151</guid>

					<description><![CDATA[<p>Das erlebe ich oft: Listen sind gefühlt einen Meter breit und schrecken mit einer Vielzahl kryptischer Spaltenüberschriften ab. Wie bekomme ich diese in eine verständliche Sprache? Muss ich etwa jede Spalte einzeln manuell umbenennen? Die Antwort lautet NEIN. Denn schneller geht das Umbenennen mit Hilfe einer Matchingtabelle in Kombination mit der M-Funktion Table.RenameColumns. Die Matchingtabelle [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-spaltenueberschriften-verstaendlich-statt-kryptisch-dank-einer-matchingtabelle/">Power Query: Spaltenüberschriften verständlich statt kryptisch dank einer Matchingtabelle</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Das erlebe ich oft: Listen sind gefühlt einen Meter breit und schrecken mit einer Vielzahl kryptischer Spaltenüberschriften ab. Wie bekomme ich diese in eine verständliche Sprache? Muss ich etwa jede Spalte einzeln manuell umbenennen? Die Antwort lautet NEIN.</p>
<p>Denn schneller geht das Umbenennen mit Hilfe einer Matchingtabelle in Kombination mit der M-Funktion <strong>Table.RenameColumns</strong>.<br />
Die Matchingtabelle enthält lediglich zwei Spalten: <strong>OldHeader</strong> und <strong>NewHeader</strong>. Sie steuert, WELCHE Spalten WIE umbenannt werden sollen.<br />
Das Ergebnis: Weniger Schritte, bessere Verständlichkeit und eine Lösung, die leicht zu warten ist. Wie das funktioniert, zeige ich in diesem Beitrag.</p>
<div id="attachment_5150" style="width: 868px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5150" class="wp-image-5150 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/03/0_OldHeader_zu_NewHeader_V2.png" alt="Kryptische Spaltenüberschriften werden mit Hilfe einer Matchingtabelle in verständliche Spaltenüberschriften umbenannt" width="858" height="706" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/03/0_OldHeader_zu_NewHeader_V2.png 858w, https://www.huegemann-informatik.de/wp-content/uploads/2026/03/0_OldHeader_zu_NewHeader_V2-300x247.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/03/0_OldHeader_zu_NewHeader_V2-768x632.png 768w" sizes="auto, (max-width: 858px) 100vw, 858px" /><p id="caption-attachment-5150" class="wp-caption-text">Kryptische Spaltenüberschriften werden mit Hilfe einer Matchingtabelle in verständliche Spaltenüberschriften umbenannt</p></div>
<h3>Spaltenüberschriften manuell umbenennen</h3>
<p>Zum besseren Verständnis zeige ich zuerst, welchen M-Code Power Query produziert, wenn ich Spalten <strong>manuell</strong> umbenenne.<br />
So gehe ich vor:</p>
<ul>
<li>Ich lese die Tabelle <strong>Transaktionen</strong> in Power Query ein</li>
<li>Die erste Spaltenüberschrift <strong>OBJ_ID</strong> kann unverändert bleiben.</li>
<li>Ich starte also mit dem Umbenennen bei der zweiten Spalte: <strong>CLI_ID</strong><span style="font-weight: initial;">. Per Doppelklick auf die Spaltenüberschrift überschreibe ich diese mit </span><strong>Kundennummer</strong><span style="font-weight: initial;">.<br />
</span>Dabei wird der Befehl <strong>Table.RenameColumns</strong><span style="font-weight: initial;"> produziert mit einem Listenpaar, das alte und neue Benennung innerhalb einer Liste anzeigt. Listen werden in Power Query mit geschweiften Klammern gekennzeichnet.<br />
</span><img loading="lazy" decoding="async" class="alignnone wp-image-5163" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/03/1_ManuelleUmbenennung_V2.png" alt="" width="593" height="41" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/03/1_ManuelleUmbenennung_V2.png 593w, https://www.huegemann-informatik.de/wp-content/uploads/2026/03/1_ManuelleUmbenennung_V2-300x21.png 300w" sizes="auto, (max-width: 593px) 100vw, 593px" /></li>
</ul>
<ul>
<li>Benenne ich im nächsten Schritt DOC_NO um, entsteht innerhalb der Liste eine weitere mit dem nächsten Umbenennungspaar.<img loading="lazy" decoding="async" class="alignnone wp-image-5146" style="font-weight: initial;" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/03/2_Manuelle_Umbenennung_2Paar.png" alt="" width="817" height="41" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/03/2_Manuelle_Umbenennung_2Paar.png 817w, https://www.huegemann-informatik.de/wp-content/uploads/2026/03/2_Manuelle_Umbenennung_2Paar-300x15.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/03/2_Manuelle_Umbenennung_2Paar-768x39.png 768w" sizes="auto, (max-width: 817px) 100vw, 817px" /></li>
</ul>
<p>Das Umbenennen vieler Spalten auf diese Art wäre ziemlich mühsam. Vertippe ich mich, muss ich den Umbenennungsschritt wiederholen oder die richtige Bezeichnung im M-Code in der Bearbeitungsleiste austauschen. Das wäre nicht nur mühsam, sondern auch fehleranfällig. Daher braucht es eine Lösung, die a) flexibler ist und b) transparent zeigt, WELCHE Spaltenüberschriften WIE umbenannt wurden.</p>
<h3>Nicht manuell, sondern automatisch mit einer Matchingtabelle</h3>
<p>Statt jede Spalte einzeln umzubenennen, ordne ich die alten und die gewünschten neuen Spaltenüberschriften in einer Tabelle an. Die benenne ich <strong>Matchingtabelle</strong> (natürlich sind auch andere Namen möglich).<br />
Wichtig dabei: Die Tabelle muss aus zwei Spalten mit den Namen <strong>OldHeader</strong> und <strong>NewHeader</strong> bestehen.<br />
So gehe ich vor:</p>
<ul>
<li>Ich lese die <strong>Matchingtabelle</strong> in Power Query ein und lege die Datentypen beider Spalten auf <strong>Text</strong> fest.</li>
<li>In der vorhergehenden Abfrage tausche ich nun im <strong>Table.RenameColumns</strong>-Schritt die komplette Liste der Umbenennungspaare aus durch <strong>Table.ToRows(Matchingtabelle)</strong>.</li>
</ul>
<div id="attachment_5147" style="width: 888px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5147" class="size-full wp-image-5147" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/03/3_Umbenennung_per_Matchingtabelle.png" alt="Table.ToRows erstellt aus der Matchingtabelle eine Liste von geschachtelten Listen, so wie die Funktion Table.RenameColumns es benötigt" width="878" height="163" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/03/3_Umbenennung_per_Matchingtabelle.png 878w, https://www.huegemann-informatik.de/wp-content/uploads/2026/03/3_Umbenennung_per_Matchingtabelle-300x56.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/03/3_Umbenennung_per_Matchingtabelle-768x143.png 768w" sizes="auto, (max-width: 878px) 100vw, 878px" /><p id="caption-attachment-5147" class="wp-caption-text"><strong>Table.ToRows</strong> erstellt aus der Matchingtabelle eine Liste von geschachtelten Listen, so wie die Funktion <strong>Table.RenameColumns</strong> es benötigt</p></div>
<h3>Aus der Praxis: Fehler bei fehlenden Spalten verhindern</h3>
<p>Enthält die <strong>Matchingtabelle</strong> Spaltennamen, die beim nächsten Update nicht dabei sind, führt dies zu folgendem Fehler.</p>
<div id="attachment_5148" style="width: 757px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5148" class="size-full wp-image-5148" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/03/4_UeberfluessigeSpaltennamen.png" alt="Enthält die Matchingtabelle überflüssige Spaltenüberschrift, die in der Datenquelle nicht vorhanden sind, so führt dies zu einem Fehler." width="747" height="348" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/03/4_UeberfluessigeSpaltennamen.png 747w, https://www.huegemann-informatik.de/wp-content/uploads/2026/03/4_UeberfluessigeSpaltennamen-300x140.png 300w" sizes="auto, (max-width: 747px) 100vw, 747px" /><p id="caption-attachment-5148" class="wp-caption-text">Enthält die Matchingtabelle überflüssige Spaltenüberschriften, die in der Datenquelle nicht vorhanden sind, so führt dies zu einem Fehler.</p></div>
<p>&nbsp;</p>
<p>Ein solchen Fehler kann ich wie folgt vermeiden:</p>
<ul>
<li>Ich erweitere den <strong>Table.RenameColumns</strong>-Schritt um das dritte Argument <strong>missingField</strong> mit dem Wert <strong>MissingField.Ignore</strong>.&nbsp; Dieses Argument ist nämlich standardmäßig mit <strong>MissingField.Error</strong> belegt.</li>
</ul>
<div id="attachment_5149" style="width: 794px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5149" class="size-full wp-image-5149" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/03/5_Fehler_vermeiden.png" alt="Das dritte Argument MissingField.Ignore sorgt dafür, dass überflüssige Einträge in der Matchingtabelle ignoriert werden und nicht zu einem Fehler führen." width="784" height="178" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/03/5_Fehler_vermeiden.png 784w, https://www.huegemann-informatik.de/wp-content/uploads/2026/03/5_Fehler_vermeiden-300x68.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/03/5_Fehler_vermeiden-768x174.png 768w" sizes="auto, (max-width: 784px) 100vw, 784px" /><p id="caption-attachment-5149" class="wp-caption-text">Das dritte Argument mit dem Wert <strong>MissingField.Ignore</strong> sorgt dafür, dass überflüssige Einträge in der Matchingtabelle ignoriert werden und nicht zu einem Fehler führen.</p></div>
<h3>Fazit</h3>
<p>Das hier beschriebene Vorgehen zum Umbenennen von Spaltenüberschriften bringt mehrere praktische Vorteile:</p>
<ol>
<li>Leichtere Wartung: Die Spaltenlogik liegt in einer Tabelle und nicht im M-Code.</li>
<li>Skalierbarkeit: Auch eine Vielzahl von Spalten lässt sich ohne lange Codezeilen verwalten.</li>
<li>Flexibilität: Die Matchingtabelle kann z. B. aus Excel, einer Datenbank oder anderen Quellen kommen.</li>
<li>Weniger Abfrage-Schritte: Alle Umbenennungen werden in einem einzigen Schritt erledigt.</li>
</ol>
<p>Mit <strong>Table.RenameColumns</strong> und einer <strong>Matchingtabelle</strong> können Spaltennamen <strong>dynamisch</strong>, <strong>zentral gesteuert</strong> und <strong>in nur einem Schritt</strong> umbenannt werden – eine saubere Lösung für wiederverwendbare Power-Query-Abfragen.</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-spaltenueberschriften-verstaendlich-statt-kryptisch-dank-einer-matchingtabelle/">Power Query: Spaltenüberschriften verständlich statt kryptisch dank einer Matchingtabelle</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Power Query: Spaltenwerte flexibel und effizient verändern</title>
		<link>https://www.huegemann-informatik.de/power-query-spaltenwerte-performant-bereinigen/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Mon, 26 Jan 2026 12:07:00 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Power BI]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[Fehlerhafte Daten ersetzen]]></category>
		<category><![CDATA[if ... then ... else]]></category>
		<category><![CDATA[Spalte leeren]]></category>
		<category><![CDATA[Spaltenwerte ändern]]></category>
		<category><![CDATA[Spaltenwerte effizient bereinigen]]></category>
		<category><![CDATA[Spaltenwerte effizient ersetzen]]></category>
		<category><![CDATA[Table.TransformColumns]]></category>
		<category><![CDATA[Transformieren]]></category>
		<category><![CDATA[try ... otherwise]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/?p=5100</guid>

					<description><![CDATA[<p>Soll in Power Query der Inhalt einer Spalte verändert werden, sind dafür auf der Registerkarte Transformieren verschiedene Befehle verfügbar. Allerdings gibt es dort keine Option, die unterschiedliche Werte einer vorhandenen Spalte durch einen bestimmten Wert oder durch nichts ersetzt. Viele behelfen sich dann, indem sie zuerst die gewünschten Werte in einer zusätzlich Hilfsspalte generieren und [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-spaltenwerte-performant-bereinigen/">Power Query: Spaltenwerte flexibel und effizient verändern</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Soll in Power Query der Inhalt einer Spalte verändert werden, sind dafür auf der Registerkarte <strong>Transformieren</strong> verschiedene Befehle verfügbar. Allerdings gibt es dort keine Option, die unterschiedliche Werte einer vorhandenen Spalte durch einen bestimmten Wert oder durch nichts ersetzt. Viele behelfen sich dann, indem sie zuerst die gewünschten Werte in einer zusätzlich Hilfsspalte generieren und anschließend die Originalspalte löschen.<br />
Doch solche Bereinigungsprozesse lassen sich mit Hilfe der Funktion<strong> Table.TransformColumns</strong> einfach erledigen – ohne jede Hilfsspalte.</p>
<div id="attachment_5109" style="width: 1060px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5109" class="wp-image-5109 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/0_Transformation_in_nur_eienem_Schritt.png" alt="Transformationen auf zwei Spalten mit Typumwandlung sehr performant in nur einem Schritt durchführen" width="1050" height="400" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/0_Transformation_in_nur_eienem_Schritt.png 1050w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/0_Transformation_in_nur_eienem_Schritt-300x114.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/0_Transformation_in_nur_eienem_Schritt-1024x390.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/0_Transformation_in_nur_eienem_Schritt-768x293.png 768w" sizes="auto, (max-width: 1050px) 100vw, 1050px" /><p id="caption-attachment-5109" class="wp-caption-text">Transformationen auf mehreren Spalten inklusive Typumwandlung sehr performant in nur einem Schritt durchführen</p></div>
<h3>Szenario 1: Komplette Spalte leeren oder mit festem Text belegen, unabhängig von den bisherigen Werten</h3>
<p>Angenommen, eine Liste enthält eine Spalte <strong>Status</strong>, deren Inhalte aus verschiedenen Vorsystemen stammen. Diese sind leider uneinheitlich gepflegt wie z. B. &#8222;offen&#8220;, &#8222;neu&#8220;, &#8222;in Bearbeitung&#8220;, &#8222;in Prüfung&#8220; usw. und so nicht brauchbar. Die Spalte soll deshalb <strong>vollständig geleert</strong> oder mit <strong>&#8222;tbd.&#8220;</strong> überschrieben werden, um den Status in einem späteren Verarbeitungsschritt neu zu belegen.</p>
<p>So geht&#8217;s &#8230;<br />
Ich markiere die Spalte <strong>Status</strong> und wähle im Register <strong>Transformieren</strong> [1] einen typischen Transformationsschritt aus, beispielsweise unter <strong>Format</strong> [2] &gt; <strong>Präfix hinzufügen</strong> [3]. Anschließend gebe ich beispielsweise den Präfix <strong>&#8222;X&#8220;</strong> ein [4].</p>
<p>&nbsp;</p>
<div id="attachment_5110" style="width: 1302px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5110" class="wp-image-5110 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/1_Beispieltransformation.png" alt="Ein Transformieren-Befehl wie Präfix hinzufügen erzeugt einen typischen Code mit der Funktion Table.TransformColumns" width="1292" height="583" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/1_Beispieltransformation.png 1292w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/1_Beispieltransformation-300x135.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/1_Beispieltransformation-1024x462.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/1_Beispieltransformation-768x347.png 768w" sizes="auto, (max-width: 1292px) 100vw, 1292px" /><p id="caption-attachment-5110" class="wp-caption-text">Ein Transformieren-Befehl wie <strong>Präfix hinzufügen</strong> erzeugt einen typischen Code mit der Funktion <strong>Table.TransformColumns</strong></p></div>
<p>&nbsp;</p>
<p>Auf diese Weise erhalte ich den nötigen M-Code zur Transformation der Spalte. <span style="font-weight: initial;">In dieser Anweisung wird mit Hilfe des Wörtchens </span><strong>each</strong><span style="font-weight: initial;"> für jede Zeile die danach folgende Anweisung ausgeführt. Mit dem </span><strong>Unterstrich _</strong><span style="font-weight: initial;"> wird auf den jeweiligen Wert zugegriffen und hier mit dem Buchstaben</span><strong> &#8222;X&#8220;</strong><span style="font-weight: initial;"> am Anfang verkettet.</span></p>
<div id="attachment_5111" style="width: 710px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5111" class="wp-image-5111 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/2_Typischer_M-Code_Praefix_hinzugefuegt.png" alt="Die Funktion Table.TransformColumns mit einer Anweisung zur Transformation der Spalte Status" width="700" height="39" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/2_Typischer_M-Code_Praefix_hinzugefuegt.png 700w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/2_Typischer_M-Code_Praefix_hinzugefuegt-300x17.png 300w" sizes="auto, (max-width: 700px) 100vw, 700px" /><p id="caption-attachment-5111" class="wp-caption-text">Die Funktion <strong>Table.TransformColumns</strong> mit einer Anweisung zur Transformation der Spalte Status</p></div>
<p>&nbsp;</p>
<p>Möchte ich die Spalte leeren oder mit einem bestimmten Text belegen, ersetze ich den Ausdruck <strong>&#8222;X&#8220; &amp; _</strong> , der dem <strong>each</strong> folgt, mit dem Schlüsselwort null oder mit einem festen Text, beispielsweise <strong>&#8222;tbd.&#8220;</strong> .</p>
<div id="attachment_5103" style="width: 705px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5103" class="wp-image-5103 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/3_Typischer_M-Code_Transformation_fester_Wert.png" alt="Jeder Wert in der Spalte Status wird mit null (also vollständig geleert) oder dem festen Text &quot;tbd.&quot; belegt" width="695" height="150" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/3_Typischer_M-Code_Transformation_fester_Wert.png 695w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/3_Typischer_M-Code_Transformation_fester_Wert-300x65.png 300w" sizes="auto, (max-width: 695px) 100vw, 695px" /><p id="caption-attachment-5103" class="wp-caption-text">Jeder Wert in der Spalte <strong>Status</strong> wird mit <strong>null</strong> (also vollständig geleert) oder dem festen Text <strong>&#8222;tbd.&#8220;</strong> belegt</p></div>
<p>&nbsp;</p>
<p><strong>Tipp:</strong> Um den Schritt nachvollziehen zu können, benenne ich den Schritt <strong>Präfix hinzugefügt</strong> rechts unter <strong>Angewendete Schritte</strong> beispielsweise um in <strong>Status bereinigt</strong>.</p>
<h3>Szenario 2: Nur bestimmte Werte in der Spalte ändern</h3>
<p>In diesem Fall sollen in der Spalte <strong>Status</strong> nicht alle Werte geändert werden, sondern nur bestimmte. Beispielsweise soll nur der Wert <strong>&#8222;neu&#8220;</strong> in <strong>&#8222;tbd.&#8220;</strong> geändert werden.</p>
<p>So gehe ich vor &#8230;<br />
Wie in Szenario 1 benutze ich den erstellten M-Code und ersetze den Ausdruck <strong>&#8222;X&#8220; &amp; _</strong> durch eine if-Anweisung: <strong>each if _ = &#8222;neu&#8220; then &#8222;tbd.&#8220; else _</strong>. Diese prüft, ob der aktuelle Wert (dargestellt durch Unterstrich <strong>_</strong>) gleich <strong>&#8222;neu&#8220;</strong> ist und ersetzt in diesem Fall den Text durch <strong>&#8222;tbd.&#8220;</strong>. Andernfalls wird der aktuelle Wert (<strong>_</strong>) beibehalten.</p>
<div id="attachment_5104" style="width: 905px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5104" class="wp-image-5104 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/4_Typischer_M-Code_Transformation_if.png" alt="Transformationsschritt wird mit einer if-Anweisung versehen, um nur bestimmte Werte zu ersetzen" width="895" height="110" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/4_Typischer_M-Code_Transformation_if.png 895w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/4_Typischer_M-Code_Transformation_if-300x37.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/4_Typischer_M-Code_Transformation_if-768x94.png 768w" sizes="auto, (max-width: 895px) 100vw, 895px" /><p id="caption-attachment-5104" class="wp-caption-text">Transformationsschritt wird mit einer <strong>if-Anweisung</strong> versehen, um nur bestimmte Werte zu ersetzen</p></div>
<p>&nbsp;</p>
<p><strong>Tipp</strong>: Diese Anweisung kann natürlich beliebig erweitert werden, beispielsweise durch Hinzufügen einer or-Anweisung: <strong>each if _ = &#8222;neu&#8220; or _ = &#8222;offen&#8220; then &#8222;tbd.&#8220; else _</strong></p>
<h3>Szenario 3: Nicht korrekte Werte ersetzen</h3>
<p>Die Spalte Datum wurde nicht immer korrekt gepflegt. An manchen Stellen befinden sich Texte in der Spalte. Bevor der Datentyp für diese Spalte geändert wird und dies zu Fehlern führen würde, wird sie mit einer Art <strong>wenn-Fehler-Funktion</strong> geprüft (<strong>try</strong> … <strong>otherwise</strong>).</p>
<div id="attachment_5105" style="width: 654px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5105" class="wp-image-5105 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/5_Nicht_korrekte_Datumsangaben.png" alt="Nicht korrekte Datumsangaben führen zu Fehlern bei der Umwandlung der Spalte in Datumsformat und sollen daher geleert werden" width="644" height="385" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/5_Nicht_korrekte_Datumsangaben.png 644w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/5_Nicht_korrekte_Datumsangaben-300x179.png 300w" sizes="auto, (max-width: 644px) 100vw, 644px" /><p id="caption-attachment-5105" class="wp-caption-text">Nicht korrekte Datumsangaben führen zu Fehlern bei der Umwandlung der Spalte in Datumsformat und sollen daher geleert werden</p></div>
<p>&nbsp;</p>
<p>So gehe ich vor &#8230;<br />
Wie in Szenario 1 benutze ich den erstellten M-Code. Diesmal ersetze ich den Spaltennamen von <strong>Status</strong> in <strong>Datum</strong> und den Ausdruck <strong>&#8222;X&#8220; &amp; _</strong> durch<strong> each try Date.From(_) otherwise null</strong>. Mit Hilfe der <strong>try</strong>-Anweisung wird in diesem Fall geprüft, ob eine Umwandlung in ein Datum möglich ist. Falls nicht, wird der Eintrag geleert.</p>
<p>Zusätzlich kann mit der Transformationsanweisung auch gleich der passende Datentyp mitgegeben werden, in diesem Fall <strong>date</strong>.</p>
<div id="attachment_5106" style="width: 898px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5106" class="size-full wp-image-5106" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/5_Typischer_M-Code_Transformation_try.png" alt="Mit Hilfe der try-Anweisung wird eine Fehlerprüfung vorgenommen und fehlerhafte Daten werden mit der otherwise-Anweisung korrigiert" width="888" height="110" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/5_Typischer_M-Code_Transformation_try.png 888w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/5_Typischer_M-Code_Transformation_try-300x37.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/5_Typischer_M-Code_Transformation_try-768x95.png 768w" sizes="auto, (max-width: 888px) 100vw, 888px" /><p id="caption-attachment-5106" class="wp-caption-text">Mit Hilfe der <strong>try-Anweisung</strong> wird eine Fehlerprüfung vorgenommen und fehlerhafte Daten werden mit der otherwise-Anweisung korrigiert</p></div>
<h3>Szenario 4: Gleich mehrere Spalten in einem Schritt bereinigen</h3>
<p>Sollen auf mehreren Spalten Transformationen vorgenommen werden, so ist auch dies in einem Schritt möglich. Die Funktion <strong>Table.TransformColumns</strong> erlaubt eine Liste mit Transformationsschritten, die jeweils in geschweiften Klammern und kommagetrennt gelistet werden. So können beispielsweise sowohl die Spalte <strong>Status</strong> als auch die Spalte <strong>Datum</strong> in einem Rutsch bereinigt werden.</p>
<div id="attachment_5107" style="width: 1383px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5107" class="size-full wp-image-5107" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/6_Mehrere_Transformationen.png" alt="Die Funktion Table.TransformColumns erlaubt eine Liste von Transformationsschritten" width="1373" height="311" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/6_Mehrere_Transformationen.png 1373w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/6_Mehrere_Transformationen-300x68.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/6_Mehrere_Transformationen-1024x232.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/6_Mehrere_Transformationen-768x174.png 768w" sizes="auto, (max-width: 1373px) 100vw, 1373px" /><p id="caption-attachment-5107" class="wp-caption-text">Die Funktion <strong>Table.TransformColumns</strong> erlaubt eine Liste {..} von Transformationsschritten</p></div>
<p>&nbsp;</p>
<p>Alle Szenarien lassen sich mit wenigen Handgriffen in einem Schritt mit Hilfe der Funktion <strong>Table.TransformColumns</strong> umsetzen. Dabei wird der bestehende Spalteninhalt gezielt ersetzt, ohne jegliche Hilfsspalte.</p>
<p><strong>Zusatz-Tipp:&nbsp;</strong>Natürlich kann ich auch jederzeit einen benutzerdefinierten Schritt einfügen und mit folgendem Code jeden beliebigen Ersetzungsprozess ausführen.</p>
<div id="attachment_5108" style="width: 583px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5108" class="size-full wp-image-5108" src="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/7_BenutzerdefinierterSchritt.png" alt="Auch ohne einen Transformationsschritt über das Menüband auszuführen und abzuändern, lässt sich ein solcher Schritt über Klick auf das fx erstellen" width="573" height="178" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2026/01/7_BenutzerdefinierterSchritt.png 573w, https://www.huegemann-informatik.de/wp-content/uploads/2026/01/7_BenutzerdefinierterSchritt-300x93.png 300w" sizes="auto, (max-width: 573px) 100vw, 573px" /><p id="caption-attachment-5108" class="wp-caption-text">Auch ohne einen Transformationsschritt über das Menüband auszuführen und abzuändern, lässt sich ein solcher Schritt über Klick auf das<strong> fx</strong> erstellen</p></div>
<p>&nbsp;</p>
<p>Interessiert an weiteren Tipps zu Power Query?<br />
Wer sein Wissen zu Power Query systematisch auf- und ausbauen will, kann dazu einen meiner Online-Kurse nutzen. <a href="https://www.huegemann-informatik.de/training/">Auf dieser Seite</a> ist das aktuelle Angebot zu finden.</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-spaltenwerte-performant-bereinigen/">Power Query: Spaltenwerte flexibel und effizient verändern</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Power Query: Ausgeblendete Arbeitsblätter auslesen? So geht’s doch!</title>
		<link>https://www.huegemann-informatik.de/power-query-ausgeblendete-arbeitsblaetter-auslesen-so-gehts-doch/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Fri, 12 Sep 2025 12:36:26 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Power BI]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[Ausgeblendete Blätter einlesen]]></category>
		<category><![CDATA[Ausgeblendete Tabellen einlesen]]></category>
		<category><![CDATA[Navigator]]></category>
		<category><![CDATA[Ordner mit ausgeblendeten Blättern einlesen]]></category>
		<category><![CDATA[Ordner mit ausgeblendeten Tabellen einlesen]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/?p=5058</guid>

					<description><![CDATA[<p>Kürzlich erhielt ich den Hilferuf einer Anwenderin, weil sie in Excel mit Power Query nicht auf die Daten in einer anderen Arbeitsmappe zugreifen konnte. Sie wurden im Navigator nicht angezeigt. Die Ursache war schnell gefunden: Die betreffende Tabelle mit den Rohdaten lag auf einem ausgeblendeten Arbeitsblatt. Eigentlich war die Idee gut, das Blatt mit den [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-ausgeblendete-arbeitsblaetter-auslesen-so-gehts-doch/">Power Query: Ausgeblendete Arbeitsblätter auslesen? So geht’s doch!</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Kürzlich erhielt ich den Hilferuf einer Anwenderin, weil sie in Excel mit Power Query nicht auf die Daten in einer anderen Arbeitsmappe zugreifen konnte. Sie wurden im Navigator nicht angezeigt. Die Ursache war schnell gefunden: Die betreffende Tabelle mit den Rohdaten lag auf einem ausgeblendeten Arbeitsblatt.<br />
Eigentlich war die Idee gut, das Blatt mit den Rohdaten auszublenden, damit sie nicht versehentlich geändert oder gelöscht werden. ABER: Standardmäßig zeigt Power Query beim Zugriff auf eine andere Arbeitsmappe <strong>ausgeblendete Blätter</strong> im Navigator-Fenster nicht an.<br />
Muss jetzt das ausgeblendete Blatt erst eingeblendet werden, um es in Power Query auswerten zu können? Nein. Hier kommt eine Anleitung, mit der es trotzdem gelingt.</p>
<div id="attachment_5047" style="width: 1411px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5047" class="wp-image-5047 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/1_Import_Arbeitsmappe.png" alt="Nach dem Ausblenden wird das Blatt Rohdaten im Navigator von Power Query nicht angezeigt; auch auf die dort enthaltene Tabelle tbl_Umsatz kann nicht zugegriffen werden" width="1401" height="605" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/1_Import_Arbeitsmappe.png 1401w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/1_Import_Arbeitsmappe-300x130.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/1_Import_Arbeitsmappe-1024x442.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/1_Import_Arbeitsmappe-768x332.png 768w" sizes="auto, (max-width: 1401px) 100vw, 1401px" /><p id="caption-attachment-5047" class="wp-caption-text">Nach dem Ausblenden wird das Blatt Rohdaten im Navigator von Power Query nicht angezeigt; auch auf die dort enthaltene Tabelle tbl_Umsatz kann nicht zugegriffen werden</p></div>
<p><span id="more-5058"></span></p>
<h3>Zugriff auf die komplette Arbeitsmappe ermöglichen</h3>
<p>Will ich über <strong>Daten</strong> &gt; <strong>Daten abrufen</strong> &gt; <strong>Aus Datei</strong> &gt; <strong>Aus Arbeitsmappe</strong> die oben gezeigte Excel-Datei einlesen, werden im Navigator-Fenster nur die eingeblendeten Arbeitsblätter und Tabellen angezeigt.<br />
Um auf das ausgeblendete Blatt Rohdaten und dort die Tabelle tbl_Umsatz zugreifen zu können, gehe ich wie folgt vor:</p>
<ul>
<li>Nachdem ich über <strong>Daten</strong> &gt; <strong>Daten abrufen</strong> &gt; <strong>Aus Datei</strong> &gt; <strong>Aus Arbeitsmappe</strong> ins Navigator-Fenster gelangt bin, mache ich einen Rechtsklick auf den Dateinamen.</li>
<li>Dann wähle ich <strong>Daten transformieren</strong>.</li>
</ul>
<div id="attachment_5048" style="width: 686px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5048" class="wp-image-5048 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/2_Daten_transformieren.png" alt="Per Rechtsklick auf den Dateinamen und Daten transformieren den Zugriff auf alle Elemente der Arbeitsmappe erhalten" width="676" height="293" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/2_Daten_transformieren.png 676w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/2_Daten_transformieren-300x130.png 300w" sizes="auto, (max-width: 676px) 100vw, 676px" /><p id="caption-attachment-5048" class="wp-caption-text">Per Rechtsklick auf den Dateinamen und <strong>Daten transformieren</strong> den Zugriff auf ALLE Elemente der Arbeitsmappe erhalten</p></div>
<ul>
<li>So erhalte ich Zugriff auf die gesamte Arbeitsmappe – mit allen ein- und ausgeblendeten Blättern wie die gelbe Markierung im folgenden Bild&nbsp; zeigt.</li>
<li>Per Rechtsklick in der Spalte <strong>Data</strong> in der Zeile tbl_Umsatz wähle ich <strong>Drilldown ausführen</strong>.</li>
</ul>
<div id="attachment_5049" style="width: 1467px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5049" class="wp-image-5049 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/3_Auf_Daten_ausgeblendete_Tabelle_zugreifen.png" alt="Per Rechtsklick in der Spalte Data der Zeile tbl_Umsatz einen Drilldown auf die Daten ausführen" width="1457" height="468" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/3_Auf_Daten_ausgeblendete_Tabelle_zugreifen.png 1457w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/3_Auf_Daten_ausgeblendete_Tabelle_zugreifen-300x96.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/3_Auf_Daten_ausgeblendete_Tabelle_zugreifen-1024x329.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/3_Auf_Daten_ausgeblendete_Tabelle_zugreifen-768x247.png 768w" sizes="auto, (max-width: 1457px) 100vw, 1457px" /><p id="caption-attachment-5049" class="wp-caption-text">Per Rechtsklick in der Spalte Data der Zeile tbl_Umsatz einen Drilldown auf die Daten ausführen</p></div>
<ul>
<li>Nun werden alle Daten der Tabelle tbl_Umsatz angezeigt und die Weiterverarbeitung der Daten kann starten.</li>
</ul>
<div id="attachment_5050" style="width: 1468px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5050" class="wp-image-5050 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/4_Alle_Daten_tblUmsatz.png" alt="Nach dem Befehl Drilldown ausführen steht die ausgeblendete Tabelle tbl_Umsatz in Power Query zur Weiterverarbeitung zur Verfügung" width="1458" height="441" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/4_Alle_Daten_tblUmsatz.png 1458w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/4_Alle_Daten_tblUmsatz-300x91.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/4_Alle_Daten_tblUmsatz-1024x310.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/4_Alle_Daten_tblUmsatz-768x232.png 768w" sizes="auto, (max-width: 1458px) 100vw, 1458px" /><p id="caption-attachment-5050" class="wp-caption-text">Nach dem Befehl <strong>Drilldown ausführen</strong> steht die ausgeblendete Tabelle tbl_Umsatz in Power Query zur Weiterverarbeitung zur Verfügung</p></div>
<h3>Zugriff auf ausgeblendete Blätter aller Dateien eines kompletten Ordners</h3>
<p>Klappt das auch, wenn ein kompletter Ordner mit Excel-Dateien ausgelesen werden soll, die ausgeblendete Arbeitsblätter haben? Ja, es funktioniert ähnlich:</p>
<ul>
<li>Über <strong>Daten</strong> &gt; <strong>Daten abrufen</strong> &gt; <strong>Aus Datei</strong> &gt; <strong>Aus Ordner</strong> wähle ich den Ordner mit den betreffenden Arbeitsmappen aus und erhalte eine Auflistung aller vorhandenen Excel-Dateien in dem Ordner. Ich wähle wieder <strong>Daten transformieren</strong>.</li>
</ul>
<div id="attachment_5051" style="width: 1157px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5051" class="wp-image-5051 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/5_Dateien_aus_Ordner_importieren.png" alt="Den Umsatzordner zum Einlesen auswählen und Daten transformieren anklicken" width="1147" height="717" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/5_Dateien_aus_Ordner_importieren.png 1147w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/5_Dateien_aus_Ordner_importieren-300x188.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/5_Dateien_aus_Ordner_importieren-1024x640.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/5_Dateien_aus_Ordner_importieren-768x480.png 768w" sizes="auto, (max-width: 1147px) 100vw, 1147px" /><p id="caption-attachment-5051" class="wp-caption-text">Den Umsatzordner zum Einlesen auswählen und <strong>Daten transformieren</strong> anklicken</p></div>
<ul>
<li>Ich gelange in den Power Query-Editor. Falls sich hier Dateien befinden, die ich nicht verarbeiten möchte, schließe kann ich diese per Filter aus.</li>
<li>Per Rechtsklick in der Spalte <strong>Content</strong> wähle ich <strong>Andere Spalten entfernen</strong> [1] und klicke anschließend auf den <strong>Doppelpfeil</strong> [2], um alle Dateien zu kombinieren.</li>
</ul>
<div id="attachment_5052" style="width: 1466px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5052" class="wp-image-5052 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/6_Dateien_aus_Ordner_kombinieren.png" alt="Nun werden alle Dateien aus dem Ordner kombiniert" width="1456" height="479" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/6_Dateien_aus_Ordner_kombinieren.png 1456w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/6_Dateien_aus_Ordner_kombinieren-300x99.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/6_Dateien_aus_Ordner_kombinieren-1024x337.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/6_Dateien_aus_Ordner_kombinieren-768x253.png 768w" sizes="auto, (max-width: 1456px) 100vw, 1456px" /><p id="caption-attachment-5052" class="wp-caption-text">Nun werden alle Dateien aus dem Ordner kombiniert</p></div>
<ul>
<li>Im Dialogfeld <strong>Dateien kombinieren</strong> – hier entsteht die Beispieldatei – sind das ausgeblendete Blatt und auch die Tabelle wieder nicht zu sehen. Daher wähle ich per Rechtsklick auf <strong>Parameter</strong> den Befehl <strong>Daten transformieren</strong>.</li>
</ul>
<div id="attachment_5053" style="width: 734px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5053" class="wp-image-5053 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/7_Musterdatei.png" alt="Auch beim Erstellen der Beispieldatei fehlt zunächst der Zugriff auf die ausgeblendeten Arbeitsblätter" width="724" height="402" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/7_Musterdatei.png 724w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/7_Musterdatei-300x167.png 300w" sizes="auto, (max-width: 724px) 100vw, 724px" /><p id="caption-attachment-5053" class="wp-caption-text">Auch beim Erstellen der Beispieldatei fehlt zunächst der Zugriff auf die ausgeblendeten Arbeitsblätter</p></div>
<ul>
<li>Im Ergebnis der Abfrage <strong>Umsaetze_2025</strong> sehe ich nun alle Arbeitsblätter und Tabellen.</li>
<li>Da ich nur tbl_Umsatz auswerten möchte, klicke ich die Abfrage <strong>Beispieldatei transformieren</strong> an. So kann ich die Beispieldatei nachbearbeiten.</li>
</ul>
<div id="attachment_5054" style="width: 1467px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5054" class="wp-image-5054 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/8_Gesamtabfrage_mit_allen_ABs.png" alt="Die Beispieldatei muss nachbearbeitet werden, damit nicht alle Arbeitsblätter und Tabellen der Mappen verarbeitet werden" width="1457" height="482" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/8_Gesamtabfrage_mit_allen_ABs.png 1457w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/8_Gesamtabfrage_mit_allen_ABs-300x99.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/8_Gesamtabfrage_mit_allen_ABs-1024x339.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/8_Gesamtabfrage_mit_allen_ABs-768x254.png 768w" sizes="auto, (max-width: 1457px) 100vw, 1457px" /><p id="caption-attachment-5054" class="wp-caption-text">Die Beispieldatei muss nachbearbeitet werden, damit nicht alle Arbeitsblätter und Tabellen der Mappen verarbeitet werden</p></div>
<ul>
<li>In der Abfrage <strong>Beispieldatei transformieren</strong> führe ich nun den Drilldown auf <strong>Table</strong> in der Spalte <strong>Data</strong> der Zeile <strong>tbl_Umsatz</strong> aus – wie bereits oben beim Verarbeiten einer einzelnen Excel-Datei beschrieben.</li>
</ul>
<div id="attachment_5055" style="width: 1468px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5055" class="wp-image-5055 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/9_Musterdatei_nachbearbeiten.png" alt="Die Beispieldatei-Abfrage Beispieldatei transformieren wird nachbearbeitet und nur die tbl_Umsatz zur Verarbeitung ausgewählt" width="1458" height="481" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/9_Musterdatei_nachbearbeiten.png 1458w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/9_Musterdatei_nachbearbeiten-300x99.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/9_Musterdatei_nachbearbeiten-1024x338.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/9_Musterdatei_nachbearbeiten-768x253.png 768w" sizes="auto, (max-width: 1458px) 100vw, 1458px" /><p id="caption-attachment-5055" class="wp-caption-text">Die Beispieldatei-Abfrage <strong>Beispieldatei transformieren</strong> wird nachbearbeitet und nur die tbl_Umsatz zur Verarbeitung ausgewählt</p></div>
<p>Das Ergebnis kann sich sehen lassen: In der Abfrage <strong>Umsaetze_2025</strong> wurden alle ausgeblendeten Tabellen mit dem Namen tbl_Umsatz aus allen Monaten zusammengeführt.</p>
<div id="attachment_5056" style="width: 1524px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5056" class="wp-image-5056 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/10_Alle_Umsaetze.png" alt="Alle Tabellen tbl_Umsatz aus dem Ordner wurden nun in der Abfrage Umsaetze_2025 zusammengeführtAlle Tabellen tbl_Umsatz aus dem Ordner wurden nun in der Abfrage Umsaetze_2025 zusammengeführt" width="1514" height="595" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/10_Alle_Umsaetze.png 1514w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/10_Alle_Umsaetze-300x118.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/10_Alle_Umsaetze-1024x402.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/10_Alle_Umsaetze-768x302.png 768w" sizes="auto, (max-width: 1514px) 100vw, 1514px" /><p id="caption-attachment-5056" class="wp-caption-text">Alle Tabellen tbl_Umsatz aus dem Ordner wurden nun in der Abfrage <strong>Umsaetze_2025</strong> zusammengeführt</p></div>
<h3>Hinweis zu Power Query in Power BI Desktop</h3>
<p>Power BI Desktop geht mit ausgeblendeten Blättern im Navigator anders um. Im unteren Bereich werden Tabellen vorgeschlagen, die durch eine gezielte Aufbereitung ermittelt wurden. Darüber kann ich auf die ausgeblendeten Daten zugreifen.</p>
<div id="attachment_5057" style="width: 953px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5057" class="wp-image-5057 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/11_PowerBIDesktopNavigator.png" alt="In Power BI Desktop dagegen erhalte ich über den Navigator auch Zugriff auf das ausgeblendete Blatt Rohdaten im Bereich Vorgeschlagene Tabellen" width="943" height="598" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/09/11_PowerBIDesktopNavigator.png 943w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/11_PowerBIDesktopNavigator-300x190.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/09/11_PowerBIDesktopNavigator-768x487.png 768w" sizes="auto, (max-width: 943px) 100vw, 943px" /><p id="caption-attachment-5057" class="wp-caption-text">In Power BI Desktop dagegen erhalte ich über den Navigator auch Zugriff auf das ausgeblendete Blatt Rohdaten im Bereich <strong>Vorgeschlagene Tabellen</strong></p></div>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-ausgeblendete-arbeitsblaetter-auslesen-so-gehts-doch/">Power Query: Ausgeblendete Arbeitsblätter auslesen? So geht’s doch!</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Power Query: Falsche Datentypen? Drei Tipps, die das verhindern</title>
		<link>https://www.huegemann-informatik.de/power-query-falsche-datentypen-drei-tipps-die-das-verhindern/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Mon, 04 Aug 2025 09:37:15 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Power BI]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[Abfragen robust machen]]></category>
		<category><![CDATA[automatische Datentyperkennung ausschalten]]></category>
		<category><![CDATA[Benutzerdefinierte Spalte]]></category>
		<category><![CDATA[Data Profiling]]></category>
		<category><![CDATA[Datentypen einstellen]]></category>
		<category><![CDATA[Datenvorschau]]></category>
		<category><![CDATA[Fehlerhafte Datentypen]]></category>
		<category><![CDATA[Ganze Zahl]]></category>
		<category><![CDATA[is number]]></category>
		<category><![CDATA[is text]]></category>
		<category><![CDATA[Kontrollabfragen]]></category>
		<category><![CDATA[Power Query Rezept]]></category>
		<category><![CDATA[Spaltenprofil]]></category>
		<category><![CDATA[Spaltenqualität]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/?p=5000</guid>

					<description><![CDATA[<p>Es sollte mal wieder schnell gehen und dabei bleib das Festlegen der Datentypen auf der Strecke. Doch spätestens beim nächsten Datenimport rächt sich das. Denn unsachgemäß eingestellte oder bei erneuten Importen nicht überprüfte Datentypen erhöhen das Risiko von Fehlern und Datenverfälschungen. Hier zwei typische Beispiele: 1) In der Abfrage wurden die Datentypen sauber definiert: der [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-falsche-datentypen-drei-tipps-die-das-verhindern/">Power Query: Falsche Datentypen? Drei Tipps, die das verhindern</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Es sollte mal wieder schnell gehen und dabei bleib das Festlegen der Datentypen auf der Strecke. Doch spätestens beim nächsten Datenimport rächt sich das. Denn unsachgemäß eingestellte oder bei erneuten Importen nicht überprüfte Datentypen erhöhen das Risiko von Fehlern und Datenverfälschungen. Hier zwei typische Beispiele:<br />
1) In der Abfrage wurden die Datentypen sauber definiert: der Spalte mit der Mengenangabe wurde <strong>Ganze Zahl</strong> zugewiesen. Beim Import der nächsten Monatsdaten enthält die Spalte mit den Mengenangaben plötzlich Werte mit Dezimalstellen. Die werden automatisch abgeschnitten, da <em>Ganze Zahl</em> eingestellt ist. Eine Verfälschung der Daten ist die Folge.<br />
2) Für die Spalte <em>Menge</em> wurde <strong>Ganze Zahl</strong> festgelegt, aber beim nächsten Import stehen in der Spalte Menge solche Einträge wie <em>1 Kiste</em> oder <em>1 Karton</em>. Das hat Fehler zur Folge, die das Aktualisieren der Daten behindern.</p>
<p>Dies zeigt, dass die Kontrolle der Datentypen in zwei Schritten erfolgen muss: 1) beim Aufbau der Abfrage und 2) beim Import neuer Daten. WIE das geht, zeige ich in diesem Beitrag.</p>
<p><div id="attachment_5007" style="width: 1281px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5007" class="wp-image-5007 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/1_FalscheDatentypen.png" alt="Datentyp beim Erstellen der Analyse gezielt einstellen [1] und beim Update kontrollieren [2]" width="1271" height="425" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/1_FalscheDatentypen.png 1271w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/1_FalscheDatentypen-300x100.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/1_FalscheDatentypen-1024x342.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/1_FalscheDatentypen-768x257.png 768w" sizes="auto, (max-width: 1271px) 100vw, 1271px" /><p id="caption-attachment-5007" class="wp-caption-text">Datentyp beim Erstellen der Analyse gezielt einstellen [1] und beim Update kontrollieren [2]</p></div>&nbsp;<br />
<span id="more-5000"></span></p>
<h3>Wichtige Voreinstellung: Den Automatismus von Power Query abstellen</h3>
<p>Beim Einlesen von Daten versucht Power Query, den effizientesten Datentyp einzustellen – egal, ob in Power BI Desktop oder Excel.</p>
<ul>
<li>Ist die Quelle eine Datenbank, dann sind die Datentypen schon vorgegeben und alles sollte problemlos funktionieren.</li>
<li>Anders ist es mit unstrukturierten Daten wie XLSX, CSV oder TXT. Standardmäßig ist in Power Query die automatische Datentyperkennung für unstrukturierte Quellen aktiviert. Die Datentypen müssen daher auf jeden Fall kontrolliert und gegebenenfalls geändert werden.</li>
</ul>
<p>Der richtige Datentyp führt nicht nur zu einer besseren Performance, sondern ist auch entscheidend für DAX-Berechnungen. Wird beispielsweise der Datentyp Dezimalzahl für eine Spalte gewählt, die nur ganze Zahlen beinhaltet, ist das nicht sehr effizient, da mehr Speicherplatz benötigt wird.</p>
<p>TIPP: Die automatische Typerkennung im Power Query-Editor lässt sich über <strong>Datei</strong> &gt; <strong>Optionen und Einstellungen</strong> &gt; <strong>Optionen</strong> ausschalten.</p>
<div id="attachment_5008" style="width: 1103px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5008" class="wp-image-5008 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/2_Automatische_Datentyperkennung_ausschalten.png" alt="Die automatische Datentyperkennung kann in den Power Query-Optionen ausgeschaltet werden" width="1093" height="218" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/2_Automatische_Datentyperkennung_ausschalten.png 1093w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/2_Automatische_Datentyperkennung_ausschalten-300x60.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/2_Automatische_Datentyperkennung_ausschalten-1024x204.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/2_Automatische_Datentyperkennung_ausschalten-768x153.png 768w" sizes="auto, (max-width: 1093px) 100vw, 1093px" /><p id="caption-attachment-5008" class="wp-caption-text">Die automatische Datentyperkennung kann in den Power Query-Optionen ausgeschaltet werden</p></div>
<h3>Schritt 1: »Data Profiling« nutzen, um den optimalen Datentyp einzustellen</h3>
<p>Woher weiß ich, welcher Datentyp der richtige ist? Hier hilft das »Data Profiling«.</p>
<div id="attachment_5009" style="width: 856px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5009" class="wp-image-5009 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/3_Optimaler_Datentyp.png" alt="Den Datentyp Any (Symbol: ABC123) durch einen optimalen Datentyp ersetzen" width="846" height="401" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/3_Optimaler_Datentyp.png 846w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/3_Optimaler_Datentyp-300x142.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/3_Optimaler_Datentyp-768x364.png 768w" sizes="auto, (max-width: 846px) 100vw, 846px" /><p id="caption-attachment-5009" class="wp-caption-text">Den Datentyp Any (Symbol: ABC123) durch einen optimalen Datentyp ersetzen</p></div>
<p>&nbsp;</p>
<p>So gehe ich vor, um den optimalen Datentyp – hier für die Zahlenspalte Menge – zu finden:</p>
<ul>
<li>Ich wähle zunächst den größten Datentyp für Zahl aus, nämlich <strong>Dezimalzahl</strong>.</li>
<li>Um sicherzugehen, dass diese Spalte auch keine anderen Daten außer Zahlen enthält, prüfe ich zunächst die Spaltenqualität über <strong>Ansicht</strong> [1] und Häkchen bei <strong>Spaltenqualität</strong> [2].</li>
<li>Da die Spaltenqualität standardmäßig nur auf den ersten 1.000 Zeilen geprüft wird [3], stelle ich <strong>Spaltenprofilerkennung basierend auf dem gesamten Dataset</strong> [4] ein.</li>
</ul>
<div id="attachment_5002" style="width: 905px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5002" class="wp-image-5002 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/4_Spaltenqualitaet_Pruefen.png" alt="Nach dem Einstellen des Datentyps zunächst die Daten auf Gültigkeit prüfen mit Hilfe der Ansicht Spaltenqualität" width="895" height="601" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/4_Spaltenqualitaet_Pruefen.png 895w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/4_Spaltenqualitaet_Pruefen-300x201.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/4_Spaltenqualitaet_Pruefen-768x516.png 768w" sizes="auto, (max-width: 895px) 100vw, 895px" /><p id="caption-attachment-5002" class="wp-caption-text">Nach dem Einstellen des Datentyps zunächst die Daten auf Gültigkeit prüfen mit Hilfe der Ansicht <strong>Spaltenqualität</strong></p></div>
<ul>
<li>Zeigen sich oben in der Spaltenprofilanzeige [5] keine Fehler, kann es weitergehen mit dem Inspizieren des Zahlenbereichs. Ansonsten merze ich zunächst die Fehler in meiner Quelle aus.</li>
<li>Um die Zahlen besser inspizieren zu können, wähle ich unter <strong>Ansicht</strong> [1] &gt; <strong>Spaltenprofil</strong> [2] aus. Damit der komplette Bestand geprüft wird, stelle ich wieder <strong>Spaltenprofilerkennung basierend auf dem gesamten Dataset</strong> [3] ein.</li>
<li>Jetzt kann ich mir mit Hilfe der <strong>Spaltenstatistik</strong> [4] beispielsweise Min- und Max-Werte ansehen und eventuell überschrittene Grenzwerte erkennen. Die <strong>Wertverteilung</strong> [5] gibt Auskunft über die verschiedenen vorkommenden Werte. Hier sehe ich, dass nur ganze Zahlen bei den Mengenangaben verwendet werden.</li>
</ul>
<div id="attachment_5003" style="width: 926px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5003" class="wp-image-5003 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/5_Spaltenprofil_Pruefen.png" alt="Mit Hilfe der Ansicht Spaltenprofil können überschrittene Grenzwerte erkannt und die vorhandenen Werte eingesehen werden" width="916" height="964" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/5_Spaltenprofil_Pruefen.png 916w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/5_Spaltenprofil_Pruefen-285x300.png 285w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/5_Spaltenprofil_Pruefen-768x808.png 768w" sizes="auto, (max-width: 916px) 100vw, 916px" /><p id="caption-attachment-5003" class="wp-caption-text">Mit Hilfe der Ansicht <strong>Spaltenprofil</strong> können überschrittene Grenzwerte erkannt und die vorhandenen Werte eingesehen werden</p></div>
<ul>
<li>Bin ich mir dann sicher, dass der Zahlentyp Ganze Zahl ausreicht, ersetze ich den Datentyp <strong>Dezimalzahl</strong> für die Menge Spalte durch den Datentyp <strong>Ganze Zahl</strong>.</li>
</ul>
<h3>Schritt 2: Fehler und unbemerkte Datenverfälschungen beim Import weiterer Daten vermeiden</h3>
<p>Kommen neue Daten hinzu, ist nicht sicher, ob der eingestellte Datentyp – beispielsweise <strong>Ganze Zahl </strong>– noch passt. Daher muss zeitgleich mit dem Einlesen neuer Daten eine Prüfung mitlaufen, die anzeigt, ob unerwartete Daten dabei sind, bevor später die Analyse beginnt. So gehe ich vor:</p>
<ul>
<li>Ich lese die Datenquelle erneut ein, ohne Datentypänderungen vorzunehmen und benenne sie in diesem Beispiel mit <em>Mengenangaben_Pruefen</em>.</li>
<li>Nun markiere ich alle Spalten, die für das Identifizieren fehlerbehafteter Datensätze nötig sind, hier die Spalte <em>EinkBeleg</em> und die Spalte <em>Menge</em>. Per Rechtsklick im markierten Spaltenkopf wähle ich <strong>Andere Spalten entfernen</strong>.</li>
<li>Über <strong>Spalte hinzufügen &gt; Benutzerdefinierte Spalte</strong> erstelle ich eine Formel, die mir in diesem Fall ausgibt, ob es sich um eine <strong>Dezimalzahl</strong>, eine <strong>Ganze Zahl</strong>, einen <strong>Text</strong> oder einen <strong>anderen Datentyp</strong> handelt.</li>
<li>Die Prüfung auf <strong>Dezimalzahl</strong> nehme ich vor, indem ich von der Menge die auf 0 Nachkommastellen gerundete Zahl abziehe. Damit die Berechnungen im Fall von Text oder einem anderen Datentyp nicht zu einem Fehler führen, prüfe ich vor der Berechnung mit »is number«, ob Menge eine Zahl ist.</li>
</ul>
<div id="attachment_5004" style="width: 887px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5004" class="wp-image-5004 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/6_Benutzerdefinierte_Spalte.png" alt="Per Formel wird auf verschiedene Datentypen geprüft, die eventuell von Ganze Zahl abweichen" width="877" height="551" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/6_Benutzerdefinierte_Spalte.png 877w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/6_Benutzerdefinierte_Spalte-300x188.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/6_Benutzerdefinierte_Spalte-768x483.png 768w" sizes="auto, (max-width: 877px) 100vw, 877px" /><p id="caption-attachment-5004" class="wp-caption-text">Per Formel wird auf verschiedene Datentypen geprüft, die eventuell von <strong>Ganze Zahl</strong> abweichen</p></div>
<ul>
<li>Das Ergebnis dieser Abfrage sind drei Spalten.</li>
<li>Um alle Einträge zu sehen, die nicht meinem eingestellten Datentyp <strong>Ganze Zahl</strong> entsprechen, filtere [1] ich die neue Spalte <em>Datentyp</em> per Textfilter [2] auf alle Einträge, die nicht <strong>Ganze Zahl</strong> sind [3] [4].</li>
</ul>
<div id="attachment_5005" style="width: 1255px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5005" class="wp-image-5005 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/7_Filtern.png" alt="Die neu erstellte Prüfspalte auf alle Einträge ungleich Ganze Zahl filtern" width="1245" height="782" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/7_Filtern.png 1245w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/7_Filtern-300x188.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/7_Filtern-1024x643.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/7_Filtern-768x482.png 768w" sizes="auto, (max-width: 1245px) 100vw, 1245px" /><p id="caption-attachment-5005" class="wp-caption-text">Die neu erstellte Prüfspalte auf alle Einträge ungleich Ganze Zahl filtern</p></div>
<ul>
<li>Das Ergebnis der Abfrage kann ich mir in Excel <strong>als Tabelle laden</strong>.</li>
<li>In Power BI Desktop erstelle ich eine Prüfseite mit <strong>Tabelle</strong> als <strong>Visual</strong>. So habe ich stets die Ausreißer in dieser Spalte im Blick und kann sie korrigieren, bevor sie die Analyse verfälschen.</li>
</ul>
<div id="attachment_5006" style="width: 775px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-5006" class="wp-image-5006 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/8_Kontrollabfragen_NEU.png" alt="Kontrollabfragen, die Ausreißer in den Mengenangaben aufdecken" width="765" height="221" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/08/8_Kontrollabfragen_NEU.png 765w, https://www.huegemann-informatik.de/wp-content/uploads/2025/08/8_Kontrollabfragen_NEU-300x87.png 300w" sizes="auto, (max-width: 765px) 100vw, 765px" /><p id="caption-attachment-5006" class="wp-caption-text">Kontrollabfragen, die Ausreißer in den Mengenangaben aufdecken</p></div>
<h4>Fazit</h4>
<p>Das bewusste Setzen, Überprüfen und regelmäßige Kontrollieren der Datentypen in Power Query ist essenziell, um Fehler beim Aufbereiten und Analysieren der Daten zu vermeiden. Data Profiling und eine Kontrollabfrage – wie beispielhaft oben gezeigt – helfen, potenzielle Fehlerquellen frühzeitig zu erkennen und auszuschalten.</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-falsche-datentypen-drei-tipps-die-das-verhindern/">Power Query: Falsche Datentypen? Drei Tipps, die das verhindern</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Power Query: Spalten entfernen ja, aber bitte richtig</title>
		<link>https://www.huegemann-informatik.de/power-query-spalten-entfernen-ja-aber-bitte-richtig/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Mon, 30 Jun 2025 16:46:40 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Power BI]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[Abfragen robust machen]]></category>
		<category><![CDATA[Abfrageschritt nachbearbeiten]]></category>
		<category><![CDATA[Andere Spalten entfernen]]></category>
		<category><![CDATA[nachhaltige Abfrage]]></category>
		<category><![CDATA[Power Query Rezept]]></category>
		<category><![CDATA[Spalten auswählen]]></category>
		<category><![CDATA[Spalten entfernen]]></category>
		<category><![CDATA[Table.RemoveColumns]]></category>
		<category><![CDATA[Table.SelectColumns]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/?p=4986</guid>

					<description><![CDATA[<p>Kürzlich hatte ich im Kurs eine spannende Diskussion zum Entfernen von Spalten. Die Frage war: Was tun, wenn sich nach dem Entfernen mehrerer Spalten herausstellt, dass es eine zu viel war? Den Abfrageschritt löschen? Oder lässt der sich nachträglich noch bearbeiten? Meine Antwort: &#8222;Kommt drauf an&#8220;! Nämlich darauf, WIE die Spalten entfernt wurden.&#160;Das klingt vielleicht [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-spalten-entfernen-ja-aber-bitte-richtig/">Power Query: Spalten entfernen ja, aber bitte richtig</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Kürzlich hatte ich im Kurs eine spannende Diskussion zum Entfernen von Spalten. Die Frage war: Was tun, wenn sich nach dem Entfernen mehrerer Spalten herausstellt, dass es eine zu viel war? Den Abfrageschritt löschen? Oder lässt der sich nachträglich noch bearbeiten?</p>
<p>Meine Antwort: &#8222;Kommt drauf an&#8220;! Nämlich darauf, WIE die Spalten entfernt wurden.&nbsp;Das klingt vielleicht ein wenig rätselhaft, aber keine Sorge, ich erkläre es gleich.</p>
<div id="attachment_4988" style="width: 932px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4988" class="wp-image-4988 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/1_zu_loeschende_Spalten.png" alt="Spalten entfernen, aber welche ist die beste Methode?" width="922" height="238" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/1_zu_loeschende_Spalten.png 922w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/1_zu_loeschende_Spalten-300x77.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/1_zu_loeschende_Spalten-768x198.png 768w" sizes="auto, (max-width: 922px) 100vw, 922px" /><p id="caption-attachment-4988" class="wp-caption-text">Spalten entfernen, aber welche Methode ist die beste?</p></div>
<p><span id="more-4986"></span></p>
<h3>Ein wichtiger Gedanke vorab</h3>
<p>Die Erfahrung besagt: Je weniger Spalten es sind, desto effizienter wird die Arbeit in der Mappe und im Datenmodell.&nbsp;Beim Entfernen von Spalten ist es jedoch ratsam, den Abfrageschritt so anzulegen, dass er wenig fehleranfällig und auch im Nachhinein noch leicht anpassbar ist.</p>
<h3>Weg 1: Alle zu löschenden Spalten markieren und entfernen</h3>
<p>Wenn bei der Datenaufbereitung Spalten störend sind, gehen viele intuitiv wie folgt vor:</p>
<ul>
<li>Von links nach rechts die Spalten markieren, die für die Analyse unnötig sind.</li>
<li>Dann per Rechtsklick im Spaltenkopf oder über die Registerkarte <strong>Start</strong> den Befehl <strong>Spalten entfernen</strong> anklicken.</li>
</ul>
<div id="attachment_4989" style="width: 849px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4989" class="wp-image-4989 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/2_SpaltenEntfernen.png" alt="Mit dem Befehl Spalten entfernen wird im M-Code der Befehl Table.RemoveColumns benutzt und es werden alle nicht relevanten Spalten in einer Liste aufgeführt" width="839" height="451" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/2_SpaltenEntfernen.png 839w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/2_SpaltenEntfernen-300x161.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/2_SpaltenEntfernen-768x413.png 768w" sizes="auto, (max-width: 839px) 100vw, 839px" /><p id="caption-attachment-4989" class="wp-caption-text">Mit dem Befehl <strong>Spalten entfernen</strong> wird im M-Code der Befehl <strong>Table.RemoveColumns</strong> benutzt und es werden alle nicht relevanten Spalten in einer Liste aufgeführt</p></div>
<p>&nbsp;</p>
<p>Was passiert eigentlich beim Anklicken des Befehls <strong>Spalten entfernen</strong>?</p>
<ul>
<li>Im M-Code erscheint die Anweisung <strong>Table.<span style="color: #000000;">Remove</span>Columns </strong></li>
<li>Oben in der Bearbeitungsleiste werden alle zu entfernenden Spalten in einer geschweiften Klammer aufgelistet.</li>
</ul>
<p>Allerdings hat diese scheinbar »intuitive« Variante erhebliche <strong>Nachteile</strong>:</p>
<ul>
<li>Die zu löschenden Spalten müssen einzeln und mit gedrückter Strg-Taste markiert werden. Bei einer größeren Spaltenanzahl ist das recht mühsam.</li>
<li>Alle Spalten, die gelöscht werden sollen, werden mit ihrem Namen angesprochen. Dies ist ein Problem: falls diese Spalten in einem Update veränderte Namen erhalten, führt das zu einem Aktualisierungsfehler.</li>
<li>Wird beispielsweise später doch das Feld <em>Firmeneigen</em> benötigt, hält Power Query kein Zahnrädchen zur Bearbeitung des Befehls bereit. Somit bleibt nur, den M-Code in der Bearbeitungsleiste zu ändern, was schnell zu Fehlern führen kann. Oder aber der Abfrageschritt muss per Klick auf das <strong>x</strong> ganz gelöscht und dann neu erstellt werden.</li>
</ul>
<div id="attachment_4990" style="width: 1449px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4990" class="wp-image-4990 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/3_EntfernteSpaltenOhneZahnraedchen.png" alt="Beim Schritt Entfernte Spalten fehlt das Zahnrädchen zur Nachbearbeitung" width="1439" height="343" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/3_EntfernteSpaltenOhneZahnraedchen.png 1439w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/3_EntfernteSpaltenOhneZahnraedchen-300x72.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/3_EntfernteSpaltenOhneZahnraedchen-1024x244.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/3_EntfernteSpaltenOhneZahnraedchen-768x183.png 768w" sizes="auto, (max-width: 1439px) 100vw, 1439px" /><p id="caption-attachment-4990" class="wp-caption-text">Beim Schritt<strong> Entfernte Spalten</strong> fehlt das Zahnrädchen zur Nachbearbeitung</p></div>
<p>&nbsp;</p>
<h3>Weg 2: Die relevanten Spalten markieren und Andere entfernen</h3>
<p>Angenommen, ich habe meine durchzuführende Analyse vor Augen und möchte mich daher auf die Spalten konzentrieren, die relevant sind. So gehe ich vor:</p>
<ul>
<li>Ich markiere von links nach rechts mit gedrückter Strg-Taste die Spalten, die für die Analyse benötigt werden.</li>
<li>Per Rechtsklick im Spaltenkopf oder über <strong>Start</strong> wähle ich <strong>Andere Spalten entfernen</strong>.</li>
</ul>
<div id="attachment_4991" style="width: 1056px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4991" class="wp-image-4991 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/4_AusgewaehlteSpalten.png" alt="Mit dem Befehl Andere Spalten entfernen wird im M-Code der Befehl Table.SelectColumns benutzt und es werden alle relevanten Spalten namentlich aufgeführt" width="1046" height="522" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/4_AusgewaehlteSpalten.png 1046w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/4_AusgewaehlteSpalten-300x150.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/4_AusgewaehlteSpalten-1024x511.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/4_AusgewaehlteSpalten-768x383.png 768w" sizes="auto, (max-width: 1046px) 100vw, 1046px" /><p id="caption-attachment-4991" class="wp-caption-text">Mit dem Befehl <strong>Andere Spalten entfernen</strong> wird im M-Code der Befehl <strong>Table.SelectColumns</strong> benutzt und es werden alle relevanten Spalten namentlich aufgeführt</p></div>
<p>Die <strong>Vorteile</strong> dieser zweiten Variante:</p>
<ul>
<li>Beim Auswählen der Spalten konzentriere ich mich nur auf die, die gebraucht werden.</li>
<li>Diese Spalten werden mit ihren Namen angesprochen. Kommen mit einem Update andere Spalten hinzu, werden sie nicht berücksichtigt. Die Aktualisierung kann wie gewohnt laufen.</li>
<li>Wird beispielsweise das Feld <em>Firmeneigen</em> doch benötigt, hält Power Query das Zahnrädchen zur Bearbeitung des Abfrageschritts bereit.</li>
<li>Der Klick auf das Zahnrädchen [1] öffnet einen komfortablen Dialog mit Suchfeld [2], alphabetischer Sortiermöglichkeit [3] und anschließender Auswahl [4] der gewünschten Spalten.</li>
</ul>
<div id="attachment_4994" style="width: 1451px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4994" class="wp-image-4994 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/5_AusgewaehlteSpalten_Zahnraedchen.png" alt="Beim Abfrageschritt Andere entfernte Spalten steht ein Zahnrädchen zum Nachbearbeiten mit einem komfortablen Auswahldialog zur Verfügung" width="1441" height="594" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/5_AusgewaehlteSpalten_Zahnraedchen.png 1441w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/5_AusgewaehlteSpalten_Zahnraedchen-300x124.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/5_AusgewaehlteSpalten_Zahnraedchen-1024x422.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/5_AusgewaehlteSpalten_Zahnraedchen-768x317.png 768w" sizes="auto, (max-width: 1441px) 100vw, 1441px" /><p id="caption-attachment-4994" class="wp-caption-text">Beim Abfrageschritt <strong>Andere entfernte Spalten</strong> steht ein Zahnrädchen zum Nachbearbeiten mit einem komfortablen Auswahldialog zur Verfügung</p></div>
<h3>Weg 3: Die relevanten Spalten suchen und markieren</h3>
<p>Noch einfacher ist es jedoch, per Dialog die gewünschten Spalten per Klick auszuwählen.</p>
<ul>
<li>Dazu wähle ich <strong>Start</strong> &gt; <strong>Spalten auswählen</strong>.</li>
<li>Dort <span style="color: #ff0000;"><span style="color: #000000;">entferne</span> </span>ich das Häkchen für <strong>Alle Spalten auswählen</strong></li>
<li>Jetzt kann ich nach Spalten suchen oder diese alphabetisch sortieren, um schnell alle relevanten mit einem Häkchen zu versehen.</li>
</ul>
<p>Dieser Weg, die Spalten per Dialogfeld auszuwählen, hat die gleichen Vorteile wie Weg 2: sowohl beim Auswählen der Spalten als auch beim Nachbearbeiten steht ein komfortabler Dialog zu Verfügung.</p>
<div id="attachment_4993" style="width: 1062px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4993" class="wp-image-4993 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/6_Spalten_Auswaehlen.png" alt="Der Befehl Spalten auswählen führt direkt zu diesem komfortablen Auswahldialog" width="1052" height="700" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/6_Spalten_Auswaehlen.png 1052w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/6_Spalten_Auswaehlen-300x200.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/6_Spalten_Auswaehlen-1024x681.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/6_Spalten_Auswaehlen-768x511.png 768w" sizes="auto, (max-width: 1052px) 100vw, 1052px" /><p id="caption-attachment-4993" class="wp-caption-text">Der Befehl <strong>Spalten auswählen</strong> führt direkt zu diesem komfortablen Auswahldialog</p></div>
<h3>Fazit</h3>
<ul>
<li>Beim Entfernen von Spalten in Power Query lohnt es sich, strategisch vorzugehen.</li>
<li>Zwar erscheint das manuelle Markieren und Löschen über <strong>Spalten entfernen</strong> zunächst intuitiv, doch es birgt Risiken hinsichtlich Wartbarkeit und Fehleranfälligkeit – besonders bei Änderungen im Datenmodell.</li>
<li>Deutlich robuster und flexibler sind die Varianten mit <strong>Andere Spalten entfernen</strong> oder die gezielte Auswahl über den Dialog <strong>Spalten auswählen</strong>.</li>
<li>Beide Varianten ermöglichen eine einfachere Nachbearbeitung und sind weniger anfällig gegenüber künftigen Änderungen.</li>
</ul>
<p>Wer also effizient und nachhaltig arbeiten möchte, sollte gezielt <strong>Spalten behalten statt störende einzeln zu löschen</strong>.</p>
<p>&nbsp;</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-spalten-entfernen-ja-aber-bitte-richtig/">Power Query: Spalten entfernen ja, aber bitte richtig</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Power Query: Berechnungen für eine variable Anzahl von Spalten – so bleiben Abfragen flexibel!</title>
		<link>https://www.huegemann-informatik.de/power-query-berechnungen-fuer-eine-variable-anzahl-von-spalten-so-bleiben-abfragen-flexibel/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Thu, 12 Jun 2025 14:06:18 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[Power BI]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[dynamische Abfrage]]></category>
		<category><![CDATA[List.Sum]]></category>
		<category><![CDATA[Power Query Rezept]]></category>
		<category><![CDATA[Record.RemoveFields]]></category>
		<category><![CDATA[Record.ToList]]></category>
		<category><![CDATA[Spalten dynamisch addieren]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/?p=4971</guid>

					<description><![CDATA[<p>Wer mit Daten arbeitet, stößt mitunter auf folgende Herausforderung: eine sich ändernde Anzahl von Spalten soll dynamisch verarbeitet werden. Beispielsweise kommen wöchentlich oder monatlich neue Spalten hinzu. Wie lässt sich da eine effiziente Abfrage finden, die ohne manuelle Anpassungen auskommt? Power Query bietet auch dafür eine Lösung. In diesem Blogbeitrag zeige ich, wie sich Spalten [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-berechnungen-fuer-eine-variable-anzahl-von-spalten-so-bleiben-abfragen-flexibel/">Power Query: Berechnungen für eine variable Anzahl von Spalten – so bleiben Abfragen flexibel!</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Wer mit Daten arbeitet, stößt mitunter auf folgende Herausforderung: eine sich ändernde Anzahl von Spalten soll dynamisch verarbeitet werden. Beispielsweise kommen wöchentlich oder monatlich neue Spalten hinzu. Wie lässt sich da eine effiziente Abfrage finden, die ohne manuelle Anpassungen auskommt?<br />
Power Query bietet auch dafür eine Lösung. In diesem Blogbeitrag zeige ich, wie sich Spalten gleichen Typs in Power Query automatisiert addieren lassen, und zwar unabhängig davon, wie viele Spalten es gerade sind.</p>
<div id="attachment_4970" style="width: 1164px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4970" class="wp-image-4970 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/1_Summe_dynamisch.png" alt="Neu hinzukommende Kalenderwochen sollen automatisch in die Summe einbezogen werden" width="1154" height="571" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/1_Summe_dynamisch.png 1154w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/1_Summe_dynamisch-300x148.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/1_Summe_dynamisch-1024x507.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/1_Summe_dynamisch-768x380.png 768w" sizes="auto, (max-width: 1154px) 100vw, 1154px" /><p id="caption-attachment-4970" class="wp-caption-text">Neu hinzukommende Kalenderwochen sollen automatisch in die Summe einbezogen werden</p></div>
<p><span id="more-4971"></span></p>
<h3>Die Aufgabe: Wöchentliche Werte dynamisch summieren</h3>
<p>Die Abbildung oben zeigt, worum es geht:</p>
<ul>
<li>In eine Produktliste werden wöchentlich neue Verkaufszahlen eingetragen.</li>
<li>Je Produkt soll in der Spalte <em>Summe</em> das Gesamtergebnis berechnet werden.</li>
<li>Das Gesamtergebnis soll sich dynamisch anpassen, wenn neue (Wochen-)Spalten hinzukommen.</li>
</ul>
<h3>1) Die Summe der Verkaufszahlen für die bisherigen Kalenderwochen berechnen</h3>
<p>Ich lade die Produktliste nach Power Query. Dort addiere ich die Werte der bisher vorliegenden Kalenderwochenspalten wie folgt:</p>
<ul>
<li>Über <strong>Daten</strong> &gt; <strong>Daten abrufen</strong> &gt; <strong>Aus Tabelle/Bereich</strong> lade ich die Tabelle nach Power Query und benenne die Abfrage um in <em>Produkte</em>.</li>
<li>Ich markiere die Spalten <em>KW01</em> bis <em>KW04</em> [1] und wähle per Rechtsklick in einen der Spaltenköpfe <strong>Summe</strong> [2].</li>
<li>Um einen Extraschritt einzusparen, ändere ich den automatisch erstellen Spaltennamen &#8222;Addition&#8220; in der Bearbeitungsleiste um zu &#8222;Summe&#8220; [3].</li>
</ul>
<div id="attachment_4967" style="width: 1259px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4967" class="wp-image-4967 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/2_ListSum_Kalenderwochen.png" alt="Mit List.Sum werden die aktuellen Kalenderwochenspalten summiert" width="1249" height="750" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/2_ListSum_Kalenderwochen.png 1249w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/2_ListSum_Kalenderwochen-300x180.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/2_ListSum_Kalenderwochen-1024x615.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/2_ListSum_Kalenderwochen-768x461.png 768w" sizes="auto, (max-width: 1249px) 100vw, 1249px" /><p id="caption-attachment-4967" class="wp-caption-text">Mit List.Sum werden die aktuellen Kalenderwochenspalten summiert</p></div>
<h3>2) Die Summenberechnung dynamisch machen: Immer alle Spalten, aber ohne »Produkt«</h3>
<ul>
<li>Der eben erstellte <strong>List.Sum</strong>-Schritt ist noch nicht dynamisch, wenn neue Kalenderwochen hinzukommen.</li>
<li>Anstelle der bisherigen Kalenderwochen müssen daher bei der Summenbildung <strong>alle</strong> Spalten angesprochen werden <strong>außer</strong> der Spalte Produkt.</li>
</ul>
<p>So gehe ich vor:</p>
<ul>
<li>Um auf die Spalten zu jedem Produkt zugreifen zu können, erstelle ich aus den Daten zu jedem der Produkte eine Liste.</li>
<li>Das erledige ich mit der Anweisung <strong>Record.ToList(_)</strong>.</li>
</ul>
<div id="attachment_4968" style="width: 1259px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4968" class="wp-image-4968 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/3_ListSum_Zugriff_auf_Record.png" alt="Mit Record.ToList wird eine Liste der Daten jeder Zeile erzeugt" width="1249" height="315" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/3_ListSum_Zugriff_auf_Record.png 1249w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/3_ListSum_Zugriff_auf_Record-300x76.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/3_ListSum_Zugriff_auf_Record-1024x258.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/3_ListSum_Zugriff_auf_Record-768x194.png 768w" sizes="auto, (max-width: 1249px) 100vw, 1249px" /><p id="caption-attachment-4968" class="wp-caption-text">Mit Record.ToList wird eine Liste der Daten jeder Zeile erzeugt</p></div>
<ul>
<li>Die Spalte <em>Summe</em> weist nun Fehler auf, denn zu den Zahlen der Kalenderwochen wird auch der Name des Produkts addiert.</li>
<li>Dies behebe ich, indem ich von der eben erzeugten Liste mit Hilfe der Funktion <strong>Record.RemoveFields</strong> die Spalte <em>Produkt</em> entferne.</li>
</ul>
<div id="attachment_4969" style="width: 1261px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-4969" class="wp-image-4969 size-full" src="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/4_ListSum_ohne_Produktspalte.png" alt="Mit Record.RemoveFields bestimmte Spalten von der Summenbildung ausschließen" width="1251" height="316" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/06/4_ListSum_ohne_Produktspalte.png 1251w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/4_ListSum_ohne_Produktspalte-300x76.png 300w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/4_ListSum_ohne_Produktspalte-1024x259.png 1024w, https://www.huegemann-informatik.de/wp-content/uploads/2025/06/4_ListSum_ohne_Produktspalte-768x194.png 768w" sizes="auto, (max-width: 1251px) 100vw, 1251px" /><p id="caption-attachment-4969" class="wp-caption-text">Mit Record.RemoveFields bestimmte Spalten von der Summenbildung ausschließen</p></div>
<p>&nbsp;</p>
<p><strong>TIPP:</strong> Mit der Funktion <strong>Record.RemoveFields </strong>lassen sich auch mehr als eine Spalte ausschließen. Dazu werden alle betreffenden Spaltennamen kommagetrennt in die geschweiften Klammern gesetzt.</p>
<h3>Wo werden solche dynamischen Abfragen benötigt?</h3>
<ul>
<li><strong>Umsatzanalyse mit monatlichen Werten</strong><br />
Ein Unternehmen exportiert monatlich aus einem ERP-System Umsatzzahlen. Mit Power Query lassen sich Berechnungen so einrichten, dass sie automatisch auch die neuen Monate berücksichtigen.</li>
<li><strong>KPI-Tracking für verschiedene Produkte oder Filialen</strong><br />
Ein Reporting erfasst Verkaufszahlen für verschiedene Filialen oder Produktgruppen. Neue Filialen oder Produkte werden als zusätzliche Spalten eingefügt. Statt die Berechnung nun jedes Mal manuell anzupassen, sorgt eine dynamische Abfrage dafür, dass neue Spalten automatisch in die Berechnungen integriert werden.</li>
<li><strong>Kostenverteilung über verschiedene Abteilungen</strong><br />
In einem Unternehmen werden Budgets pro Abteilung verwaltet. Jede Abteilung hat eine eigene Spalte. Kommt eine neue Abteilung hinzu, wird sie automatisch in Berechnungen wie Durchschnitts- oder Summenbildung einbezogen.</li>
<li><strong>Portfolio-Performance-Analyse für verschiedene Anlageklassen</strong><br />
Ein Investment-Reporting enthält die Wertentwicklung verschiedener Anlageklassen (z. B. Aktien, Anleihen, Fonds) als separate Spalten. Mit der Zeit kommen neue Anlageklassen oder Finanzprodukte hinzu. Dank der Dynamik werden Berechnungen wie Gesamtrendite, Durchschnittsrendite oder Risikokennzahlen automatisch angepasst.</li>
</ul>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-berechnungen-fuer-eine-variable-anzahl-von-spalten-so-bleiben-abfragen-flexibel/">Power Query: Berechnungen für eine variable Anzahl von Spalten – so bleiben Abfragen flexibel!</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
