Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
800to804
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
800to804
800to804
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Now

Now
08.09.2006 21:18:00
Thomas
Hallo,
ich möchte die aktuelle Uhrzeit in Zelle A1 setzen, und zwar mit Zehntelsekunden. Hierzu habe ich im Makro folgende Zeile:
Range("A1").Value = Now
Zelle A1 ist formatiert als "hh:mm:ss,0".
Nun ist es aber so, dass die Zehntelsekunden immer null sind! Warum?
Gebe ich hingegen von Hand in Zelle A1 die Funktion "=Jetzt()" ein (also ohne die Formatierung der Zelle zu verändern), erscheinen die Zehntelsekunden korrekt.
Wer kann helfen? Im voraus besten Dank!
Thomas

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Now
08.09.2006 21:26:59
Kurt
Hi,
das steht in der Hilfe:
Gibt einen Wert vom Typ Variant (Date) zurück, der das aktuelle Datum und die aktuelle Zeit aus den Einstellungen für das Systemdatum und die Systemzeit auf Ihrem Computer angibt.
Schau mal in der Sytemsteuerung nach, wie da die Zeit angezeigt wird.
mfg Kurt
AW: Now- Noch jemand eine Idee?
08.09.2006 21:36:52
Thomas
Hallo Kurt,
vielen Dank für den Hinweis, geht aber leider nicht.
Hier ein besseres Beispiel:

Sub Makro1()
Range("A1").FormulaR1C1 = "=NOW()"
Range("A2").Value = Now
End Sub

Zellen A1 und A2 sind gleich formatiert. In Zelle A1 bekomme ich die Zeit mit Zehntelsekunden korrekt angezeigt, in Zelle A2 sind sie immer null.
Hat noch jemand eine idee?
Vielen Dank für eure hilfe! :o)
Anzeige
AW: Now- Noch jemand eine Idee?
08.09.2006 21:54:49
Sigi
Hi Thomas,
nimm den Timer ...

Sub Zeit()
Dim Sek As Double
Range("A1").FormulaR1C1 = "=NOW()"
Range("A2").Value = CLng(Date) + VBA.Timer / 86400
End Sub

Gruß
Sigi
AW: Now FORMAT
08.09.2006 21:42:56
th.heinrich
hi auch Thomas,
hier aus der vba hilfe (xl97)
n diesem Beispiel werden verschiedene Einsatzmöglichkeiten der Format-Funktion zur Formatierung von Werten unter Verwendung von integrierten und benutzerdefinierten Formaten dargestellt. Die tatsächliche Ausgabe bei der Verwendung des Datum-Trennzeichens (/), Zeit-Trennzeichens (:) und der AM-/PM-Zeichenfolge hängt von dem aktuellen Gebietsschema Ihres Systems ab. Wenn Datums- oder Zeitangaben in der Entwicklungsumgebung gemacht werden, dann wird das kurze Datums- oder Zeitformat des Code-Gebietsschemas verwendet. Werden diese Angaben zur Laufzeit dargestellt, wird das kurze Datums- oder Zeitformat des System-Gebietsschemas verwendet. Dieses kann sich von dem Code-Gebietsschema unterscheiden. Hier wird "Deutschland" und "Deutsch" angenommen.
Zeit1 und Datum1 werden in der Entwicklungsumgebung mit den aktuellen Systemeinstellungen für das kurze Datums- und Zeitformat angezeigt.
Dim Zeit1, Datum1, ZF1
Zeit1 = #17:04:23#
Datum1 = #January 27, 1993#
' Aktuelle Systemzeit im langen Zeitformat des Systems bestimmen.
ZF1 = Format(Time, "Long Time")
' Aktuelles Systemdatum im langen Datumsformat des Systems bestimmen.
ZF1 = Format(Date, "Long Date")
ZF1 = Format(Zeit1, "h:m:s") ' Liefert "17:4:23".
ZF1 = Format(Zeit1, "hh:mm:ss AMPM") ' Liefert "17:04:23".
ZF1 = Format(Datum1, "dddd, mmm d yyyy") ' Liefert "Mittwoch,
' 27. Januar 1993".
' Wird kein Format angegeben, so wird eine Zeichenfolge geliefert.
ZF1 = Format(23) ' Liefert "23".
' Benutzerdefinierte Formate.
ZF1 = Format(5459.4, "##,##0.00") ' Liefert "5.459,40".
ZF1 = Format(334.9, "###0.00") ' Liefert "334,90".
ZF1 = Format(5, "0.00%") ' Liefert "500,00%".
ZF1 = Format("BANANE", " ZF1 = Format("birne", ">") ' Liefert "BIRNE".
gruss thomas
Anzeige
AW: Now FORMAT
08.09.2006 21:51:56
Thomas
Hallo Thomas,
danke, aber leider löst das auch nicht mein Problem (siehe meine Antwort bei Kurt).
Prinzipiell werden Zehntelsekunden ja angezeigt mit Jetzt() als Arbeitsblattfunktion, jedoch nicht, wenn die Zeit per Makro mit "Now" eingefügt wird...
Gruß,
Thomas
AW: Now
08.09.2006 21:58:39
EtoPHG
Hallo Thomas,
Die TimerFunktionen von VB und VBA geben nur ganze Sekunden zurück.
Wenn Du die Systemzeit per VBA in höherer Auflösung auslesen willst musst du auf die Windows API's zugreifen.
Gruss Hansueli
Now mit Millisekunden !
08.09.2006 22:47:13
EtoPHG
Hallo Thomas,
Hab Dir mal eine Function mit API-Call zusammengebastelt.
Setzte diesen Code in ein Modul.
Anschliessend kannst Du in beliebige Zelle (Nicht Formatieren) die Funktion =getActTime() einsetzen.

Option Explicit
Private Declare Sub GetLocalTime Lib "kernel32" _
(lpSystem As SYSTEMTIME)
Private Type SYSTEMTIME
wYear          As Integer
wMonth         As Integer
wDayOfWeek     As Integer
wDay           As Integer
wHour          As Integer
wMinute        As Integer
wSecond        As Integer
wMilliseconds  As Integer
End Type
Private sysLocalTime As SYSTEMTIME
Public Function getActTime() As String
Application.Volatile
GetLocalTime sysLocalTime
getActTime = sysLocalTime.wHour & ":" & _
Format(sysLocalTime.wMinute, "00") & ":" & _
Format(sysLocalTime.wSecond, "00") & "," & _
sysLocalTime.wMilliseconds
End Function

Gruss Hansueli
Anzeige
AW: Now
09.09.2006 00:42:08
K.Rola
Hallo,

Sub Zehntel()
With ActiveCell
.Formula = "=NOW()"
.NumberFormat = "hh:mm:ss.00"
.Value = .Value
End With
End Sub

Oder Zelladresse angeben.
Gruß K.Rola
AW: Now
09.09.2006 18:31:58
Thomas
Hallo K.Rola,
vielen Dank für deine Info! So ähnlich hatte ich es auch schon:

Sub Makro1()
Range("A1").FormulaR1C1 = "=NOW()"
Range("A2").Value = Now
End Sub

Zellen A1 und A2 sind gleich formatiert (Zeit mit Zehntel). In Zelle A1 bekomme ich die Zeit mit Zehntelsekunden korrekt angezeigt, in Zelle A2 sind sie immer null.
Hmm...
Anzeige
AW: Now
09.09.2006 19:22:37
K.Rola
Hallo,
machs nicht so ähnlich, sondern genau, wie ich es gepostet habe.
Gguß K.Rola

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige