Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1376to1380
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Uhrzeit in Text umwandeln mit VBA

Uhrzeit in Text umwandeln mit VBA
27.08.2014 10:22:02
Jürgen
Guten Morgen,
ich muss in meinem Projekt Uhrzeiten vom Datumsformat ins Textformat umwandeln, weil die Uhrzeit dann in einen Text eingearbeitet werden muss.
Mit einer Tabellenfunktion geht das ganz gut. Wenn ich also in E6 als Uhrzeit 19:30 stehen habe, wird diese Zeit mit der Formel
=TEXT(REST(E9;1);"hh:mm")
in einen Text, also "19:30" umgewandelt.
Mache ich dies jedoch mit einer adäquaten VBA-Anweisung wie diese hier
ActiveCell.FormulaR1C1 = WorksheetFunction.Text(Range("E9") Mod 1, "hh:mm")
dann wird als Text nicht 19:30 sondern 00:00 ausgewiesen. Sieht jemand, wo hier mein Denkfehler liegt? Oder geht das überhaupt nicht mit VBA?
Über eine Antwort würde ich mich sehr freuen.
Liebe Grüße
Jürgen

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Uhrzeit in Text umwandeln mit VBA
27.08.2014 10:33:49
Rudi
Hallo,
ganz einfach so:
ActiveCell = Format(Range("E9"), "hh:mm")
Gruß
Rudi

AW: Uhrzeit in Text umwandeln mit VBA
27.08.2014 10:52:39
Daniel
Hi
ich vermute mal, dass hier dann die Excelautomatik zuschlägt und den Text wieder in eine Uhrzeit wandelt, weil er wie eine Uhrzeit aussieht.
probiere es mal so:
ActiveCell.Value = "'" & Format(Range("E9").value, "hh:mm")
das Hochkomma ist das Texterkennungszeichen und verhindert die automatische Umwandlung der Eingabe.
Gruß Daniel

AW: Uhrzeit in Text umwandeln mit VBA
27.08.2014 11:11:42
Jürgen
Danke euch Dreien für die schnelle Antwort. Rudis Vorschlag geht leider nicht, da bleibt das Zeitformat erhalten, aber die beiden Hochkommavorschläge sind genial. Die gehen beide.
Einen schönen Tag noch
Jürgen

Anzeige
AW: Uhrzeit in Text umwandeln mit VBA
27.08.2014 11:47:59
Jürgen
Danke euch Dreien für die schnelle Antwort. Rudis Vorschlag geht leider nicht, da bleibt das Zeitformat erhalten, aber die beiden Hochkommavorschläge sind genial. Die gehen beide.
Einen schönen Tag noch
Jürgen

AW: Uhrzeit in Text umwandeln mit VBA
27.08.2014 13:10:28
Jürgen
Nochmal von mir etwas zu dem Thema. Hochkomma ist prima, wenn die in Text umgewandelte Uhrzeit für sich in einer Zelle steht. Wird dieser Text jedoch in einen anderen Text integriert, so wie hier
"19:30 - 23:45"
dann wird vor der 2. Uhrzeit das Hochkomma sichtbar: "19:30 - '23:45"
Um das zu vermeiden, habe ich vorher die aktive Zelle als Text formatiert und dann das Hochkomma weggelassen.
Man lernt immer wieder dazu.
Tschüß
Jürgen

Anzeige
AW: Uhrzeit in Text umwandeln mit VBA
27.08.2014 13:24:53
Daniel
Hi
das Hochkomma brauchst du nur am Anfang und auch nur dann, wenn der Text für Excel als Zahl, Zeit oder Datum erkenntbar ist, denn dann versucht Excel die Umwandlung in einen dieser Werte.
Sobald du den Wert mit weiteren Zeichen kompinierst, kann Excel die Eingabe nicht mehr zuordnen und behandelt sie als Text, auch ohne Hochkomma.
Gruß Daniel

AW: Uhrzeit in Text umwandeln mit VBA
27.08.2014 10:43:55
fcs
Hallo Jürgen,
die REST-Funktion ist in deiner Formel nicht erforderlich. TEXT(E9;"hh:mm") liefert immer nur die Stunden:Minuten-Darstellung, des Wertes nach dem Dezimalzeichen.
Die Mod-Funktion im Code ist hier komplett falsch. Sie liefert immer eine Ganze Zahl als Ergebnis und die ist bei Wert Mod 1 immer 0.
Damit die Umwandlung der Excel Zeit via VBA in Text funktioniert muss du die Einfügezellen als Text formatieren, oder der Uhrzeit ein Hochkomma voranstellen. Ich empfehle die Hochkomma-Variante.
Sub aaTest()
ActiveCell.Value = "'" & WorksheetFunction.Text(Range("E9"), "hh:mm")
'oder Alternativ
ActiveCell.Offset.Value = "'" & Format(Range("E9"), "hh:mm")
End Sub
Gruß
Franz
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige