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

Expression.Error: 64-Bit-Ganzzahlenwert

Forumthread: Expression.Error: 64-Bit-Ganzzahlenwert

Expression.Error: 64-Bit-Ganzzahlenwert
18.05.2022 15:01:11
Max_Danger
Hallo zusammen,
ich stehe wieder einmal vor einer kleinen Herausforderung. :)
Zur Ausgangslage
Ich lade online Daten mittels einer Json Abfrage in Power Query.
Das klappt soweit auch alles reibungslos.
Leider wirft er mir bei manchen Abfragen jedoch folgenden Fehler aus:
Expression.Error: Die Zahl befindet sich außerhalb des gültigen Bereichs eines 64-Bit-Ganzzahlwerts.
Details:
2,94813E+22

Ich bin bei meiner Recherche schon darauf gestoßen, dass es daran liegt, dass Excel "nur" mit 15 Nachkommastellen arbeitet.
Daher dachte ich mir, dass ich die Daten einfach als Text rein lade.
Leider funktioniert dies nicht, bzw. der Error bleibt bestehen.
Der Power Query Code

let
Source = Excel.CurrentWorkbook(){[Name="Tabelle2"]}[Content],
#"Added Custom" = Table.AddColumn(Source, "Benutzerdefiniert", each #"Transform JSON File"([Json File])),
#"Erweiterte Benutzerdefiniert1" = Table.ExpandTableColumn(#"Added Custom", "Benutzerdefiniert", {"chainId", "price", "estimatedPriceImpact", "value", "gasPrice", "gas", "estimatedGas", "protocolFee", "minimumProtocolFee", "buyTokenAddress", "buyAmount", "sellTokenAddress", "sellAmount", "sources", "allowanceTarget", "sellTokenToEthRate", "buyTokenToEthRate"}, {"chainId", "price", "estimatedPriceImpact", "value", "gasPrice", "gas", "estimatedGas", "protocolFee", "minimumProtocolFee", "buyTokenAddress", "buyAmount", "sellTokenAddress", "sellAmount", "sources", "allowanceTarget", "sellTokenToEthRate", "buyTokenToEthRate"}),
#"Geänderter Typ" = Table.TransformColumnTypes(#"Erweiterte Benutzerdefiniert1",{{"buyAmount", type text}, {"buyTokenToEthRate", type text}})
in
#"Geänderter Typ"
Hat vielleicht jemand eine Idee, wie ich das Problem umgehen könnte?
Vielen Dank
Max
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Expression.Error: 64-Bit-Ganzzahlenwert
18.05.2022 15:04:51
Max_Danger
Entschuldigt.
Es hat sich schon erledigt.
Manchmal sieht man den Wald vor lauter Bäumen nicht mehr.
Ich musste einfach den Typ bei der Abfrage und nicht bei der Ausgabe ändern.
Viele Grüße
Max
Anzeige
;
Anzeige

Infobox / Tutorial

Umgang mit dem Expression.Error: 64-Bit-Ganzzahlenwert in Excel


Schritt-für-Schritt-Anleitung

  1. Datenquelle vorbereiten: Stelle sicher, dass deine Datenquelle in Excel korrekt eingerichtet ist. Verwende Power Query, um Daten aus einer JSON-Datei zu laden.

  2. Power Query Editor öffnen: Gehe zu Daten > Abfragen und Verbindungen und wähle deine Abfrage aus, um den Power Query Editor zu öffnen.

  3. Typen der Spalten anpassen: Achte darauf, dass du den Datentyp der Spalten anpasst, bevor du die Daten lädst. Zum Beispiel:

    • Wähle die Spalte "buyAmount" und setze den Typ auf Text, um den expression error zu vermeiden.
    • Dies kannst du erreichen, indem du mit der rechten Maustaste auf die Spalte klickst und Datentyp ändern wählst.
  4. Abfrage anwenden: Klicke auf Schließen & Laden, um die Abfrage anzuwenden. Überprüfe, ob der Expression.Error weiterhin auftritt.


Häufige Fehler und Lösungen

  • Fehler: Expression.Error: Die Zahl befindet sich außerhalb des gültigen Bereichs eines 64-Bit-Ganzzahlwerts

    • Lösung: Stelle sicher, dass du den Datentyp in der Abfrage und nicht nur bei der Ausgabe änderst. Ansonsten wird der Fehler weiterhin angezeigt.
  • Fehler: Der Schlüssel entsprach keiner Zeile in der Tabelle

    • Lösung: Überprüfe deine Datenquelle und stelle sicher, dass alle benötigten Zeilen vorhanden sind.

Alternative Methoden

  • Verwendung von DAX: Anstatt Power Query zu verwenden, könntest du DAX-Formeln in deinem Excel-Arbeitsblatt nutzen, um mit großen Zahlen zu arbeiten. Dies könnte in einigen Fällen den Excel Expression Error umgehen.

  • CSV-Import: Lade die Daten zuerst als CSV-Datei und importiere sie dann in Excel. Dies kann helfen, den expression.error zu vermeiden, da CSV-Dateien weniger strenge Typen haben.


Praktische Beispiele

Angenommen, du hast eine JSON-Datei mit großen Zahlenwerten, die in Excel importiert werden müssen. Der Code könnte so aussehen:

let
    Source = Json.Document(File.Contents("C:\Pfad\zu\deiner\datei.json")),
    Data = Source[data],
    #"Geänderter Typ" = Table.TransformColumnTypes(Data,{{"großeZahl", type text}})
in
    #"Geänderter Typ"

Hier wird die große Zahl als Text importiert, wodurch der Power Query Expression Error vermieden wird.


Tipps für Profis

  • Debugging: Nutze die Funktion Table.Debug in Power Query, um die Fehlerquellen zu identifizieren.
  • Schrittweise Anpassung: Nimm Änderungen schrittweise vor und teste regelmäßig, um sicherzustellen, dass die Abfrage funktioniert und keine Excel Expression Errors angezeigt werden.
  • Dokumentation: Halte deine Abfragen gut dokumentiert, um später einfacher auf mögliche Fehler oder Anpassungen reagieren zu können.

FAQ: Häufige Fragen

1. Was bedeutet der Fehler "Expression.Error: Die Zahl befindet sich außerhalb des gültigen Bereichs eines 64-Bit-Ganzzahlwerts"?
Dieser Fehler tritt auf, wenn eine Zahl in einer Spalte zu groß ist, um sie als 64-Bit-Ganzzahl in Excel darzustellen.

2. Wie kann ich sicherstellen, dass große Zahlen korrekt importiert werden?
Setze den Datentyp auf Text in Power Query, bevor du die Daten lädst. So vermeidest du, dass Excel versucht, die großen Zahlen als Ganzzahlen zu interpretieren, was zu einem Expression.Error führen kann.

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