2016-08-01 48 views
1

Ich habe ein VBA-Skript, das Zuordnungen generiert, die auf 20 Dezimalstellen genau sein müssen. Ich benutze , um das Array mit der richtigen Dezimalgenauigkeit zu füllen. Das Problem, das ich habe ist, dass, wenn ich das Array in ein Excel-Arbeitsblatt ausgeben, die Dezimalgenauigkeit deutlich sinkt. Zum Beispiel habe ich bestätigt, dass in meinem Array die Nummer 0.1557094848581301243552712433 ist, aber wenn es in das Arbeitsblatt ausgegeben wird, fällt es auf 0.15570948485813. Ich kann das Array in eine Textdatei schreiben und bestätigen, dass das Array die richtige Genauigkeitsstufe besitzt. Ich habe sogar versucht, eine Pipe-getrennte Textdatei zu erstellen und TextToColumns vergeblich zu tun.Excel VBA nach Excel-Dezimalgenauigkeit

Kann jemand eine höhere Dezimalpräzision beibehalten, wenn er Zahlen in excel bringt?

Antwort

3

Einfach ausgedrückt: Excel unterstützt nur 15-stellige Genauigkeit "beim Anzeigen". MSFT KB Referenz unten. Seltsamerweise speichert es den richtigen Wert, es kann es einfach nicht (oder nicht) darstellen.

Arbeit arounds

  • Bestimmen addins kann helfen (siehe Referenzen)
  • Speicher, um den Wert als Text. das keine solche Begrenzung aber keine mathematische oder Abrunden

Referenzen auftreten: