| |
VB.NET - Ein- und UmsteigerZahlenwert in Jahr(e), Monat(e) und Tag(e) umrechnen | | | Autor: ERBRU | Datum: 27.01.19 12:29 |
| gibt es eine Funktion,
die mir eine Zahl (kein Datum!)
in Jahr, Monate, Tage, Stunden umrechnet?
Beispiel
365 = 1 Jahr, 0 Monate, 0 Tage , Stunden
375 = 1 Jahr ...
meine Zahl 6285 ?Jahr, ?Monate, ?Tage, ?Stunden, ?Minuten | |
Re: Zahlenwert in Jahr(e), Monat(e) und Tag(e) umrechnen | | | Autor: Kuno60 | Datum: 27.01.19 14:08 |
| Hallo,
eine Umrechnung von Tagen in Jahre und Monate ist nicht möglich, da Jahre und Monate keine feste Anzahl von Tagen haben und es gibt auch Schaltjahre!
Mit TimeSpan.FromDays(tage) kannst du aber eine gebrochene Zahl in Tage, Stunden, Minuten und Sekunden umrechnen lassen. | |
Re: Zahlenwert in Jahr(e), Monat(e) und Tag(e) umrechnen | | | Autor: Manfred X | Datum: 27.01.19 17:23 |
| Hallo!
Du kannst nur eine Zeitspanne behandeln.
Dafür benötigst Du einen Startzeitpunkt und eine
Definition der Spanne (in Tagen, Minuten, Ticks)
oder den Endzeitpunkt.
Es gibt allerdings in manchen Anwendungen die Möglichkeit
ein Jahr als 360 Tage bzw. als 12 Monate mit je 30 Tagen
anzusetzen. Meinst Du so eine Standardisierung? | |
Re: Zahlenwert in Jahr(e), Monat(e) und Tag(e) umrechnen | | | Autor: ERBRU | Datum: 27.01.19 17:43 |
| ich habe jetzt diese im Einsatz
ich denke das ich das so nicht rechnen kann, habe ja "Arbeitszeiten von bis" / Tag also mal
408 , 445 etc. ergibt die Summe 10125 und damit ist das untenstehende richtig
ich multipliziere jetzt die Summe mit 7
Dim summe As Integer = 0
For i As Integer = 0 To DGV2.Rows.Count - 1
If DGV2.Rows(i).Cells(2).Value IsNot DBNull.Value Then
summe += CInt(DGV2.Rows(i).Cells(2).Value)
End If
Next
Dim ts As New TimeSpan(0, 0, summe)
lbl_Anzahl_Anwesenheit.Text = "Anwesend gesamt: " & _
DGV2.Rows.Count.ToString
lbl_Minuten_Anwesenheit.Text = String.Concat("Arbeitszeit in [Min.] " & _
summe & " [Min]").ToString
lbl_ddHHMM_Anwesenheit.Text = "Minuten in dd.HH:MM " & String.Format( _
"{1:00}.{2:00}:{3:00}", ts.Days, ts.Hours, ts.Minutes, ts.Seconds) Ergebnis: bei der Summe: 10125 = dd.HH.MM 02.48:45
Beitrag wurde zuletzt am 27.01.19 um 17:54:31 editiert. | |
Re: Zahlenwert in Jahr(e), Monat(e) und Tag(e) umrechnen | | | Autor: Manfred X | Datum: 27.01.19 18:59 |
| Oben hattest Du eine andere Frage gestellt,
nämlich die Umrechnung in Tage, Monate und Jahre!
In Deinem Code summierst Du einen Wert, den Du als
Sekundenzahl an Timespan übergibst.
10125 Sekunden sind nur 2 Stunden 48 Minuten 45 Sekunden
Mit Tagen hat das nichts zu tun. | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
Neu! sevEingabe 3.0
Einfach stark!
Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. Weitere InfosTipp des Monats März 2024 Dieter OtterUTF-8 Konvertierung von Dateien und StringsVB6 selbst verfügt über keine Funktionen zur UTF-8 Konvertierung von Daten. Mit Hilfe des ADODB.Stream-Objekts lassen sich diese fehlenden Funktionen aber schnell nachrüsten. Access-Tools Vol.1
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|