Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1648to1652
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

Zeitangaben als Zahlenwert in Array

Zeitangaben als Zahlenwert in Array
28.09.2018 14:56:01
Aaron
Hallo,
ich würde gerne Zeitangaben in ein Array schreiben, damit ich aus diesen den Mittelwert bilden kann - das geht auch per Formel, ist aber für mich nicht bedeutsam, da ich einen kompletten Report erstellen möchte.
Wenn ich nun die Zeitangabe (z.b. 2:14) per Formel durch 60 teile, dann erhalte ich eine Komma-Zahl, die ich mit dem entsprechenden Format wieder in die Zeit (00:02:14) umwandeln kann.
Aber wenn ich dasselbe im Array versuche, dann kommt "Typen unverträglich", obwohl die Variable als Double deklariert ist. Weiß jemand einen Tipp?
LG Aaron
Hier der Code:
Dim Tim() As Double
ReDim Tim(1)
If Sheets(2).Range(BD).Offset(A, 4).Value 0 Then
Tim(1) = Tim(1) + Sheets(2).Range(BD).Offset(A, 4).Value: C = C + 1
End If

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
XL Zeitangaben sind immer Double...
28.09.2018 15:29:39
EtoPHG
Hallo Aaron,
Was ist A`, was BD, was C ? Wo sind diese Variablen definiert?
Excel gut? In XL ist eine Zeit 2:14 IMMER ein Doublewert, sofern die Zelle nicht als Text definiert ist. Also was soll bitte die Teilung mit 60?
Gruess Hansueli
AW: XL Zeitangaben sind immer Double...
28.09.2018 15:47:00
Aaron
Hallo,
vielen Dank für deine Antwort. Eine Zeit wird, ähnlich wie ein Datum, in Excel als Dezimalwert hinterlegt, der erst durch das Format ein Datum (eventuell mit Uhrzeit) wird. Da die Daten aus einem Report stammen, der durch ein externes Programm als Excel-Datei ausgegeben wird, sind die Uhrzeitwerte mit dem Format "Standard" versehen.
Ich kann es also nicht in das Array bekommen, da er dies vermutlich als String interpretiert. Wenn ich das aber in Excel selbst durch 60 teile, dann gibt er mir eben jene Dezimalzahl aus, die ich durch das Format als Zeit darstellen kann.
Und ja, Excel gut - das Problem, was du beschreibst ist wohl der Fall, da die Datei von einem externen Programm erstellt wird. Dafür bräuchte ich eine Lösung, mit CDbl() erreiche ich nichts.
A ist die Spalte fürs Offset, mit 0 und als Long deklariert, BD ist ein String, welcher eine Zelladresse enthält, C ist nur ein Zähler.
Vielleicht sollte die Frage lauten: Wie kann ich einen als Text formatierten Zeitwert als Dezimalzahl umwandeln und in das Array bekommen?
Vielen Dank und Grüße
Aaron
Anzeige
AW: XL Zeitangaben sind immer Double...
28.09.2018 15:53:38
EtoPHG
hallo,
wenn z.B.:

timeString = "2:14:00"

dann z.B.:

x = CDbl(CDate(timeAsString))
und ja, die letzte Formulierung des Problems wäre einfacher zu verstehen gewesen!
Gruess Hansueli
AW: XL Zeitangaben sind immer Double...
28.09.2018 15:56:39
Aaron
Hallo,
vielen Dank für die Lösung!
LG
Aaron

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige