Discussion:
Zahlenformat für Leerzeichen statt führender Null bei Zeitdauern?
(zu alt für eine Antwort)
Tim Landscheidt
2022-12-20 14:14:45 UTC
Permalink
Moin,

ich möchte Zeitdauern mit Minutengenauigkeit („0:39“,
„2:15“, „13:24“, „24:00“) in einer Spalte zentriert forma-
tieren, aber dabei die „:“ untereinander ausrichten à la:

| Spaltenüberschrift
| 0:39
| 2:15
| 13:24
| 24:00

Für Zeitdauern verwende ich das Format „[h]:mm“. Dabei wer-
den jedoch die „:“ nicht untereinander ausgerichtet.

Mit „[hh]:mm“ funktioniert das, aber dafür werden bei „0:39“
und „2:15“ überflüssige Nullen eingefügt („00:39“ und
„02:15“).

Ich könnte die Zellen rechtsbündig formatieren und dann mit
den Einzügen basteln, aber das wäre zu aufwendig und fragil.

Wie kann ich das Zahlenformat definieren, so dass Excel für
den Wert „0:39“ die Ausgabe „ 0:39“ und für „13:24“ „13:24“
erzeugt?

TIA,
Tim
Friedrich Karl Siebert
2022-12-20 16:54:43 UTC
Permalink
Post by Tim Landscheidt
Moin,
ich möchte Zeitdauern mit Minutengenauigkeit („0:39“,
„2:15“, „13:24“, „24:00“) in einer Spalte zentriert forma-
| Spaltenüberschrift
| 0:39
| 2:15
| 13:24
| 24:00
Für Zeitdauern verwende ich das Format „[h]:mm“. Dabei wer-
den jedoch die „:“ nicht untereinander ausgerichtet.
Mit „[hh]:mm“ funktioniert das,
Du benutzt "benutzerdefiniert"?
Mit "Uhrzeit" bekommst du das gewünschte, oder sehe ich das falsch?
--
mit freundlichem Gruß
F.K.
Tim Landscheidt
2022-12-20 19:49:52 UTC
Permalink
Post by Friedrich Karl Siebert
Post by Tim Landscheidt
ich möchte Zeitdauern mit Minutengenauigkeit („0:39“,
„2:15“, „13:24“, „24:00“) in einer Spalte zentriert forma-
| Spaltenüberschrift
| 0:39
| 2:15
| 13:24
| 24:00
Für Zeitdauern verwende ich das Format „[h]:mm“. Dabei wer-
den jedoch die „:“ nicht untereinander ausgerichtet.
Mit „[hh]:mm“ funktioniert das,
Du benutzt "benutzerdefiniert"?
Ja.
Post by Friedrich Karl Siebert
Mit "Uhrzeit" bekommst du das gewünschte, oder sehe ich das falsch?
„Uhrzeit“ („h:mm“) formatiert „0:39“ und „13:24“ in unter-
schiedlicher Breite, so dass bei einer zentrierten Spalte
die Doppelpunkte nicht untereinander ausgerichtet sind.

