vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Re: alle datensätze einer bestimmten spalte zusammenrechnen 
Autor: Karl Klammer
Datum: 04.02.04 02:07

Hallo hallmi!

Versuchs mal damit, das Ganze mit DAO und Access:

Private Sub Form_Load()
 
Dim db As DAO.Database
Dim recset As DAO.Recordset
Dim nStunden As Long
Dim nMinuten As Long
Dim nSekunden As Long
Dim sDateSplit() As String
 
'Ich habe für das Feld "Zeit" als Datentyp TEXT eingestellt,
'denn nach deiner Formatierung "00:00:00" scheinen deine Stunden
'ins Unendliche fortlaufen zu dürfen, als nix mit 24h = 1 Tag,
'Feldwerte wie 292h, 59min, 59Sek sind wohl erlaubt.
'Aber Sekunden und Minuten werden wir dennoch umrechnen:-)
 
Set db = Workspaces(0).OpenDatabase(App.Path & "\db1.mdb")
 
Set recset = db.OpenRecordset("Select Zeit from Tabelle1")
If Not recset.EOF Then
    recset.MoveFirst
    Do
 
        sDateSplit = Split(recset.Fields("Zeit").Value, ":")
        nStunden = nStunden + sDateSplit(0)
        nMinuten = nMinuten + sDateSplit(1)
        nSekunden = nSekunden + sDateSplit(2)
        recset.MoveNext
    Loop While Not recset.EOF
 
    'das Problem: das Ganze könnte jetzt so aussehen: 123h, 400min, 623Sekunden
    'daher müssen wir jetzt noch die Minuten in den Sekunden von den Sekunden 
    ' abziehen
    'und zu den Minuten addieren, analog dazu das gleiche mit den Stunden in 
    ' den Minuten,
    'alles klar?
 
   Dim SekundenInMinuten As Long
   Dim MinutenInStunden As Long
   Dim RestSekunden As Long
   Dim RestMinuten As Long
 
   SekundenInMinuten = nSekunden / 60                       'die Minuten in den 
   ' Sekunden
   RestSekunden = nSekunden Mod 60                          'Die Rest-Minuten
 
   MinutenInStunden = (nMinuten + SekundenInMinuten) / 60   'Die Stunden in den 
   ' Minuten
   RestMinuten = nMinuten Mod 60                            'Die RestMinuten
 
   MsgBox "Stunden: " & nStunden + MinutenInStunden & vbCrLf & _
          "Minuten: " & RestMinuten + SekundenInMinuten & vbCrLf & _
          "Sekunden: " & RestSekunden
End If
 
End Sub
'das Ganze kannst du ja jetzt noch auf Tage, Wochen, Monate und Jahre ausdehnen
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
alle datensätze einer bestimmten spalte zusammenrechnen653hallmi03.02.04 16:16
Re: alle datensätze einer bestimmten spalte zusammenrechnen390hallmi03.02.04 19:06
Re: alle datensätze einer bestimmten spalte zusammenrechnen433Karl Klammer04.02.04 02:07
Vielen Dank, es hat geklappt! o.T.357hallmi04.02.04 18:26
Re: alle datensätze einer bestimmten spalte zusammenrechnen356ProfiProgrammie...06.02.04 22:18
Re: alle datensätze einer bestimmten spalte zusammenrechnen355Karl Klammer08.02.04 20:15

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

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 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