Office: VBA Zeitdifferenz ermitteln

Helfe beim Thema VBA Zeitdifferenz ermitteln in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich kriege es einfach nicht hin, kann mir bitte jemand helfen? Gegeben: Ein Excelsheet mit zwei Einträgen: A2=Datum/Zeit : 22.03.2023... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Pfefferminztee, 19. April 2023.

  1. VBA Zeitdifferenz ermitteln


    Hallo zusammen,
    ich kriege es einfach nicht hin, kann mir bitte jemand helfen?

    Gegeben: Ein Excelsheet mit zwei Einträgen:
    A2=Datum/Zeit : 22.03.2023 19:05:32
    B2=Zeit: 19:04:23

    Gesucht:
    Abs. Zeitdifferenz in Sekunden ohne Berücksichtigung des Datums in einer VBA-Variablen.

    Sieh einfach aus...

    Ganz lieben Dank schon mal für eure Hilfe
     
    Pfefferminztee, 19. April 2023
    #1
  2. Hajo_Zi
    Hajo_Zi Erfahrener User
    warum VBA?

    Tabelle1
     ABC
    119.04.2023 12:2322.04.2023 12:353,00833333333139

    verwendete Formeln
    Zelle Formel Bereich N/A
    C1=B1-A1  

    Zahlenformate
    Zelle Format Inhalt
    A1 'TT.MM.JJJJ hh:mm  45035,5159722222
    B1 'TT.MM.JJJJ hh:mm  45038,5243055556
    C1 '[ss]  3,00833333333139
    Zellen mit Format Standard werden nicht dargestellt
    http://excel-inn.de/dateien/vba_beispiele/tabellenanzeige_in_html_addin.zip
    http://Hajo-Excel.de/tools.htm
    Add-In-Version 25.24 einschl. 64 Bit
    XHTML-Tabelle zur Darstellung in Foren, einschl. Funktion zum Zurücklesen in eine Excel-Tabelle



    VBA Zeitdifferenz ermitteln GrußformelVBA Zeitdifferenz ermitteln Homepage
     
    Hajo_Zi, 19. April 2023
    #2
  3. Lieben Dank für deine Antwort.
    Warum in VBA?
    Weil ich es gerne direkt innerhalb eines VBA-Scriptes auswerten würde. Das Sheet selber soll unverändert bleiben. Innerhalb des Sheets bekomme ich das hin, indem ich deinen Wert in Spalte C um den ganzzahligen Teil derselben subtrahiere.
     
    Pfefferminztee, 19. April 2023
    #3
  4. Hajo_Zi
    Hajo_Zi Erfahrener User

    VBA Zeitdifferenz ermitteln

    Gut zu Deiner Lösung kann ich nichts schreiben, da ich nicht auf Deinen Rechner schaue.
    Ich bin dann raus.

     
    Hajo_Zi, 19. April 2023
    #4
  5. Exl121150 Erfahrener User
    Hallo,

    Code:
    Option Explicit
    
    Public Function Zeitdifferenz() As Double
      Dim DateTime1 As Double, Time2 As Double
      Dim Date1 As Double
      Dim Diff As Double
     
      With ActiveSheet
           DateTime1 = .Range("A2").Value
           Time2 = .Range("B2").Value
      End With
     
      Date1 = WorksheetFunction.Floor_Math(DateTime1, 1#)
      Diff = DateTime1 - Date1
      Zeitdifferenz = Diff - Time2
    
    End Function
    
     
    Zuletzt bearbeitet: 19. April 2023
    Exl121150, 19. April 2023
    #5
    1 Person gefällt das.
  6. Hallo, auch dir lieben Dank Anton!
    Ich teste es gleich morgen aus. Sieht im Grunde so aus, wie bei meinen erfolglosen Versuchen, nur die Worksheet.function kannte ich noch nicht. Aber, rein optisch Daumen hoch!
    Nochmals Danke und Grüße Ove
     
    Pfefferminztee, 19. April 2023
    #6
  7. So, ich habe es nun probiert und generell den Daumen hoch, es funktioniert.

    Nun, ich könnte mich jedoch ohrfeigen,
    denn das Datum liegt nicht wie anfangs beschrieben im Format
    22.03.2023 19:05:32 vor, sondern im Format
    22/03/2023 19:05:32
    Nun kommt es zu einer Typenunverträglichkeit. 8-(
    Weis jemand, wie ich die auflöse?

    Lieben Dank und Grüße Ove
     
    Pfefferminztee, 20. April 2023
    #7
  8. HKindler
    HKindler Erfahrener User

    VBA Zeitdifferenz ermitteln

    Hi,

    wieso so umständlich?
    Code:
    Option Explicit
    
    Public Function Zeitdifferenz() As Double
    Dim DateTime1 As Double, Time2 As Double
    With ActiveSheet
        DateTime1 = .Range("A2").Value
        Time2 = .Range("B2").Value
    End With
    Zeitdifferenz = DateTime1 - Int(DateTime1)  - Time2
    End Function

    EDIT: Das Format ist doch egal, solange es eine echte Excel-Zeit und kein Text ist.
    Falls es ein Text ist, dann kann dieser mit DateValue(Text) oder auch mit CDate(Text) umgewandelt werden.
     
    HKindler, 20. April 2023
    #8
    1 Person gefällt das.
  9. geht leider nicht, wegen der selben Typenunverträglichkeit.

    Das Format der Ursprungszelle ist „Standard“, das kann ich im Sheet nicht ändern, denn es soll ja „unberührt“ bleiben.

    Nachtrag: und tatsächlich,
    Int(Cdate(DateTime1) wie auch
    Int(DateValue(DateTime1)
    funktionieren beide.
    Dann war wohl das von mir nicht erkannte Textformat die Ursache meines Problems.
    Gut, dass es euch hier gibt! ;-)

    Dann ist mein Problem Dank euch jetzt gelöst!
    Vielen Dank!

    Viele Grüsse Ove
     
    Zuletzt bearbeitet: 20. April 2023
    Pfefferminztee, 20. April 2023
    #9
Thema:

VBA Zeitdifferenz ermitteln

Die Seite wird geladen...
  1. VBA Zeitdifferenz ermitteln - Similar Threads - VBA Zeitdifferenz ermitteln

  2. Datei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA

    in Microsoft Excel Hilfe
    Datei in mehreren Ordnern suchen und wenn gefunden öffnen?! Macro / VBA: Hallo Leute, Hoffentlich könnt ihr mir hier helfen, ich krieg den Syntax einfach nicht hin (wahrscheinlich ist es auch totaler käse den ich programmiert habe). Also im Grunde soll eine Datei...
  3. Textteile aus Zelle mit mehreren Absätzen

    in Microsoft Excel Hilfe
    Textteile aus Zelle mit mehreren Absätzen: Hallo, ich habe folgendes Problem: Ich habe in einer Liste in einer Zelle mehrere Angaben aus denen ich Textteile (z.B. alles was in () oder {} ist) herausziehen will, um damit weiter zurechnen....
  4. Aufrufen Datei aus SharePoint per VBA

    in Microsoft Access Hilfe
    Aufrufen Datei aus SharePoint per VBA: Wer kann mir helfen. In meiner Firma gibt es Dateien in diversen Ordner in Form von SharePoints, worauf alle Kolleginnen und Kollegen zugreifen kann. Dort habe ich eine Excel-Vorlage, worin die...
  5. VBA: Spalten auf anderen Worksheeds in der Mappe ausblenden.

    in Microsoft Excel Hilfe
    VBA: Spalten auf anderen Worksheeds in der Mappe ausblenden.: Hallo zusammen, Eine Tabelle mit 9 Worksheets, Datenblatt, Studien, Studie_1 ...Studie_7. Auf dem Deckblatt werden in Zelle B4-B10 die Namen der Studien eingetragen. Davon abhängig ob ein Name...
  6. VBA Zeilen kopieren mit Bedingung

    in Microsoft Excel Hilfe
    VBA Zeilen kopieren mit Bedingung: Hallo zusammen, Ich möchte per Makro Zeilen aus Tabelle2 in Tabelle3 kopieren, wenn eine Bedingung erfüllt ist. Bedingung: Der Wert in Spalte E (Tabelle2) kommt in Tabelle1 in Spalte E vor....
  7. VBA - Datensätze ans Ende einer anderen Tabelle kopieren

    in Microsoft Excel Hilfe
    VBA - Datensätze ans Ende einer anderen Tabelle kopieren: Hallo zusammen, ich habe gerade eine "Abrechnungs"-Datei für einen Kindergartenbasar erstellt. Es wäre klasse, wenn man per Schaltfläche die Datensätze aus der Tabelle "Kaeufer" ans Ende der...
  8. Laufzeitfehler 9 VBA

    in Microsoft Excel Hilfe
    Laufzeitfehler 9 VBA: Nschdem ich die Office Version von 2010 auf 2019 aktualisiert habe wird mir der Laufzeitfehler 9 ausgegeben. Das ist der Code Sub FiberCollect() Dim NumRows As Long 'letzte celle Dim Counter As...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden