Calc: Einheiten formatieren

Hallo,
bisher habe ich hier Einheiten formatiert, indem ich bspw. für
Kilometer-Werte die Formatierung der Zellen auf "#.##0 km" gesetzt habe.
Das benutze ich nicht oft, daher kann ich nicht sagen, wann es zuletzt
funktioniert hatte; als ich dies gerade eben in LO 4.1.5.3 unter
OpenSuSE Linux 13.1 tat, erhielt ich als Ergebnis statt der erwarteten
"470 km" den Formatstring, also "#.##0 km" angezeigt.

Hat sich da etwas geändert, so dass ich es anders formatieren muss, ist
das ein Bug, ein Feature, oder...? Und: wie erhalte ich die gewünschte
Anzeige?

Hallo Boris,

auf der Tastatur sind die Zahl Null und der Buchstabe O knapp nebeneinander und SEHR ÄHNLICH (0O). Probier mal, ob du dich vertippt hast!
Nebenbei: Ich habe solche Formate immer mit »#.### xy« bzw »### xy« formatiert, falls die letzte Zahl gerundet werden sollte, mit »RUNDEN(...)« gerundet.

lg
Gerald

Hallo Gerald,
einen Vertipper kann ich ausschließen, da ich einfach ein vorhandenes
Format "#.##0" um " km" ergänzt habe. Bei "#.### km" oder "###km"
erhalte ich ebenfalls nur den Formatstring angezeigt, nicht den Wert.
Ist das bei Dir anders?

Hallo,

Die Hilfe (Formatierungs-Codes) besagt, dass der Formatierungsstring in
diesem Fall lautet "#.##0 \km", also mit dem Backslash vor km. Das
funktioniert hier bei mir im gewünschten Sinn.

bei mir so nicht. Ich habe ein wenig herumgespielt und festgestellt,
dass es bspw. mit

#.##0 \m

funktioniert, mit

#.##0 \km

jedoch nicht. Entweder hängt es von der Länge ab, oder davon, ob LO die
Einheit kennt, oder so ähnlich, oder es ist ein Bug. Aber ich habe es
dann doch einmal mit Anführungszeichen versucht; das war mir bei der
Zitiererei etwas abhanden gekommen. Wenn man das ohne weitere Zeichen in
eine extra Zeile schreibt, wird es mir deutlich. Das Format

#.##0 "km"

funktioniert jedenfalls, das nehme ich.

Vielen Dank für die Anregungen.

Hallo Boris,

ich habe auch ein wenig herumgespielt und bin dabei drauf gekommen, dass LO ( bei mir 3.6.7.2) bestimmte Buchstaben im Zahlenformat gar nicht mag (q e r t s g h und m), aber wie du ja soeben selbst geschrieben hast, "in Anführungszeichen" alles. Ich habe diese Formatierungen eigentlich schon lange nicht mehr gebraucht, deswegen kam ich nicht gleich drauf.
0.000 "km" und #.### "km" sind übrigens identisch

lg Gerald

Hallo Boris

Hallo,

Die Hilfe (Formatierungs-Codes) besagt, dass der Formatierungsstring in
diesem Fall lautet "#.##0 \km", also mit dem Backslash vor km. Das
funktioniert hier bei mir im gewünschten Sinn.

bei mir so nicht. Ich habe ein wenig herumgespielt und festgestellt,
dass es bspw. mit

#.##0 \m

funktioniert, mit

#.##0 \km

jedoch nicht. Entweder hängt es von der Länge ab, oder davon, ob LO die
Einheit kennt, oder so ähnlich, oder es ist ein Bug. Aber ich habe es
dann doch einmal mit Anführungszeichen versucht; das war mir bei der
Zitiererei etwas abhanden gekommen. Wenn man das ohne weitere Zeichen in
eine extra Zeile schreibt, wird es mir deutlich. Das Format

#.##0 "km"

funktioniert jedenfalls, das nehme ich.

Das ist nun mehr als seltsam - bei mir funktioniert zwar

#.##0 "km"

auch im gewünschten Sinne, aber zumindest vorhin eben genauso

#.##0 \km

Jetzt funktionierts nicht mehr - vielleicht habe ich zuerst anders formatiert, wer weiss?

Ich habe dann aber ein bisschen weiter experimentiert und gefunden:

\m, \s, \t

funktioniert genauso wie

\min, \°C

Es kann also offensichtlich nicht mit der Länge des Strings zusammenhängen, der nach dem Backslash folgt. Es ist aber mehr als seltsam, dass es unter gewissen Bedingungen funktioniert, unter anderen nicht ... Ob das irgendwie mit dem Handling von regulären Ausdrücken zu tun hat? Sonst wäre es m.E. definitiv ein Bug. Nun, anywhy, die Lösung mit den Anführungsstrichen scheint tauglich. Und die Zahlen bleiben Zahlen, sind also auch nach der Formatierung noch summierbar.

Freundlich grüsst

Ernst

Hallo Gerald, *,

ich habe auch ein wenig herumgespielt und bin dabei drauf gekommen, dass LO
( bei mir 3.6.7.2) bestimmte Buchstaben im Zahlenformat gar nicht mag (q e r
t s g h und m),

