(15.08.2025, 17:00)BoskoBiati schrieb: Das Einzige, was fehlt, ist das Anfügen der letzten Ziehungen, damit ich nicht jedesmal alle Daten abrufen muß.
Ich kann Dir in Deiner Datei leider nicht direkt die Lösung zeigen, weil zum einen mein PQ kein Web.BrowserContents kann und zum anderen verwendest Du einen hartkodierten Pfad anstatt auf die Strukturen der Datei zuzugreifen und das ist mir alles zu fummelig wie Du das machst. Wie auch immer, in Deiner Datei darfst Du machen was Du willst.

Es muss funktionieren und Du musst es verstehen, das ist das wichtigste. Eine tolle Lösung die man nicht versteht ist Schrott.
Wenn Du Daten an eine Tabelle anhängen willst ohne jedes Mal alles zu laden, dann gibt es da einen Trick. Viele nennen es Selbst-Referenzierung (google nach: self referencing query) was nach meinem technischen Verständnis was anderes ist... egal.
In Deinem Fall hast Du die Daten von vielen Jahren und netter Weise gibt es pro Tag nur eine Ziehung, d.h. dieses Ziehungsdatum kann man als ID benutzen um eine Ziehung in Deiner Datenbank eindeutig zu identifizieren. Es gibt verschiedene Arten von Selbst-Referenzierung, behalte im Kopf das ALLE eine eindeutige ID brauchen um zu funktionieren.
Was Du brauchst ist eine ganz einfache:
Um das Prinzip zu verstehen kann man es auf eine simple Tabelle mit einer Spalte "Nr" reduzieren und in der stehen 3 Zeilen mit 1,2,3
Jetzt haben wir eine weitere Abfrage die weitere Nummern irgendwoher zieht und diese liefert nun unter "Nr" die Zahlen 2,3,4 in Zeilen.
Die Frage ist: Wie kriege ich die neue 4 in die erste Tabelle? (Für Dich: Wie kriege ich neue Lottozahlen in eine vorhandene Datenbank?)
Machen wir mal eine neue Datei und laden die erste Tabelle in PQ und nennen die Abfrage "Daten".
// Daten
let
Source = Excel.CurrentWorkbook(){[Name="Tabelle1"]}[Content],
in
Source
Die 2te Abfrage die die neuen Zahlen irgendwoher lädt nennen wir Import, ich lade hier der Einfachheit/Reproduzierbarkeit halber die Nummern aus einer 2ten Tabelle "Import":
// Import
let
Source = Excel.CurrentWorkbook(){[Name="Import"]}[Content]
in
Source
Beide Abfragen laden wir erstmal nur als Verbindung.
Du weißt das Du diese beiden Tabellen aufeinander stapeln kannst, da die alten Daten sich nicht ändern reicht es die Duplikate zu entfernen und wir laden diese Abfrage nun als Tabelle in ein Blatt, dann sieht die Abfrage so aus:
// Daten
let
Source = Excel.CurrentWorkbook(){[Name="
Tabelle1"]}[Content],
AppendedQuery = Table.Combine({Source, Import}),
RemovedDuplicates = Table.Distinct(AppendedQuery, {"Nr"})
in
RemovedDuplicates
Wenn wir das gemacht haben hat diese neue Tabelle in der Datei den Namen "Daten" und den tauschen wir nun im MCode und benutzen "uns selber" als Quelle:
// Daten
let
Source = Excel.CurrentWorkbook(){[Name="
Daten"]}[Content],
AppendedQuery = Table.Combine({Source, Import}),
RemovedDuplicates = Table.Distinct(AppendedQuery, {"Nr"})
in
RemovedDuplicates
Und das war's. Die ursprüngliche "Tabelle1" kann man nun löschen, sobald es was neues in "Import" gibt wird es angefügt, ansonsten nicht.
Für Deinen Fall nimmst Du das Ziehungsdatum statt Nr und wie viele Spalten da noch dranhängen ist wurscht.
Und den Import kannst Du nun reduzieren so weit Du willst und kannst, bzw. Deine Quelle kann. Wenn Du eine Quelle findest die nur die Zahlen der letzten Ziehung liefert, dann musst Du Datei logischer weise jede Woche aktualisieren. Wenn die Quelle nur das aktuelle Jahr liefert dann MUSST Du nach der letzten Ziehung im Jahr aktualisieren und zwischen drin so oft Du willst.
Alles klar?
Andreas.