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-2024
 
zurück

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

VB.NET - Ein- und Umsteiger
Uhrzeitabgleich 
Autor: swirfel
Datum: 07.11.17 14:58

Hallo zusammen,

ich lese die Einträge meines Outlook-Kalenders aus setze aus dem Betreff eine neuen String zusammen.
Im Betreff steht immer eine Uhrzeit z.B. 14:00. Gibt es eine Möglichkeit diese mit der aktuellen Zeit * 1 Stunde zu vergleichen und alles was älter als 1Stunde ist zu ignorieren (also nicht die Terminstart- oder Endzeit, sondern tatsächlich die die im Betreff steht).

Gruß
swirfel
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Uhrzeitabgleich 
Autor: Franki
Datum: 08.11.17 01:28

Hallo,

steht in deinem String die Uhrzeit immer an gleicher Stelle, z.B. am Anfang oder Ende? Wenn ja, dann kannst du die entsprechenden 5 Stellen in DateTime umwandeln und dann damit auch rechnen, bzw. die Differenz zur aktuellen Uhrzeit ermitteln.

Wenn die Uhrzeit "irgendwo" im String steht, z.B. "Hallo Leute, 14:00 Uhr Betriebsversammlung" dann kannst du per Regulärer Ausdrücke auf eine Uhrzeit prüfen.

Aber immer das Datum mit im Auge behalten, denn sonst stimmt bei "Hallo Leute, übermorgen um 14:00 Betriebsversammlung" die Berechnung nicht.

Gruß
Frank
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Uhrzeitabgleich 
Autor: effeff
Datum: 08.11.17 16:27

Herausfinden, ob sich innerhalb des Textes eine Uhrzeit befindet, kannst Du mittels RegEx z. B. so:

Imports System.Text.RegularExpressions
 
Public Class Form1
 
    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) _
      Handles Button1.Click
        Dim strText As String = "aadfadf adfasdfasd asdfafda 14:00 adlkfk" & _
        "asldfkjölkj asdfkjökl"
 
        If GetTime(strText) <> "" Then
            MessageBox.Show(GetTime(strText), "Zeit gefunden:")
        Else
            MessageBox.Show("Keine Zeitangabe im Text gefunden!", "Pech" & _
              "gehabt:")
        End If
 
    End Sub
 
    Private Function GetTime(ByVal Prueftext As String) As String
 
        Dim arr() As String = Prueftext.Split(" ")
 
        Dim i As Integer = 0
 
        For i = 0 To UBound(arr) - 1
 
            If IsTime(arr(i)) Then
                Return arr(i)
                Exit For
            End If
 
        Next
 
    End Function
 
    Private Function IsTime(ByVal Prueftext As String) As Boolean
 
        Dim d As DateTime
 
        If Regex.IsMatch(Prueftext, "^[0-9][0-9]:[0-9][0-9]") Then
            If Date.TryParse(Prueftext, d) Then
                Return True
            End If
        Else
            Return False
        End If
 
    End Function
 
End Class
Du solltest nun in der Lage sein, von der gefundenen Zeit die Stunde abzuziehen...

EALA FREYA FRESENA

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Uhrzeitabgleich 
Autor: swirfel
Datum: 24.11.17 12:54

Hallo,

ich habs dann mit "DateDiff(DateInterval.Minute, CDate(t), CDate(zeiteintrag))" hinbekommen.

Vielen Dank
swirfel
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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-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