weil die u.a. für Datumsformate verwendung finden.

aber wie du ja soeben selbst geschrieben hast, "in
Anführungszeichen" alles.

Genau. Entweder verwendet man den Backslash vor einem einzigen
Zeichen, oder man verwendet Anführungszeichen.

Ich habe diese Formatierungen eigentlich schon
lange nicht mehr gebraucht, deswegen kam ich nicht gleich drauf.
0.000 "km" und #.### "km" sind übrigens identisch

Nein, sind sie nicht. Gib mal nur "1" oder nur "1,2" oder auch mal "0,34" ein.

0,##0 "km"
bzw. in der alternativen Form mit Backslash:
0,##0 \k\m

wird am ehesten dem gewünschten Resultat entsprechen.

ciao
Christian

Hallo,

Es kann also offensichtlich nicht mit der Länge des Strings
zusammenhängen, der nach dem Backslash folgt.

Nunja, vielleicht doch, denn

#.##0 \k\m

funktioniert auch, wie ich gerade ausprobiert habe.

Hallo Boris,

einen Vertipper kann ich ausschließen, da ich einfach ein vorhandenes
Format "#.##0" um " km" ergänzt habe. Bei "#.### km" oder "###km"
erhalte ich ebenfalls nur den Formatstring angezeigt, nicht den Wert.
Ist das bei Dir anders?

Ich habe das gerade einmal durchgetestet. Auch in LO 3.3.4 funktioniert
Deine Schreibweise nicht. Hat auch nichts mit dem Betriebssystem zu tun,
da wir nicht so weit voneinander entfernt liegen. Hier OpenSUSE 12.3. Du
mischt ja einfach Text und Zahlen.
Die normale Schreibweise sehe ich mir, wenn ich das brauche, einfach bei
den Währungen an. Dann übertrage ich das für g, kg, m, km usw.
#.##0 [$km]
führt zum Ziel - in allen Varianten von LO.

Gruß

Robert

Hallo Boris, hallo Ernst, *

aus der Hilfe:

Text und Zahlen
Wenn Sie Text in ein Zahlenformat einbinden möchten, das auf Zellen mit
Zahleninhalt angewendet werden soll, setzen Sie vor und hinter den Text
doppelte Anführungszeichen ("). Handelt es sich um einen einzelnen
Buchstaben, stellen Sie ihm einen Rückstrich (\) voran. Geben Sie also
beispielsweise #,# "Meter" ein, wenn Sie eine Ausgabe in der Form "3,5
Meter" wünschen und #,# \m für die Ausgabe "3,5 m".

Handelt es sich um einzelne Buchstaben: \F
sonst: "Format"

Die Variante, sich das einfach aus den Währungscodes abzuschauen, geht
aber genauso.

Gruß

Robert

Hallo Boris

Hallo,

Es kann also offensichtlich nicht mit der Länge des Strings
zusammenhängen, der nach dem Backslash folgt.

Nunja, vielleicht doch, denn

#.##0 \k\m

funktioniert auch, wie ich gerade ausprobiert habe.

Ich meinte, es gibt durchaus auch Kombinationen aus zwei oder mehr Zeichen, die LO akzeptiert, wie z.B. \min, \°C, die Sache ist also zumindest nicht konsequent! Würde es streng so funktionieren wie es in der Hilfe steht (s. Mail von Robert), dann dürften diese Fälle nicht "akzeptiert" werden.

Freundlich grüsst

Ernst

Bekommst Du auch nur einen Formatstring angezeigt, wenn Du eine andere
Formatierung auswählst, z. B. aus dem Bereich Währung? Was bekommst Du,
wenn Du als Format '#.##0 "km"' schreibst, sprich den Text in Hochkomma
setzt, wie es formal eigentlich korrekt ist?

Wolfgang

Hallo,
bisher habe ich hier Einheiten formatiert, indem ich bspw. für
Kilometer-Werte die Formatierung der Zellen auf "#.##0 km" gesetzt habe.
Das benutze ich nicht oft, daher kann ich nicht sagen, wann es zuletzt
funktioniert hatte; als ich dies gerade eben in LO 4.1.5.3 unter
OpenSuSE Linux 13.1 tat, erhielt ich als Ergebnis statt der erwarteten
"470 km" den Formatstring, also "#.##0 km" angezeigt.

https://help.libreoffice.org/Common/Number_Format_Codes/de#Text_und_Zahlen

Wenn Sie Text in ein Zahlenformat einbinden möchten, das auf Zellen
mit Zahleninhalt angewendet werden soll, setzen Sie vor und hinter
den Text doppelte Anführungszeichen ("). Handelt es sich um einen
einzelnen Buchstaben, stellen Sie ihm einen Rückstrich (\) voran.
Geben Sie also beispielsweise #,# "Meter" ein, wenn Sie eine Ausgabe
in der Form "3,5 Meter" wünschen und #,# \m für die Ausgabe "3,5 m".

Hat sich da etwas geändert, so dass ich es anders formatieren muss, ist
das ein Bug, ein Feature, oder...?

AFAIK war das schon immer so.

Wolfgang