Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di barnico
    Registrato dal
    Oct 2001
    Messaggi
    490

    numero giorni tra intervallo date

    come posso estrarre il numero di giorni tra un intervallo di data, tipo 18/11/2006 21/11/2006

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    559
    Ciao, guarda questo link se ti puo essere utile

    http://www.morpheusweb.it/html/scrip...t_datediff.asp

    se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    204

    Re: numero giorni tra intervallo date

    Originariamente inviato da barnico
    come posso estrarre il numero di giorni tra un intervallo di data, tipo 18/11/2006 21/11/2006
    Ciao, ti scrivo qui di seguito uno dei tanti metodi.

    Dim Data1 As New Date(2006, 11, 21)
    Dim Data2 As New Date(2006, 11, 18)
    Dim Differenza As TimeSpan

    Differenza = Data1.Substract(Data2)

    Se vuoi inserire il valore della variabile 'Differenza' in una Label
    devi necessariamente convertirne il valore da tipo dati 'TimeSpan'
    in tipo dati 'string' come di seguito:

    Label1.Text = Differenza.ToString()
    -------------------------------------------------------------------
    Dichiarando la data nel formato precedente (YYYY, MM, GG)
    Ogni singola parte è accessibile come segue:

    Data1.Day
    Data1.Month
    Data1.Year

    Se vuoi aggiungere ad esempio 3 giorni alla prima data:

    NewDate = Data1.AddDays(3)

    . . . . . . .

    Buona giornata,

    RobyUA
    Ho bisogno di ferie !!!

  4. #4
    Utente di HTML.it L'avatar di barnico
    Registrato dal
    Oct 2001
    Messaggi
    490
    ok grazie molto

    buona giornata

  5. #5
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    qui abbiamo fatto anche il calcolo delle giornate lavorative fra due date
    http://forum.html.it/forum/showthrea...ght=lavorativi

    codice:
    Public Function isFestivo(ByVal giorno As String, ByVal mese As Integer) As Boolean
            Dim appo As DateTime
            Dim mess As Boolean
            Dim ggPasquetta As Integer
            Dim mmPasquetta As Integer
            Dim dayPasquetta As String
    
            dayPasquetta = Calcolo_Pasquetta(Year(Now))
            mmPasquetta = dayPasquetta.Substring(0, 2)
            ggPasquetta = dayPasquetta.Substring(3)
            mess = False
    
            If IsDate(giorno.ToString + "/" + mese.ToString + "/" + Year(Date.Now).ToString) Then
                appo = giorno.ToString + "/" + mese.ToString + "/" + Year(Date.Now).ToString
                If (mmPasquetta = mese And (ggPasquetta = giorno Or ggPasquetta + 1 = giorno)) Or _
                      (giorno.ToString = 1 And mese.ToString = 1) Or _
                      (giorno.ToString = 6 And mese.ToString = 1) Or _
                      (giorno.ToString = 25 And mese.ToString = 4) Or _
                      (giorno.ToString = 1 And mese.ToString = 5) Or _
                      (giorno.ToString = 2 And mese.ToString = 6) Or _
                      (giorno.ToString = 29 And mese.ToString = 6) Or _
                      (giorno.ToString = 15 And mese.ToString = 8) Or _
                      (giorno.ToString = 1 And mese.ToString = 11) Or _
                      (giorno.ToString = 8 And mese.ToString = 12) Or _
                      (giorno.ToString = 25 And mese.ToString = 12) Or _
                      (giorno.ToString = 26 And mese.ToString = 12) Or _
                      appo.DayOfWeek() = DayOfWeek.Saturday Or appo.DayOfWeek() = DayOfWeek.Sunday Then
                    'è sabato o domenica
                    mess = True
                End If
            ElseIf Not IsDate(giorno.ToString + "/" + mese.ToString + "/" + Year(Date.Now).ToString) And _
                IsNumeric(giorno) Then
                'Non è un giorno facente parte del mese(es: se il mese è di 30 il 31/mese/anno nn fa parte del mese)
                mess = True
            End If
            Return mess
        End Function
    
        Public Function Calcolo_Pasquetta(ByVal iAnno As Integer) As String
            Dim a, b, c, d, e, m, n, giorni As Integer
            Dim giorno, mese As String
    
            Select Case iAnno
                Case 30 To 1582
                    m = 15
                    n = 6
                Case 1700 To 1799
                    m = 23
                    n = 3
                Case 1800 To 1899
                    m = 23
                    n = 4
                Case 1900 To 2099
                    m = 24
                    n = 5
                Case 2100 To 2199
                    m = 24
                    n = 6
                Case 2200 To 2299
                    m = 25
                    n = 0
                Case 2300 To 2399
                    m = 26
                    n = 1
                Case 2400 To 2499
                    m = 25
                    n = 1
            End Select
    
    
            a = iAnno Mod 4
            b = iAnno Mod 7
            c = iAnno Mod 19
            d = (19 * c + m) Mod 30
            e = (2 * a + 4 * b + 6 * d + n) Mod 7
    
            giorni = 22 + d + e
    
            If (giorni <= 31) Then
                giorno = giorni
                mese = 3
            End If
    
            If (giorni = 57 And d = 29 And e = 6) Or (giorni = 56 And c > 10 And d = 28 And e = 6) Then
                giorno = giorni - 38
                mese = 4
            End If
    
            If giorni > 31 Then
                giorno = giorni - 31
                mese = 4
            End If
    
            If (mese.ToString).Length = 1 Then
                mese = CType(0, String) + CType(mese, String)
            End If
            If (giorno.ToString).Length = 1 Then
                giorno = "0" + giorno.ToString
            End If
            Calcolo_Pasquetta = mese & "|" & giorno
        End Function

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.