Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Power Query

Power Query
30.11.2020 09:30:32
Christoph
Hallo,
ich lade regelmäßig mehrere Exceldateien über Power Query von einem Ordner in eine Datei. Die Abfrage funktioniert gut und kalkuliert alle Ergebnisse automatisch.
Leider habe ich nun einen Fehler in der Abfrage:
Fehler in der Abfrage 'Datei transformieren'. Expression.Error: Der Schlüssel entsprach keiner Zeile in der Tabelle
Der Ursprung des Fehlers ist, dass einzelne Tabellenblätter einen anderen Namen haben. Ändere ich diesen manuell funktioniert alles wieder. Gibt es wie bei Spaltennamen auch die Möglichkeit den M-Code zu ändern oder gibt es eine einfachere Möglichkeit die Abfrage robust zu gestalten?
Danke und Gruß
Christoph
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: PQ-Basis sind formatierte Tabellennamen ...
30.11.2020 10:02:38
neopa
Hallo Christoph,
... und wenn sich deren Namen ändern, kannst Du deren Namen durch Änderung auch im M-Code vornehmen. Was natürlich voraussetzt, dass die Feldnamen dieser Tabellen die gleichen sind, wie in Deinem vorhandenen M-Code. Ansonsten müsstest Du auch diese noch ändern.
Gruß Werner
.. , - ...
Anzeige
AW: PQ-Basis sind formatierte Tabellennamen ...
30.11.2020 11:35:14
Christoph
Hallo Werner,
passt leider nicht ganz. Anbei ein Screenshot.
Userbild
Gruß Christoph
AW: an Hand eines Bildes nicht nachvollziehbar owT
30.11.2020 13:16:54
neopa
Gruß Werner
.. , - ...
AW: an Hand eines Bildes nicht nachvollziehbar owT
30.11.2020 13:43:58
Christoph
Habe das Problem gefunden und gelöst. Dennoch Danke für deine Bemühungen.
Das Problem war, dass PW automatisch in der Beispieldatei einen Filter auf den Tabellennamen gesetzt hat. Daher konnte er die anderen Tabellenblätter nicht hochladen.
Gruß
Christoph
Anzeige
AW: gerne owT
30.11.2020 13:46:05
neopa
Gruß Werner
.. , - ...
;
Anzeige

Infobox / Tutorial

Power Query: Umgang mit dem Fehler "Der Schlüssel entsprach keiner Zeile in der Tabelle"


Schritt-für-Schritt-Anleitung

  1. Öffne Power Query: Lade deine Excel-Datei und öffne den Power Query Editor.
  2. Überprüfe die Abfrage: Achte darauf, dass der Fehler "Expression.Error: Der Schlüssel entsprach keiner Zeile in der Tabelle" angezeigt wird.
  3. Tabellennamen prüfen: Überprüfe die Namen der Tabellenblätter in deinem Quellordner. Wenn diese variieren, kann dies den Fehler verursachen.
  4. M-Code anpassen: Wenn sich die Tabellennamen ändern, musst du möglicherweise den M-Code anpassen. Das kannst du im Power Query Editor unter "Erweiterte Editor" tun.
  5. Filter entfernen: Wenn Power Query automatisch einen Filter auf den Tabellennamen setzt, musst du diesen entfernen, um alle Tabellenblätter hochzuladen.
  6. Abfrage testen: Klicke auf "Schließen & Laden", um die Abfrage zu testen und sicherzustellen, dass der Fehler behoben wurde.

Häufige Fehler und Lösungen

  • Fehler: Der Schlüssel entsprach keiner Zeile in der Tabelle: Dieser Fehler tritt auf, wenn Power Query versucht, auf einen Tabellennamen zuzugreifen, der nicht existiert. Überprüfe die Namen der Tabellenblätter und passe sie gegebenenfalls im M-Code an.

  • Fehler beim Speichern von Änderungen: Wenn du die Meldung "OLE DB- oder ODBC-Fehler: [Expression.Error] Der Schlüssel entsprach keiner Zeile in der Tabelle" erhältst, stelle sicher, dass die Datenquelle korrekt konfiguriert ist und die Verbindung stabil ist.


Alternative Methoden

  • Dynamische Tabellennamen: Du kannst den M-Code so anpassen, dass er dynamisch auf die Tabellennamen zugreift. Verwende dazu die Funktion Excel.CurrentWorkbook() und filtere nach den benötigten Tabellennamen.

  • Power BI verwenden: Wenn du häufig mit Power Query arbeitest, kann Power BI eine bessere Handhabung von Fehlern und dynamischen Datenquellen bieten.


Praktische Beispiele

  • Beispiel 1: Angenommen, du hast zwei Tabellenblätter: "Monat_Januar" und "Monat_Februar". Stelle sicher, dass im M-Code die Referenzen auf diese Blätter korrekt sind. Achte darauf, dass der M-Code wie folgt aussieht:

    let
      Quelle = Excel.CurrentWorkbook(){[Name="Monat_Januar"]}[Content],
      // Weitere Transformationen...
    in
      Quelle
  • Beispiel 2: Wenn du mehrere Dateien in einem Ordner verarbeitest, verwende den Code, um sicherzustellen, dass auch Tabellen mit unterschiedlichen Namen korrekt geladen werden:

    let
      Quelle = Folder.Files("C:\Dein\Ordner"),
      // Filter und andere Transformationen...
    in
      Quelle

Tipps für Profis

  • Verwendung von Variablen: Setze Variablen im M-Code ein, um den Code lesbarer zu gestalten und Fehler leichter zu identifizieren.

  • Regelmäßige Überprüfung: Überprüfe regelmäßig deine Abfragen, insbesondere nach Änderungen an den Quelldaten oder Tabellennamen.

  • Debugging: Nutze die "Schritt-für-Schritt"-Ausführung im Power Query Editor, um den genauen Punkt zu identifizieren, an dem der Fehler auftritt.


FAQ: Häufige Fragen

1. Was bedeutet der Fehler "Expression.Error: Der Schlüssel entsprach keiner Zeile in der Tabelle"?
Dieser Fehler zeigt an, dass Power Query versucht, auf einen Tabellennamen zuzugreifen, der in der Quelldatei nicht vorhanden ist.

2. Wie kann ich verhindern, dass dieser Fehler auftritt?
Stelle sicher, dass die Tabellennamen in der Quelldatei konsistent sind und dass du die M-Code-Referenzen entsprechend anpasst.

3. Kann ich diesen Fehler auch in Power BI bekommen?
Ja, der Fehler "Der Schlüssel entsprach keiner Zeile in der Tabelle" kann auch in Power BI auftreten, wenn die Datenquellen nicht konsistent sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige