Kann das Zahlenformat 'Automatisch' programmgesteuert über GAS angewendet werden? Mein Problem ist, dass, während ich Zahlenspalten schreibe, Sheets versucht, eine angemessene Formatierung anzuwenden, aber manchmal falsch liegt. Das heißt, bestimmte kleine ganze Zahlen (manchmal 1) werden als Daten formatiert. Der Bereich wird in einer myRange.setValues()
Methode geschrieben und ich kann kein Muster zu den Fehlern sehen und sehe deshalb keine Möglichkeit, die überraschende Fehlformatierung zu verhindern.Anwendung "Automatische" Zahlenformatierung
Aber wenn ich den Bereich in den Blättern auswähle und einfach auf "Automatisch" im Zahlenformat-Menü klicke, kehrt alles zum Normalzustand zurück. Es hilft nicht, das im Voraus zu klicken, da das Schreiben von Daten das Format irgendwie zurücksetzt.
Trotz der langatmigen Intro, ist meine Frage sehr einfach: wie programmgesteuert "Automatische" Zahlenformatierung anwenden. Ich denke, das ist sehr einfach, zumal Google und Suchanfragen hier keine Hilfe waren.
Meine aktuelle Fallback-Lösung ist als Format für die gesamte Palette zu verwenden. Dies ist nicht ideal, da einige Zahlen sehr groß sind und in wissenschaftlicher Notation leichter zu lesen sind. Es gibt auch einige Textzeichenfolgen im Bereich, diese werden jedoch unabhängig vom verwendeten Format richtig formatiert. Ich würde auch lieber vermeiden, dass ich die Daten durchlaufen und auf Werte prüfen muss, um das beste Format zu bestimmen, wenn es nur ein paar Klicks in der Benutzeroberfläche gibt.
Dies ist eine wirklich gute Frage, und etwas, das definitiv nicht dokumentiert ist. Am nächsten konnte ich http://stackoverflow.com/questions/13758913/format-a-google-sheets-cell-in-plaintext-via-apps-script finden, das nur wirklich über Klartext geht. –
Wirklich zu schätzen den Kommentar. Ich habe fast eine Woche lang gesucht und gesucht und dabei gedacht, dass ich etwas Offensichtliches vermissen muss. Der einzige Verdacht, den ich noch habe, ist, dass "automatische" Formatierung die ** Abwesenheit ** irgendeiner Zahlenformatierung ist, aber meine Bemühungen, "null" oder "undefiniert" zuzuweisen, waren völlig erfolglos. 'myRange.setNumberFormat ((typeof undefined)); // oder einfach "undefiniert" verwandelt eine Zelle mit einer "0" in: 'un301899fin189930' - das heißt, sie analysiert 'undefiniert' als String und versucht dann _valiently_, die Zelle als Datum zu formatieren. (?) Die Übergabe von 'null' löst einen Serverfehler aus. –
Und wenn jemand anderes sich wundern 'myRange.setNumberFormat (" ");' nicht funktioniert. Es versteckt einfach alle Zahlen (und Daten). Saiten zeigen sich immer noch normal. Genau wie wenn Sie "" in das Feld für das benutzerdefinierte Zahlenformat in der Benutzeroberfläche platziert haben. –