Tim
Friedrich Karl Siebert
2022-12-21 12:49:34 UTC
Permalink
Post by Tim Landscheidt
Post by Friedrich Karl Siebert
Post by Tim Landscheidt
ich möchte Zeitdauern mit Minutengenauigkeit („0:39“,
„2:15“, „13:24“, „24:00“) in einer Spalte zentriert forma-
| Spaltenüberschrift
| 0:39
| 2:15
| 13:24
| 24:00
Für Zeitdauern verwende ich das Format „[h]:mm“. Dabei wer-
den jedoch die „:“ nicht untereinander ausgerichtet.
Mit „[hh]:mm“ funktioniert das,
Du benutzt "benutzerdefiniert"?
Ja.
Post by Friedrich Karl Siebert
Mit "Uhrzeit" bekommst du das gewünschte, oder sehe ich das falsch?
„Uhrzeit“ („h:mm“) formatiert „0:39“ und „13:24“ in unter-
schiedlicher Breite, so dass bei einer zentrierten Spalte
die Doppelpunkte nicht untereinander ausgerichtet sind.
Tim
Bei mir sind die Doppelpunkte exakt untereinander,  bei "rechtsbündig".
--
mit freundlichem Gruß
F.K.
Tim Landscheidt
2022-12-21 14:11:24 UTC
Permalink
Post by Friedrich Karl Siebert
Post by Tim Landscheidt
Post by Friedrich Karl Siebert
Post by Tim Landscheidt
ich möchte Zeitdauern mit Minutengenauigkeit („0:39“,
„2:15“, „13:24“, „24:00“) in einer Spalte zentriert forma-
| Spaltenüberschrift
| 0:39
| 2:15
| 13:24
| 24:00
Für Zeitdauern verwende ich das Format „[h]:mm“. Dabei wer-
den jedoch die „:“ nicht untereinander ausgerichtet.
Mit „[hh]:mm“ funktioniert das,
Du benutzt "benutzerdefiniert"?
Ja.
Post by Friedrich Karl Siebert
Mit "Uhrzeit" bekommst du das gewünschte, oder sehe ich das falsch?
„Uhrzeit“ („h:mm“) formatiert „0:39“ und „13:24“ in unter-
schiedlicher Breite, so dass bei einer zentrierten Spalte
die Doppelpunkte nicht untereinander ausgerichtet sind.
Bei mir sind die Doppelpunkte exakt untereinander,  bei "rechtsbündig".
Ich möchte die Zeitangaben aber /zentriert/ (bezogen auf
zweistellige Stundenzahlen) darstellen.

Tim
Claus Busch
2022-12-21 14:56:27 UTC
Permalink
Hallo Tim,
Post by Tim Landscheidt
Ich möchte die Zeitangaben aber /zentriert/ (bezogen auf
zweistellige Stundenzahlen) darstellen.
das funktioniert mit Zeiten so nicht.
Du musst entweder die Zeiten hh:mm formatieren und dich mit der
führenden Null abfinden oder eine Monospace-Schriftart verwenden
(Schriftart gleicher Breite).
Eine andere Möglichkeit wäre, die Zeiten mit dem Format
?0":"0?
immer vierstellig einzugeben, z.B.:
0030, 2400 usw.


Freundliche Grüße
Claus
--
Windows11
Microsoft 365 for business
Tim Landscheidt
2023-01-08 16:20:05 UTC
Permalink
Post by Claus Busch
Post by Tim Landscheidt
Ich möchte die Zeitangaben aber /zentriert/ (bezogen auf
zweistellige Stundenzahlen) darstellen.
das funktioniert mit Zeiten so nicht.
Du musst entweder die Zeiten hh:mm formatieren und dich mit der
führenden Null abfinden oder eine Monospace-Schriftart verwenden
(Schriftart gleicher Breite).
Da Ziffern in den meisten Schriftarten die gleiche Breite
haben, war ich davon ausgegangen, dass das kein Problem dar-
stellt.
Post by Claus Busch
Eine andere Möglichkeit wäre, die Zeiten mit dem Format
?0":"0?
0030, 2400 usw.
Ich habe jetzt eine Lösung gefunden: Das Unicode-Leerzeichen
„U+2007 FIGURE SPACE“ erzeugt eine Breite, die der von Zif-
fern entspricht. Damit kann ich den Bereich derart formatie-
ren, dass in dem Normalfall ein solches Leerzeichen dem For-
mat vorangestellt wird, und dann eine bedingte Formatierung
darüberlegen, die für Zellenwerte >= 10 h dieses Leerzeichen
weglässt.

Diese Lösung funktioniert nicht für alle denkbaren Eingaben,
aber meinen Anwendungsfall deckt sie ab.

In Office-JS sieht das dann testweise so aus:

| const range = sheet.getRange('A1:A10');
| range.values = [[0], [.1], [.2], [.3], [.4], [.5], [.6], [.7], [.8], [.9]];
| range.numberFormat = Array(10).fill(['\u2007[h]:mm']);
| range.conditionalFormats.clearAll();
| const cf = range.conditionalFormats.add(Excel.ConditionalFormatType.cellValue);
| cf.cellValue.format.numberFormat = '[h]:mm';
| cf.cellValue.rule = { formula1: "=TIME(10,0,0)", operator: "GreaterThanOrEqual" };

und sollte sich prinzipiell auch interaktiv verwenden las-
sen.

Danke für die Inspirationen,
Tim

Loading...