<?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>Mon, 16 Mar 2026 15:39:00 +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: 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 fetchpriority="high" 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="(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 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="(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 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="(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>
		<item>
		<title>Power Query: Merkmale über mehrere Spalten hinweg filtern</title>
		<link>https://www.huegemann-informatik.de/power-query-merkmale-ueber-mehrere-spalten-hinweg-filtern/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Mon, 17 Feb 2025 14:42:43 +0000</pubDate>
				<category><![CDATA[Excel]]></category>
		<category><![CDATA[Power BI]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[Comparer.OrdinalIgnoreCase]]></category>
		<category><![CDATA[Groß-/Kleinschreibung]]></category>
		<category><![CDATA[List.ContainsAll]]></category>
		<category><![CDATA[List.ContainsAny]]></category>
		<category><![CDATA[List.Skip]]></category>
		<category><![CDATA[logische Filter]]></category>
		<category><![CDATA[Merkmale ausschliessen]]></category>
		<category><![CDATA[Merkmale einschliessen]]></category>
		<category><![CDATA[Merkmale filtern]]></category>
		<category><![CDATA[Record.ToList]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/blog/?p=3710</guid>

					<description><![CDATA[<p>Wer hat schon mal versucht, eine Tabelle in Excel oder Power BI nach Merkmalen zu filtern, die über mehrere Spalten verteilt sind? Standardfilter stoßen hier an ihre Grenzen, denn sie funktionieren nur für je eine Spalte. Mit umständlichen Workarounds und Wenn-Hilfsspalten ließe sich das Problem lösen. Oder aber in Power Query mit schlauen List-Funktionen. Im [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-merkmale-ueber-mehrere-spalten-hinweg-filtern/">Power Query: Merkmale über mehrere Spalten hinweg filtern</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Wer hat schon mal versucht, eine Tabelle in Excel oder Power BI nach Merkmalen zu filtern, die über mehrere Spalten verteilt sind? Standardfilter stoßen hier an ihre Grenzen, denn sie funktionieren nur für je eine Spalte. Mit umständlichen Workarounds und Wenn-Hilfsspalten ließe sich das Problem lösen. Oder aber in Power Query mit schlauen List-Funktionen.</p>
<p>Im heutigen Rezept zeige ich, wie Filter dynamisch gestaltet werden, um Daten über mehrere Spalten nach bestimmten Kriterien zu ermitteln oder auszuschließen.</p>
<p>Die folgende Produktliste illustriert das Problem: Die Merkmale für Materialen wurden über mehrere Spalten erfasst. Gesucht werden die Produkte, in denen bestimmte Materialien auf jeden Fall vorkommen – hier Holz und Metall – und andere auf keinen Fall – hier Kunststoff.</p>
<div id="attachment_48035" style="width: 952px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/02/1_Start_V3.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-48035" class="size-full wp-image-48035" src="https://huegemann-informatik.de/wp-content/uploads/2025/02/1_Start_V3.png" alt="" width="942" height="406" /></a><p id="caption-attachment-48035" class="wp-caption-text">Merkmale in verschiedenen Spalten machen das Filtern zum Aus- oder Abwählen von bestimmten Merkmalen kompliziert</p></div>
<p><span id="more-3710"></span></p>
<h2>Die Nadel im (Daten-)Heuhaufen finden: So gehe ich vor</h2>
<ul>
<li>In zwei Listen hinterlege ich die Materialien, die die gesuchten Produkte unbedingt enthalten (<em>tbl_Verpflichtend</em>) bzw. auf keinen Fall aufweisen sollen (<em>tbl_Ausschluss</em>).</li>
<li>Auf Basis dieser beiden Listen wird dann die Produktliste (<em>tbl_Produkte</em>) passend gefiltert.</li>
</ul>
<h2>Liste nach gewünschten Materialien filtern</h2>
<p>Zunächst lade ich 1) die Produktliste, 2) die Liste mit den verpflichtenden Materialien und 3) die Liste mit den auszuschließenden Materialien nach Power Query. Dort prüfe ich mit <strong>List</strong>-Funktionen pro Zeile, ob die im jeweiligen Produkt enthaltenen Materialien passend sind. So gehe ich vor:</p>
<ul>
<li>Über <strong>Daten</strong> &gt; <strong>Daten abrufen</strong> &gt; <strong>Aus Tabelle/Bereich</strong> lade ich alle drei Tabellen nach Power Query und benenne die Abfragen <em>Produkte</em>, <em>Verpflichtend</em> und <em>Ausschluss</em>.</li>
<li>Als Datentyp für die relevanten Spalten wähle ich <strong>Text</strong>.</li>
<li>Über <strong>Spalte hinzufügen</strong> &gt; <strong>Benutzerdefinierte Spalte</strong> erstelle ich eine neue Spalte mit dem Namen <em>Passend</em>.</li>
<li>Bevor ich Listenfunktionen anwenden kann, erstelle ich aus den Daten zu jedem Produkt eine Liste. Das erledige ich mit der Anweisung <strong>Record.ToList(_)</strong>.</li>
</ul>
<div id="attachment_48021" style="width: 956px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/02/2_RecordToList.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-48021" class="size-full wp-image-48021" src="https://huegemann-informatik.de/wp-content/uploads/2025/02/2_RecordToList.png" alt="" width="946" height="479" /></a><p id="caption-attachment-48021" class="wp-caption-text">Alle Einträge in einer Zeile sind ein Record und werden mit Record.ToList in eine Liste transformiert</p></div>
<ul>
<li>Die Einträge jeder Zeile sind damit zu einer Liste geworden. Alle Einträge in einer Zeile sind ein <strong>Record</strong> und der Unterstrich <strong>_</strong> stellt den Bezug auf die aktuelle Zeile her.</li>
<li>Eine Vorschau auf das Ergebnis erhalte ich per Klick in eine Zelle mit List-Eintrag.</li>
</ul>
<div id="attachment_3718" style="width: 759px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3718" class="size-full wp-image-3718" src="https://huegemann-informatik.de/wp-content/uploads/2025/02/3_RecordToList2.png" alt="" width="749" height="316" /><p id="caption-attachment-3718" class="wp-caption-text">Per Klick in eine Zelle mit List-Eintrag lässt sich der Inhalt der jeweiligen Liste einsehen</p></div>
<ul>
<li>Um später nur die Materialspalten zu prüfen, entferne ich mit <strong>List.Skip</strong> und dem Parameter <strong>1</strong> den ersten Eintrag aus der Liste – nämlich den Eintrag mit dem Namen des Produktes.</li>
</ul>
<div id="attachment_48015" style="width: 758px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/02/4_ListSkip.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-48015" class="size-full wp-image-48015" src="https://huegemann-informatik.de/wp-content/uploads/2025/02/4_ListSkip.png" alt="" width="748" height="387" /></a><p id="caption-attachment-48015" class="wp-caption-text">Mit <strong>List.Skip</strong> und dem Paramater <strong>1</strong> den ersten Eintrag in der Liste übergehen</p></div>
<ul>
<li>Nun prüfe ich mit der Funktion <strong>List.ContainsAll</strong>, ob die Liste der Materialien eines Produkts alle Elemente aus der Liste <em>Verpflichtend[Material]</em> enthält. Die Funktion liefert dann den Wert <strong>TRUE</strong> oder <strong>FALSE</strong> zurück.</li>
</ul>
<div id="attachment_48016" style="width: 838px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/02/5_ListContainsAll.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-48016" class="size-full wp-image-48016" src="https://huegemann-informatik.de/wp-content/uploads/2025/02/5_ListContainsAll.png" alt="" width="828" height="385" /></a><p id="caption-attachment-48016" class="wp-caption-text">Mit <strong>List.ContainsAll</strong> für jedes Produkt die Liste seiner Materialien prüfen, ob darin alle verpflichtenden Materialien enthalten sind</p></div>
<ul>
<li>Gleichzeitig soll auch sichergestellt werden, dass keine Materialien aus der Liste <em>Ausschluss[Material]</em> vorkommen.<br />
Dazu erweitere ich die Formel um eine UND-Bedingung mit der <strong>verneinten</strong> Funktion <strong>List.ContainsAny</strong> unter Angabe der Liste <em>Ausschluss[Material]</em>.</li>
</ul>
<div id="attachment_48017" style="width: 828px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/02/6_ListContainsAny.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-48017" class="size-full wp-image-48017" src="https://huegemann-informatik.de/wp-content/uploads/2025/02/6_ListContainsAny.png" alt="" width="818" height="460" /></a><p id="caption-attachment-48017" class="wp-caption-text">Mit <strong>not List.ContainsAny</strong> für jedes Produkt die Liste seiner Materialien prüfen, ob sie ein auszuschließendes Material&nbsp; enthält</p></div>
<ul>
<li>Nun muss nur noch die Spalte <em>Passend</em> nach <strong>TRUE</strong>-Werten gefiltert werden.<br />
Per Rechtsklick auf einen TRUE-Wert wähle ich <strong>Logische Filter</strong> &gt; <strong>Ist gleich</strong> und erhalte damit die Produkte mit den passenden Materialien.</li>
</ul>
<div id="attachment_48018" style="width: 631px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/02/7_PassendeFiltern.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-48018" class="size-full wp-image-48018" src="https://huegemann-informatik.de/wp-content/uploads/2025/02/7_PassendeFiltern.png" alt="" width="621" height="199" /></a><p id="caption-attachment-48018" class="wp-caption-text">Per Rechtsklick in der Spalte <em>Passend</em> die Liste der Produkte mit passenden Materialien filtern</p></div>
<ul>
<li>Die Spalte <em>Passend</em> wird nun nicht mehr benötigt und kann per Rechtsklick im Spaltenkopf entfernt werden.</li>
</ul>
<h2>Tipp 1: Fehler durch falsche Groß-/Kleinschreibung vermeiden</h2>
<ul>
<li>Power Query beachtet überall die Groß-/Kleinschreibung.</li>
<li>Ist ein Material beispielsweise in der Produktliste groß geschrieben und in der Verpflichtend-Liste klein, so wird dieses Material nicht gefunden. Die Filterung der passenden Produkte läuft fehl.</li>
<li>Um die Groß-/Kleinschreibung bei der Prüfung der Listeneinträge zu ignorieren, kann sowohl der Funktion <strong>List.ContainsAll</strong> als auch der Funktion <strong>List.ContainsAny</strong> der Parameter <strong>Comparer.OrdinalIgnoreCase</strong> mitgegeben werden.</li>
</ul>
<div id="attachment_48019" style="width: 838px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/02/8_ComparerIgnoreCase.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-48019" class="size-full wp-image-48019" src="https://huegemann-informatik.de/wp-content/uploads/2025/02/8_ComparerIgnoreCase.png" alt="" width="828" height="460" /></a><p id="caption-attachment-48019" class="wp-caption-text">Mit dem Parameter <strong>Comparer.OrdinalIgnoreCase</strong> die Groß-/Kleinschreibung unbeachtet lassen</p></div>
<h2>Tipp 2: Unerwünschte Ergebnisse bei Leereinträgen vermeiden</h2>
<ul>
<li>Enthalten die Tabelle <em>tbl_Verpflichtend</em> oder die Tabelle<em> tbl_Ausschluss</em> Leereinträge, so können diese ebenfalls zu einem falschen Filterergebnis führen.</li>
<li>Das lässt sich jeweils leicht beheben durch Filterung im Spaltenkopf der Spalte Material mit dem Befehl <strong>Leere entfernen</strong>.</li>
</ul>
<h3>Fazit und weitere Einsatzmöglichkeiten</h3>
<p>Die hier beschriebene Technik lässt in unterschiedlichsten Branchen und Szenarien nutzen. Hier drei Beispiele:</p>
<ul>
<li><strong>Kunden- und Vertriebsanalyse:</strong> Bei einer Messe wird das Interesse von Kunden an verschiedenen Produkten in mehreren Spalten erfasst (&#8222;Produkt X&#8220;, &#8222;Produkt Y&#8220;, &#8222;Produkt Z&#8220;). Nach der Messe sollen nur die Kunden selektiert werden, die mindestens an Produkt X interessiert sind, nicht aber an Produkt Z.</li>
<li><strong>Lager- und Bestandsmanagement:</strong> Ein Logistiker verwaltet Lagerbestände mit verschiedenen Eigenschaften: Gefahrgut, Verderblich, Schwer transportierbar. Es sollen Artikel gefunden werden, die mindestens eine bestimmte Eigenschaft besitzen, aber nicht als Gefahrgut klassifiziert sind.</li>
<li><strong>Personalmanagement und Schichtplanung:</strong> Die Qualifikationen von Mitarbeitern wird in mehreren Spalten erfasst (z. B. &#8222;Zertifikat für Maschine M8&#8220;, &#8222;Erfahrung mit Prozess P6&#8220;). Nun sollen nur Mitarbeiter gefunden werden, die mindestens eine bestimmte Qualifikation haben, aber nicht nur für eine bestimmte Maschine zertifiziert sind.</li>
</ul>
<h2>Interessiert an weiteren Tipps zu Power Query?</h2>
<p>Wer sein Wissen zu Power Query systematisch auf- und ausbauen will, kann dazu einen meiner Online-Kurse nutzen. <a href="https://www.office-kompetenz.de/veranstaltungen/" target="_blank" rel="noopener">Auf dieser Seite</a> ist das aktuelle Angebot zu finden.</p>
<p><strong>TIPP:</strong> Wer hier im Blog <strong>alle</strong> Rezepte zu Power Query finden möchte, gibt einfach oben rechts in das Suchfeld <span style="color: #0000ff;"><strong>Power-Query-Rezept</strong></span> ein.</p>
<p>&nbsp;</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-merkmale-ueber-mehrere-spalten-hinweg-filtern/">Power Query: Merkmale über mehrere Spalten hinweg filtern</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Power Query: E-Mail-Adressen aus Zeichenketten auslesen</title>
		<link>https://www.huegemann-informatik.de/power-query-e-mail-adressen-aus-zeichenketten-auslesen/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Thu, 30 Jan 2025 10:16:51 +0000</pubDate>
				<category><![CDATA[Excel]]></category>
		<category><![CDATA[Power BI]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[E-Mail-Adressen extrahieren]]></category>
		<category><![CDATA[List.Select]]></category>
		<category><![CDATA[List.Transform]]></category>
		<category><![CDATA[Text.Combine]]></category>
		<category><![CDATA[Text.Contains]]></category>
		<category><![CDATA[Text.Split]]></category>
		<category><![CDATA[Text.SplitAny]]></category>
		<category><![CDATA[Text.Start]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/blog/?p=3703</guid>

					<description><![CDATA[<p>Daten, die in Freitextfelder eingegeben wurden, enthalten oft Details, die gebraucht werden. Beispielsweise E-Mail-Adressen wie in der folgenden Abbildung. Doch wie lassen sich gezielt die E-Mail-Adressen aus diesen Daten auslesen? Wie können solche wertvollen Informationen für Marketingzwecke, Supportanfragen oder Analysen nutzbar gemacht werden? In meinem Rezept #25 zeige ich, wie in Power Query E-Mail-Adressen aus [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-e-mail-adressen-aus-zeichenketten-auslesen/">Power Query: E-Mail-Adressen aus Zeichenketten auslesen</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Daten, die in Freitextfelder eingegeben wurden, enthalten oft Details, die gebraucht werden. Beispielsweise E-Mail-Adressen wie in der folgenden Abbildung. Doch wie lassen sich gezielt die E-Mail-Adressen aus diesen Daten auslesen? Wie können solche wertvollen Informationen für Marketingzwecke, Supportanfragen oder Analysen nutzbar gemacht werden?</p>
<p>In meinem Rezept #25 zeige ich, wie in Power Query E-Mail-Adressen aus Bemerkungsfeldern extrahiert werden, indem ich alle Texte mit einem @-Zeichen verarbeite.</p>
<div id="attachment_47980" style="width: 815px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/01_Vorher_Nachher_NEU.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47980" class="size-full wp-image-47980" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/01_Vorher_Nachher_NEU.png" alt="Alle Texte mit einem @ Zeichen extrahieren und in einer neue Spalte auflisten, ggf. getrennt mit |" width="805" height="638" /></a><p id="caption-attachment-47980" class="wp-caption-text">Alle Texte mit einem @ Zeichen extrahieren und in einer neue Spalte auflisten, ggf. getrennt mit |</p></div>
<p><span id="more-3703"></span></p>
<h3>1) Text in Freitextfeldern aufteilen mit Text.SplitAny</h3>
<p>Zunächst überführe ich den Text der Spalte <em>Bemerkung</em> in eine Liste aus Worten. Als Trennzeichen nutze ich hierbei Leerzeichen, Komma und Semikolon. Anschließend selektiere ich aus dieser Wortliste alle Zeichenketten, die ein @ enthalten. So gehe ich vor:</p>
<ul>
<li>In Excel klicke ich in die Tabelle und wähle auf der Registerkarte<strong> Daten</strong> &gt; <strong>Daten abrufen</strong> &gt; <strong>Aus Tabelle/Bereich</strong>.</li>
<li>Bevor ich mit Textfunktionen arbeite, ändere ich den <strong>Datentyp</strong> der Spalte <em>Bemerkung</em> zu <strong>Text</strong>.</li>
<li>Über <strong>Spalte hinzufügen</strong> &gt; <strong>Benutzerdefinierte Spalte</strong> erstelle ich eine neue Spalte mit dem Namen <em>E-Mail-Adressen</em> <span style="color: #ff0000;">[1]</span>.</li>
<li>Mit der Funktion <strong>Text.SplitAny</strong> und unter Angabe der gewünschten Trennzeichen zerlege ich den gesamten Text in eine Liste von Worten <span style="color: #ff0000;">[2]</span>.</li>
</ul>
<div id="attachment_47981" style="width: 832px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/02_Bemerkung_splitten.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47981" class="size-full wp-image-47981" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/02_Bemerkung_splitten.png" alt="Der Funktion Text.SplitAny die Trennzeichen Semikolon, Komma und Leerzeichen mitgeben" width="822" height="335" /></a><p id="caption-attachment-47981" class="wp-caption-text">Der Funktion <strong>Text.SplitAny</strong> die Trennzeichen Semikolon, Komma und Leerzeichen mitgeben</p></div>
<p>Als Ergebnis erhalte ich in jeder Zelle der neuen Spalte eine Liste mit Wörtern.</p>
<p><strong>Tipp:</strong> Klicke ich in eine dieser Zellen (nicht auf das Wort <strong>List</strong>), kann ich mir unten links das Ergebnis einer einzelnen Zelle ansehen.</p>
<div id="attachment_47982" style="width: 1006px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/03_Liste_aller_Woerter.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47982" class="size-full wp-image-47982" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/03_Liste_aller_Woerter.png" alt="Die Funktion Text.SplitAny erzeugt eine Liste mit allen Worten der Spalte Bemerkung" width="996" height="506" /></a><p id="caption-attachment-47982" class="wp-caption-text">Die Funktion <strong>Text.SplitAny</strong> erzeugt eine Liste mit allen Worten der Spalte <em>Bemerkung</em></p></div>
<h3>2) Aus der Wortliste die Zeichenketten mit @ filtern mit List.Select</h3>
<p>Um nur Zeichenketten mit @ zu extrahieren, bearbeite ich die benutzerdefinierte Spalte wie folgt weiter:</p>
<ul>
<li>Ich klicke rechts im Bereich <strong>Angewendete Schritte</strong> auf das Zahnrädchen beim Schritt <strong>Hinzugefügte benutzerdefinierte Spalte</strong> und wende die Funktion<strong> List.Select</strong> an.</li>
<li>Der Funktion<strong> List.Select</strong> gebe ich als zweites Argument die Bedingung <strong>each Text.Contains(_,&#8220;@&#8220;)</strong> mit.<br />
Damit werden alle Listenelemente mit einem @-Zeichen selektiert.</li>
</ul>
<div id="attachment_47985" style="width: 829px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/04_Adressen_selektieren.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47985" class="size-full wp-image-47985" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/04_Adressen_selektieren.png" alt="Die Funktion List.Select wählt in Kombination mit der Funktion Text.Contains alle Texte mit @-Zeichen aus" width="819" height="332" /></a><p id="caption-attachment-47985" class="wp-caption-text">Die Funktion <strong>List.Select</strong> wählt in Kombination mit der Funktion <strong>Text.Contains</strong> alle Texte mit @-Zeichen aus</p></div>
<p>Als Ergebnis erhalte ich in jeder Zelle wieder eine Liste, diesmal aber nur noch mit den Texten, die ein @-Zeichen enthalten.</p>
<div id="attachment_47984" style="width: 912px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/05_Adressen-Liste.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47984" class="size-full wp-image-47984" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/05_Adressen-Liste.png" alt="In der Liste jeder Zelle befinden sich jetzt nur noch E-Mail-Adressen" width="902" height="287" /></a><p id="caption-attachment-47984" class="wp-caption-text">In der Liste jeder Zelle befinden sich jetzt nur noch E-Mail-Adressen</p></div>
<h3>3) E-Mail-Adressen zu einem Text zusammenfügen mit Text.Combine</h3>
<p>Um nun die Wörter zu einem Text zusammenzufügen, bearbeite ich die benutzerdefinierte Spalte erneut und erweitere den Formeltext:</p>
<ul>
<li>Ich klicke im Bereich <strong>Angewendete Schritte</strong> auf das Zahnrädchen beim Schritt <strong>Hinzugefügte benutzerdefinierte Spalte</strong> und erweitere die vorhandene Formel am Anfang um die Funktion <strong>Combine</strong>.</li>
<li>Dieser gebe ich als zweites Argument das Trennzeichen &#8220; | &#8220; mit.</li>
</ul>
<div id="attachment_47985" style="width: 829px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/06_Adressen_kombinieren.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47985" class="size-full wp-image-47985" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/06_Adressen_kombinieren.png" alt="Die bestehende Funktion mit List.Combine erweitern" width="819" height="332" /></a><p id="caption-attachment-47985" class="wp-caption-text">Die Formel erweitern und die Liste der E-Mail-Adressen mit <strong>Text.Combine</strong> zusammenfügen</p></div>
<p>Das Ergebnis kann sich sehen lassen: Alle vorhandenen E-Mail-Adressen stehen nun |-getrennt in einer neuen Spalte.</p>
<div id="attachment_47986" style="width: 1026px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/07_Adressen_fertig.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47986" class="size-full wp-image-47986" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/07_Adressen_fertig.png" alt="Fertig: Die neue Spalte mit den E-Mail-Adressen" width="1016" height="271" /></a><p id="caption-attachment-47986" class="wp-caption-text">Fertig: Die neue Spalte mit den E-Mail-Adressen</p></div>
<h3>Profi-Tipp 1: Weitere Bedingungen für das Selektieren der E-Mail-Adressen einbauen – mindestens ein Punkt</h3>
<p>Das hier beschriebene Verfahren extrahiert alle Texte mit @-Zeichen. Allerdings garantiert das nicht die Richtigkeit der E-Mail-Adressen.<br />
Um sicherzustellen, dass nicht nur ein @-Zeichen, sondern beispielsweise auch mindestens ein Punkt im Text vorkommt, erweitere ich die Bedingung von <strong>List.Select</strong> wie folgt.</p>
<div id="attachment_47988" style="width: 667px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/08a_AufPunktPruefen.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47988" class="size-full wp-image-47988" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/08a_AufPunktPruefen.png" alt="Die Prüfung auf eine korrekte E-Mail-Adresse erweitern mit einem Punkt" width="657" height="223" /></a><p id="caption-attachment-47988" class="wp-caption-text">Die Prüfung auf eine korrekte E-Mail-Adresse beispielsweise erweitern auf das Vorhandensein eines Punktes</p></div>
<h3>Profi-Tipp 2: Punkt am Ende von E-Mail-Adressen bei Bedarf entfernen</h3>
<p>Das Leben ist bunt. Daher kann es auch vorkommen, dass im Bemerkungstext ein Punkt NACH einer E-Mail-Adresse steht – als Satzzeichen. Auch für diese Herausforderung gibt es eine Lösung.</p>
<ul>
<li>Dazu bearbeite ich die durch <strong>List.Select</strong> entstandene Liste von Wörtern mit der Funktion <strong>List.Transform</strong> [1].</li>
<li>Ich prüfe mit einer <strong>if</strong>-Anweisung auf einen Punkt am Ende [2] und reduziere gegebenenfalls die E-Mail-Adresse mit <strong>Text.Start</strong> [3] um ein Zeichen von rechts – berechnet durch Gesamtlänge -1 [4].</li>
</ul>
<div id="attachment_47987" style="width: 794px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/08_EMailMitPunktAmEnde.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47987" class="size-full wp-image-47987" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/08_EMailMitPunktAmEnde.png" alt="Der Punkt kommt nicht nur in der E-Mail-Adresse vor, sondern auch am Satzende" width="784" height="52" /></a><p id="caption-attachment-47987" class="wp-caption-text">Da der Punkt absichtlich nicht als Trennzeichen vorgegeben wurde, kann es zu einem Punkt am Ende einer E-Mail-Adresse kommen</p></div>
<div id="attachment_3697" style="width: 923px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3697" class="size-full wp-image-3697" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/09_PunktAmEndeLoeschen.png" alt="Einen möglichen Punkt am Ende einer E-Mail-Adresse eliminieren." width="913" height="289" /><p id="caption-attachment-3697" class="wp-caption-text">Einen möglichen Punkt am Ende einer E-Mail-Adresse eliminieren.</p></div>
<p>Und so sieht das Ergebnis dann aus:<img loading="lazy" decoding="async" class="alignnone size-full wp-image-3698" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/10_PunktAmEndeWeg.png" alt="" width="778" height="123" /></p>
<h2>Fazit</h2>
<ul>
<li>Mit einer Kombination aus <strong>Text.SplitAny</strong>, <strong>List.Select</strong>, <strong>Text.Combine</strong> und <strong>Text.Contains</strong> lassen sich E-Mail-Adressen aus Zeichenketten herauslösen.</li>
<li>Allerdings kann diese Technik nicht dafür sorgen, dass aus fehlerhaft eingegebenen anschließend korrekte E-Mail-Adressen werden.</li>
</ul>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-e-mail-adressen-aus-zeichenketten-auslesen/">Power Query: E-Mail-Adressen aus Zeichenketten auslesen</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Sollten Excel-Einsteiger »Power Query« lernen?</title>
		<link>https://www.huegemann-informatik.de/sollten-excel-einsteiger-power-query-lernen/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Thu, 23 Jan 2025 07:30:19 +0000</pubDate>
				<category><![CDATA[Excel]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[Abfragen in Power Query]]></category>
		<category><![CDATA[Aus Text/CSV]]></category>
		<category><![CDATA[automatisch statt manuell]]></category>
		<category><![CDATA[CSV-Datei]]></category>
		<category><![CDATA[CSV-Datei einlesen]]></category>
		<category><![CDATA[CSV-Datei filtern]]></category>
		<category><![CDATA[CSV-Datei importieren]]></category>
		<category><![CDATA[CSV-Datei sortieren]]></category>
		<category><![CDATA[Datenquelleeinstellungen]]></category>
		<category><![CDATA[Power Query Editor]]></category>
		<category><![CDATA[Power Query Rezept]]></category>
		<category><![CDATA[Quelle ändern]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/blog/?p=3597</guid>

					<description><![CDATA[<p>Bisher hätte ich diese Frage eher mit Nein beantwortet. Doch dann kam letzte Woche dieser Excel-Einstiegskurs: Dort berichteten 4 von 7 Teilnehmern, dass sie nicht mit Excel arbeiten und es auch nicht nutzen würden, wenn da nicht diese CSV wären. Bei weiterer Nachfrage kam heraus: wöchentlich muss eine CSV-Datei bearbeitet werden: &#8211; zuerst die Angaben [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/sollten-excel-einsteiger-power-query-lernen/">Sollten Excel-Einsteiger »Power Query« lernen?</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Bisher hätte ich diese Frage eher mit <strong>Nein</strong> beantwortet. Doch dann kam letzte Woche dieser Excel-Einstiegskurs: Dort berichteten 4 von 7 Teilnehmern, dass sie nicht mit Excel arbeiten und es auch nicht nutzen würden, wenn da nicht diese CSV wären.</p>
<p>Bei weiterer Nachfrage kam heraus: wöchentlich muss eine CSV-Datei bearbeitet werden:<br />
&#8211; zuerst die Angaben zum Datum in Ordnung bringen,<br />
&#8211; dann die Daten nach einem Kriterium filtern,<br />
&#8211; die verbleibenden Daten nach Datum sortieren,<br />
&#8211; eine Multiplikation durchführen und<br />
&#8211; abschließend eine überflüssige Spalte löschen.</p>
<p>Diese stupide Arbeit steht jede Woche an und es darf nichts vergessen werden.</p>
<p>Meine Reaktion? Ich zeigte ihnen, wie sie diese fünf Aufgaben mit Power Query erledigen. Und, dass sie diese Aufbereitungsschritte beim nächsten Mal in kürzester Zeit durchführen lassen, indem sie nur den Befehl <strong>Aktualisieren</strong> aufrufen.</p>
<p>In diesem <strong>Power Query Rezept #24</strong> beschreibe ich, WIE es geht.</p>
<p><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/01_Vorschau_CSV_zu_XLSX.png"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-47952" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/01_Vorschau_CSV_zu_XLSX.png" alt="" width="779" height="383" /></a></p>
<p><span id="more-3597"></span></p>
<h2>CSV-Dateien einfach per Doppelklick öffnen? Keine gute Idee!</h2>
<p>Oft werden CSV-Dateien per Doppelklick in Excel geöffnet, doch das ist riskant. Denn Excel nimmt beim Öffnen automatische Datenkonvertierungen vor, die später problematisch werden können (es sei denn, dieser Automatismus wurde in den Excel-Optionen ausgeschaltet).</p>
<p>Importiere ich hingegen eine CSV-Datei mit Power Query, kann ich jeden Schritt der Aufbereitung selbst bestimmen. Das geht ganz einfach:</p>
<ul>
<li>In Excel wähle ich auf der Registerkarte <strong>Daten &gt; Daten abrufen &gt; Aus Datei &gt; Aus Text/CSV</strong>.</li>
<li>Ich navigiere zur gewünschten CSV-Datei und klicke auf <strong>Importieren.</strong></li>
<li>Im folgenden Dialogfeld klicke ich auf <strong>Daten transformieren</strong>, schon öffnet sich der Power Query-Editor. Er ist das perfekte Tool für die Datenaufbereitung.</li>
</ul>
<h2>Um diese CSV-Datei geht es und das sind die Aufgaben</h2>
<p>Das folgende Bild zeigt, dass die Informationen der CSV-Datei in sieben Spalten aufgebaut sind. Diese Vorschau erhalte ich, wenn ich die CSV-Datei per Rechtsklick und mit Öffnen in im Editor von Windows öffne.</p>
<div id="attachment_47940" style="width: 530px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/02_CSV-Daten_im_Editor.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47940" class="size-full wp-image-47940" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/02_CSV-Daten_im_Editor.png" alt="Die Daten der CSV-Datei müssen Woche für Woche aufs Neue aufbereitet werden ☹" width="520" height="368" /></a><p id="caption-attachment-47940" class="wp-caption-text">Die Daten der CSV-Datei müssen Woche für Woche aufs Neue aufbereitet werden</p></div>
<p>Bisher müssen jede Woche erneut folgende Schritte ausgeführt werden:<br />
1. Datumsspalte mit Trennzeichen versehen, um ein korrektes Datum zu erhalten <strong><span style="color: #3366ff;">[1]</span></strong>,<br />
2. die Daten nach dem Status »Abgeschlossen« filtern <strong><span style="color: #3366ff;">[2]</span></strong> und dann die Spalte Status löschen,<br />
3. die Daten nach Datum aufsteigend sortieren,<br />
4. den Gesamtpreis mit Menge*Preis berechnen <strong><span style="color: #3366ff;">[3]</span></strong>,<br />
5. das Ergebnis schön formatiert in Excel bereitstellen – inkl. der Möglichkeit, nach ausgewählten Kunden zu filtern.</p>
<h2>Genial: Ab sofort mehrere Arbeitsschritte mit nur einem Klick erledigen</h2>
<p>In Power Query lassen sich alle diese Arbeitsschritte mit Hilfe einer Abfrage bündeln. So geht’s:</p>
<ul>
<li>In der Spalte <strong>Datum</strong> auf das Symbol <strong>123</strong> klicken, <strong>Datum</strong> anklicken und so den aktuellen Spaltentyp ersetzen</li>
</ul>
<div id="attachment_47941" style="width: 578px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/03_Datum_korrigieren.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47941" class="size-full wp-image-47941" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/03_Datum_korrigieren.png" alt="Das Textdatum nicht mehr mühsam manuell, sondern einfach per Klick in ein korrektes Datum umwandeln" width="568" height="404" /></a><p id="caption-attachment-47941" class="wp-caption-text">Das Textdatum nicht mehr mühsam manuell, sondern einfach per Klick in ein korrektes Datum umwandeln</p></div>
<ul>
<li>Rechtsklick in der Spalte <strong>Status</strong> auf den Wert <strong>Abgeschlossen</strong> und <strong>Textfilter &gt; Ist gleich</strong>.</li>
</ul>
<div id="attachment_47942" style="width: 608px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/04_Textfilter_Abgeschlossen_NEU.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47942" class="size-full wp-image-47942" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/04_Textfilter_Abgeschlossen_NEU.png" alt="Schnelles Filtern nach dem gewünschten Status »Abgeschlossen« …" width="598" height="299" /></a><p id="caption-attachment-47942" class="wp-caption-text">Schnelles Filtern nach dem gewünschten Status »Abgeschlossen« …</p></div>
<ul>
<li>Anschließend erneuter Rechtsklick in die Spalte <strong>Status</strong> und <strong>Spalte entfernen</strong>.</li>
</ul>
<div id="attachment_47943" style="width: 439px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/05_Spalte-entfernen_NEU.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47943" class="size-full wp-image-47943" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/05_Spalte-entfernen_NEU.png" alt="… und gleich noch die Spalte per Rechtsklick entfernen" width="429" height="115" /></a><p id="caption-attachment-47943" class="wp-caption-text">… und gleich noch die Spalte per Rechtsklick entfernen</p></div>
<ul>
<li>Klick auf den Dropdownpfeil in der Spalte <strong>Datum</strong> und dann <strong>Aufsteigend sortieren</strong>.</li>
</ul>
<div id="attachment_47944" style="width: 448px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/06_Aufsteigend_Sortieren_NEU.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47944" class="size-full wp-image-47944" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/06_Aufsteigend_Sortieren_NEU.png" alt="Die Datumsspalte aufsteigend sortieren über den Dropdownpfeil" width="438" height="124" /></a><p id="caption-attachment-47944" class="wp-caption-text">Die Datumsspalte aufsteigend sortieren über den Dropdownpfeil</p></div>
<h2>Nach dem Aufräumen folgt nun das Berechnen des Gesamtpreises</h2>
<ul>
<li>Dazu die Spalten <strong>Menge</strong> und <strong>Preis</strong> mit gedrückter <strong>Strg</strong>-Taste markieren.</li>
<li><strong>Spalte hinzufügen &gt; Standard &gt; Multiplizieren</strong>.</li>
<li>Schließlich per Doppelklick im Spaltenkopf die neue Spalte umbenennen in <strong>Gesamtpreis</strong>.</li>
</ul>
<div id="attachment_47945" style="width: 565px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/07_Spalten_multiplizieren_NEU.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47945" class="size-full wp-image-47945" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/07_Spalten_multiplizieren_NEU.png" alt="Die Werte der Spalten Menge und Preis multiplizieren" width="555" height="310" /></a><p id="caption-attachment-47945" class="wp-caption-text">Die Werte der Spalten Menge und Preis multiplizieren</p></div>
<h2>Das Ergebnis: Eine übersichtliche und bereits fertig formatierte Tabelle</h2>
<p>Das Resultat der Datenaufbereitung wird nun wie folgt an Excel zurückgegeben:</p>
<p>Auf der Registerkarte <strong>Start</strong> die Befehlsfolge <strong>Schließen &amp; laden &gt; Schließen &amp; laden in …&gt; Tabelle</strong> wählen.</p>
<div id="attachment_47946" style="width: 774px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/08_Tabelle_speichern_NEU.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47946" class="size-full wp-image-47946" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/08_Tabelle_speichern_NEU.png" alt="So werden die aufbereiteten Daten in eine Excel-Tabelle geladen" width="764" height="500" /></a><p id="caption-attachment-47946" class="wp-caption-text">So werden die aufbereiteten Daten in eine Excel-Tabelle geladen</p></div>
<p>Und so sieht das Ergebnis aus, nachdem in Excel für die Spalten <strong>Preis</strong> und <strong>Gesamtpreis</strong> das Zahlenformat <strong>Währung</strong> zugewiesen wurde.</p>
<div id="attachment_47947" style="width: 644px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/09_Tabelle_in_Excel.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47947" class="size-full wp-image-47947" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/09_Tabelle_in_Excel.png" alt="Die fertige Tabelle in Excel" width="634" height="169" /></a><p id="caption-attachment-47947" class="wp-caption-text">Die fertige Tabelle in Excel</p></div>
<h2>Und was ist in der Folgewoche? Nur noch Aktualisieren anklicken</h2>
<ul>
<li>Kommt eine neue CSV-Datei hinzu, wird die Tabelle in Excel einfach per Rechtsklick aktualisiert.</li>
</ul>
<div id="attachment_47948" style="width: 798px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/10_Aktualisieren_NEU.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47948" class="size-full wp-image-47948" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/10_Aktualisieren_NEU.png" alt="Per Rechtsklick Aktualisieren wählen, um die Daten aus der neuen CSV-Datei zu ziehen" width="788" height="172" /></a><p id="caption-attachment-47948" class="wp-caption-text">Per Rechtsklick <strong>Aktualisieren</strong> wählen, um die Daten aus der neuen CSV-Datei zu ziehen</p></div>
<h2>Und was ist, wenn die neue CSV-Datei einen anderen Namen hat?</h2>
<p>Hat die CSV-Datei nicht immer den gleichen Namen, sondern Woche für Woche einen anderen, muss die jeweils neue Datei – wie in der folgenden Abbildung gezeigt – über <strong>Daten &gt; Daten abrufen &gt; Datenquelleneinstellungen</strong> als neue Quelle bestimmt werden.</p>
<div id="attachment_47949" style="width: 1280px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/11_Quelle_aendern_NEU.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47949" class="size-full wp-image-47949" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/11_Quelle_aendern_NEU.png" alt="Über Datenquelleneinstellungen auf eine andere CSV-Datei gleicher Struktur zugreifen" width="1270" height="862" /></a><p id="caption-attachment-47949" class="wp-caption-text">Über Datenquelleneinstellungen auf eine andere CSV-Datei gleicher Struktur zugreifen</p></div>
<h2>Fazit</h2>
<ul>
<li>Das Aufbereiten von CSV-Dateien lässt sich mit Power Query schnell und einfach erledigen.</li>
<li>Alle Schritte der Datenaufbereitung werden in einer Abfrage mitprotokolliert.</li>
<li>Dadurch entfällt das mühsame manuelle Aufbereiten Woche für Woche, denn ein Klick auf <strong>Aktualisieren</strong> reicht.</li>
</ul>
<p>Heute wäre meine Antwort auf die eingangs gestellte Frage:<br />
<strong>Ja</strong>, auch für Excel-Einsteiger eignet sich Power Query als ein sehr brauchbares Werkzeug, das zudem einfach zu bedienen ist.</p>
<h2>Interessiert an weiteren Tipps zu Power Query?</h2>
<p>Wer sein Wissen zu Power Query systematisch auf- und ausbauen will, kann dazu einen meiner Online-Kurse nutzen. <a href="https://www.office-kompetenz.de/veranstaltungen/" target="_blank" rel="noopener">Auf dieser Seite</a> ist das aktuelle Angebot zu finden.</p>
<p><strong>TIPP:</strong> Wer hier im Blog <strong>alle</strong> Rezepte zu Power Query finden möchte, gibt einfach oben rechts in das Suchfeld <span style="color: #0000ff;"><strong>Power-Query-Rezept</strong></span> ein.</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/sollten-excel-einsteiger-power-query-lernen/">Sollten Excel-Einsteiger »Power Query« lernen?</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Power Query: Böse Überraschungen beim Runden vermeiden</title>
		<link>https://www.huegemann-informatik.de/power-query-boese-ueberraschungen-beim-runden-vermeiden/</link>
		
		<dc:creator><![CDATA[Hildegard Hügemann]]></dc:creator>
		<pubDate>Thu, 09 Jan 2025 06:50:25 +0000</pubDate>
				<category><![CDATA[Excel]]></category>
		<category><![CDATA[Power BI]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[ABRUNDEN]]></category>
		<category><![CDATA[AUFRUNDEN]]></category>
		<category><![CDATA[Dezimalstellen]]></category>
		<category><![CDATA[Kaufmännisches Runden]]></category>
		<category><![CDATA[Number.Round]]></category>
		<category><![CDATA[Power Query Rezept]]></category>
		<category><![CDATA[RoundingMode.AwayFromZero]]></category>
		<category><![CDATA[RoundingMode.Down]]></category>
		<category><![CDATA[RoundingMode.ToEven]]></category>
		<category><![CDATA[RoundingMode.TowardZero]]></category>
		<category><![CDATA[RoundingMode.Up]]></category>
		<category><![CDATA[RUNDEN]]></category>
		<guid isPermaLink="false">https://www.huegemann-informatik.de/blog/?p=3556</guid>

					<description><![CDATA[<p>Was ergibt sich, wenn die Zahl 2,5 gerundet wird? Excel liefert mit der Funktion RUNDEN das Ergebnis 3, Power Query hingegen 2. Der Grund dafür: In Power Query wird bei Werten genau in der Mitte zwischen zwei ganzen Zahlen standardmäßig auf die nächste gerade Zahl auf- oder abgerundet. Aus 2,5 wird somit 2, aus 1,5 [&#8230;]</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-boese-ueberraschungen-beim-runden-vermeiden/">Power Query: Böse Überraschungen beim Runden vermeiden</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Was ergibt sich, wenn die Zahl 2,5 gerundet wird? <strong>Excel</strong> liefert mit der Funktion <strong>RUNDEN </strong>das Ergebnis 3, <strong>Power Query</strong> hingegen 2.</p>
<p>Der Grund dafür: In Power Query wird bei Werten genau in der Mitte zwischen zwei ganzen Zahlen standardmäßig auf die<strong> nächste gerade Zahl</strong> <strong>auf- oder abgerundet</strong>. Aus 2,5 wird somit 2, aus 1,5 wird ebenfalls 2.</p>
<p>Wie Power Query beim Runden tickt und wie es auf kaufmännisches Runden umgestellt werden kann, beschreibe ich in diesem Rezept.</p>
<div id="attachment_3554" style="width: 410px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-3554" class="size-full wp-image-3554" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/1_Runden_Excel_PowerQuery_neu-e1736408826559.png" alt="Zum Teil unterschiedliche Ergebnisse beim Runden in Excel und Power Query" width="400" height="344" srcset="https://www.huegemann-informatik.de/wp-content/uploads/2025/01/1_Runden_Excel_PowerQuery_neu-e1736408826559.png 400w, https://www.huegemann-informatik.de/wp-content/uploads/2025/01/1_Runden_Excel_PowerQuery_neu-e1736408826559-300x258.png 300w" sizes="auto, (max-width: 400px) 100vw, 400px" /><p id="caption-attachment-3554" class="wp-caption-text">Zum Teil unterschiedliche Ergebnisse beim Runden in Excel und Power Query</p></div>
<p><span id="more-3556"></span></p>
<h3>Überraschung, oder wie das Runden in Power Query funktioniert</h3>
<p>Ich war überrascht, als ich zum ersten Mal die Rundungsfunktion in Power Query nutzte und dann die Ergebnisse überprüfte. Ich hatte erwartet, dass Power Query und Excel beim Runden gleichermaßen vorgehen und demzufolge gleiche Ergebnisse liefern. Dem ist aber nicht so.</p>
<ul>
<li>Es stellte sich heraus, dass Power Query <strong>standardmäßig</strong> den Rundungsmodus <strong>ToEven</strong> verwendet. Dies bedeutet: Werte genau zwischen zwei ganzen Zahlen – z. B. 1,5 oder 2,5 – werden auf die nächste gerade Zahl gerundet. Mal nach oben, mal nach unten, also 1,5 zu 2 aufgerundet und 2,5 zu 2 abgerundet.</li>
<li>Bei allen anderen Wertekonstellationen verhält sich Power Query&nbsp;<strong>standardmäßig </strong>wie beim kaufmännischen Runden: von 0,1 bis 0,4 wird abgerundet, von 0,6 bis 0,9 aufgerundet.</li>
</ul>
<h3>Der Vergleich: Runden in Excel und in Power Query</h3>
<p>Im eingangs gezeigten Bild liegen in einer intelligenten Tabelle Messwerte&nbsp; vor, die auf ein Ganzes gerundet werden sollen.</p>
<p>Für den Vergleich der Rundungsmethoden in Excel und Power Query gehe ich wie folgt vor:</p>
<ul>
<li>In <strong>Excel</strong> erstelle ich eine zweite Spalte <em>RUNDEN(Excel)</em>, in der ich den gerundeten Wert mit der Formel <strong>=RUNDEN([@Messwert];0)</strong> ermittle.</li>
<li>Anschließend lese ich über <strong>Daten abrufen &gt; Aus Tabelle/Bereich</strong> die Tabelle in Power Query ein.</li>
<li>Dort markiere ich die Spalte <em>Messwert</em> und wähle im Register <strong>Spalte hinzufügen &gt; Runden &gt; Runden.</strong></li>
<li>Im nun angezeigten Dialog für die Dezimalstellen gebe ich den Wert <strong>0</strong> ein.</li>
<li>Nach einem Klick auf <strong>OK</strong> erhalte ich ein Ergebnis, das standardmäßig <strong>RoundingMode.ToEven</strong> nutzt.</li>
<li>Abschließend benenne ich die neue Spalte um in <em>Number.Round(PQ)</em>.</li>
</ul>
<div id="attachment_47860" style="width: 794px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/2_Runden_Power_Query_Standard.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47860" class="wp-image-47860 size-full" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/2_Runden_Power_Query_Standard.png" alt="Eine neue Spalte mit gerundetem Messwert in Power Query erstellen" width="784" height="364" /></a><p id="caption-attachment-47860" class="wp-caption-text">In Power Query eine neue Spalte anlegen, in der die Messwerte gerundet werden sollen</p></div>
<h3>So gelingt »kaufmännisches Runden« in Power Query</h3>
<p>Was aber, wenn der gleiche Rundungsmodus wie in Excel gebraucht wird? Mit einem kleinen Kniff lässt sich das erreichen. So gehe ich vor:</p>
<ul>
<li>Zuerst erstelle ich wie oben beschrieben in Power Query eine neue Spalte mit gerundeten Werten.</li>
<li>Dann greife ich in der Bearbeitungsleiste in den M-Code ein und nutze dort das dritte Argument der Funktion <strong>Number.Round</strong>.</li>
<li>Dazu tippe ich hinter der Angabe <strong>0</strong> für die Dezimalstellen ein Komma und dann den Text <strong>Round</strong> ein.</li>
<li>Aus der nun angebotenen Liste der Rundungsmodi wähle ich <strong>RoundingMode.AwayFromZero</strong>.</li>
<li>Auf diese Weise erhalte ich das gleiche Rundungsergebnis wie in Excel.</li>
</ul>
<div id="attachment_47859" style="width: 1100px" class="wp-caption alignnone"><a href="https://huegemann-informatik.de/wp-content/uploads/2025/01/3_Runden_Power_Query_Kaufm.png"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-47859" class="wp-image-47859 size-full" src="https://huegemann-informatik.de/wp-content/uploads/2025/01/3_Runden_Power_Query_Kaufm.png" alt="Standard-Rundungsmethode 'RoundingMode.ToEven' in ''RoundingMode.AwayFromZero' ändern" width="1090" height="179" /></a><p id="caption-attachment-47859" class="wp-caption-text">Die Standard-Rundungsmethode <strong>RoundingMode.ToEven</strong> ändern in <strong>RoundingMode.AwayFromZero</strong></p></div>
<h3>Fazit</h3>
<ol>
<li>Excel und Power Query bieten je drei Rundungs-Funktionen: RUNDEN, AUFRUNDEN und ABRUNDEN.</li>
<li>Wird der Befehl <strong>RUNDEN </strong>verwendet, weichen die Ergebnisse zum Teil voneinander ab, wenn die zu rundende Dezimalstelle eine 5 ist.<br />
Beispiel 1: Beim Runden von 2,5 auf einen ganze Zahl liefert Excel den Wert 3, Power Query hingegen den Wert 2.<br />
Beispiel 2: Beim Runden von 2,45 auf eine Dezimalstelle liefert Excel 2,5, Power Query hingegen 2,4</li>
<li>Wer runden will, muss daher bewusst wählen, welche Art von Runden für seine Zahlen am besten geeignet ist.</li>
<li>Die Funktion <strong>RUNDEN</strong> in Excel nutzt das kaufmännische Runden. Damit der Befehl <strong>Runden</strong> in Power Query ebenfalls kaufmännisch rundet, muss die Funktion <strong>Number.Round</strong> noch um das Argument <strong>RoundingMode.AwayFromZero</strong> ergänzt werden.</li>
</ol>
<h3>Interessiert an weiteren Tipps zu Power Query?</h3>
<p>Wer sein Wissen zu Power Query systematisch auf- und ausbauen will, kann dazu einen meiner Online-Kurse nutzen. <a href="https://www.office-kompetenz.de/veranstaltungen/" target="_blank" rel="noopener">Auf dieser Seite</a> ist das aktuelle Angebot zu finden.</p>
<p><strong>TIPP:</strong> Wer hier im Blog <strong>alle</strong> Rezepte zu Power Query finden möchte, gibt einfach oben rechts in das Suchfeld <span style="color: #0000ff;"><strong>Power-Query-Rezept</strong></span> ein.</p>
<p>Der Beitrag <a href="https://www.huegemann-informatik.de/power-query-boese-ueberraschungen-beim-runden-vermeiden/">Power Query: Böse Überraschungen beim Runden vermeiden</a> erschien zuerst auf <a href="https://www.huegemann-informatik.de">Hügemann Informatik</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
