vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik: Datum/Zeit und Timer · Datums- und Zeitfunktionen   |   VB-Versionen: VB611.11.15
Ermitteln, wann der 13. eines Monats auf Freitag fällt (VB6)

Alle Datumswerte mit Freitag, den 13. ermitteln

Autor:   ZardozBewertung:     [ Jetzt bewerten ]Views:  5.133 
ohne HomepageSystem:  WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Im  letzten Tipp wurde ein .Net-Code veröffentlicht, mit dem man Datumswerte ermitteln kann, die auf Freitag den 13. fallen. Das geht natürlich auch in VB6. Man braucht übrigens nicht jeden Tag eines Jahres zu testen, sondern nur jeweils den 13. eines Monats. Das reduziert den Rechenaufwand.

Erstellen Sie ein neues Projekt und fügen der Form einen Command-Button (Command1), sowie ein ListBox-Control (List1) hinzu.

Private Sub Command1_Click()
  Dim Jahr As Long
  Dim Monat As Long
  Dim J1 As Long
  Dim J2 As Long
  Dim flg1 As Boolean
  Dim Info As String
  Dim Idx As Long
  Dim Datum As String
 
  J1 = Year(Date)     ' Aktuelles Jahr
  J2 = J1 + 20        ' Aktuelles Jahr + 20
  flg1 = False
 
  With List1
    .Visible = False
    .Clear
 
    ' alle Jahre durchlaufen
    For Jahr = J1 To J2
      ' alle Monate pro Jahr durchlauden
      For Monat = 1 To 12
        ' Prüfen, ob der 13. des Monats ein Freitag ist
        Datum = "13." & Format$(Monat, "00") & "." & CStr(Jahr)
        If Weekday(Datum, vbSunday) = vbFriday Then
 
          Info = ""
          If flg1 = False Then
            If CDate(Datum) >= Date Then
              flg1 = True
              Info = " <- Nächster!"
              Idx = .NewIndex
            End If
          End If
 
          .AddItem FormatDateTime(Datum, vbLongDate) & Info
        End If
      Next Monat
    Next Jahr
 
    .AddItem CStr(.ListCount) & " Einträge von " & _
      CStr(J1) & " bis " & CStr(J2)
    .ListIndex = Idx + 1
    .Visible = True
    .SetFocus
  End With
End Sub

Dieser Tipp wurde bereits 5.133 mal aufgerufen.

Voriger Tipp   |   Zufälliger Tipp   |   Nächster Tipp

Über diesen Tipp im Forum diskutieren
Haben Sie Fragen oder Anregungen zu diesem Tipp, können Sie gerne mit anderen darüber in unserem Forum diskutieren.

Neue Diskussion eröffnen

nach obenzurück


Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
(einschl. Beispielprojekt!)

Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
- nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
- Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
 
   

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