Mein Pivot zieht aus einer externen Datenquelle mit einer Datumsspalte. Excel sieht diese Spalte nicht als Datum und das Optionsfeld „Zellen formatieren“ ändert nicht, wie die Daten angezeigt werden. Die Zellendaten sind linksbündig ausgerichtet, was eher auf eine Zeichenfolge als auf ein Datum hindeutet. Ich habe cast(myvar as date) und convert(varchar, myvar, 101) und convert(varchar, myvar, 1) in der Basistabelle ausprobiert, aber keines davon wurde von Excel als Datum erkannt.
Wenn die Spalte als Datum erkannt wird, kann ich nach Woche und Monat gruppieren. Mir ist klar, dass der nächste Schritt darin besteht, der Tabelle Spalten mit Wochen und Monaten für jedes Datum hinzuzufügen, wenn ich das nicht beheben kann, aber ich möchte vorher noch einmal versuchen, die Spalte zu formatieren.
Antwort1
Versuchen Sie, Ihr Datum in ein Datum/Uhrzeit-Format umzuwandeln.
Das Datum von SQL Server wird intern als 3-Byte-Ganzzahl dargestellt, während das Datum/die Uhrzeit 8 Byte groß und vermutlich ein Gleitkommawert ist. Excel verwendet zur Darstellung von Datum/Uhrzeit ein Double, sodass das Datum/die Uhrzeit-Format von SQL Server möglicherweise besser abgebildet werden kann als das Datum.
Antwort2
Versuchen Sie, SQL-Code als Quelle für Ihre Pivot-Tabelle zu verwenden, anstatt die Tabelle oder Abfrage in SQL Server. Vielleicht sind Ihre Cast()-Anweisungen auf diese Weise effektiver.
- Klicken Sie auf die Pivot-Tabelle
- Klicken Sie auf PivotTable-Tools>Optionen>Datenquelle ändern(Pfeil)>Verbindungseigenschaften
- Klicken Sie auf Definition
- Befehlstyp in „SQL-Abfrage“ ändern
- Fügen Sie Ihre SQL-Anweisung in den Befehlstextbereich ein oder geben Sie sie ein.
Ich gehe davon aus, dass Sie Excel 2007 verwenden. Bei Excel 2003 wäre der Ansatz ähnlich, nur der Zugriff wäre anders.
Antwort3
Verwenden Sie die Konvertierungsfunktion mit dem 120
Stil. Dies ist das ISO-Datumsformat. Excel sollte dies erkennen.