Abfrageparameter Zellreferenz nicht gespeichert

Abfrageparameter Zellreferenz nicht gespeichert

Ich habe ein Arbeitsblatt, das eine Datenverbindung verwendet, um Daten für eine Pivot-Tabelle mithilfe einer SQL-Abfrage aus einer externen Datenbank abzurufen. Der Benutzer kann Parameter für die SQL festlegen, indem er einige Zellen im Arbeitsblatt ausfüllt. Der Vorgang wird beschriebenHier.

Wenn ich die Datei speichere und neu lade und die Daten aktualisiere, stürzt Excel ab. Ich habe festgestellt, dass der Inhalt des Felds „Wert aus folgender Zelle abrufen:“ aus dem Dialogfeld „Parameter“ nicht gespeichert wird.

Ich habe es mit Excel 2007 und Excel 2010 versucht und sowohl im XLSX- als auch im Binärformat gespeichert, aber keines davon speichert die Einstellung. Hat jemand eine Lösung oder einen Workaround?

Screenshot des Dialogfelds istHier:

Antwort1

Dieses Problem tritt auf, wenn wir die Daten direkt in einen PivotTable-Bericht importieren möchten.

Als Workaround können Sie die Daten zunächst als „Tabelle“ in ein separates Blatt importieren (z. B. „DB-Daten“-Blatt). Erstellen Sie dann mit diesen Daten eine Pivot-Datei in einem separaten Blatt (z. B. „DB-Pivot“-Blatt).

Die Parameter für die Abfrage (Startdatum usw.) können im Arbeitsblatt „DB Pivot“ abgerufen werden. Wenn sich die Parameter jedoch ändern, müssen Sie zuerst die Tabelle in „DB-Daten“ und dann das Pivot aktualisieren.

Um dies mit einem einzigen Klick zu erledigen, fügen Sie mit dem folgenden Code eine Befehlsschaltfläche (oder ein Makro) ein.

Sheets("DB Data").Range("A1").ListObject.QueryTable.Refresh BackgroundQuery:=False
ActiveSheet.PivotTables("PivotTable1").PivotCache.Refresh

Hoffe das hilft.

verwandte Informationen