Aantal dagen tussen 2 datums bepalen.

Status
Niet open voor verdere reacties.

MartinJM

Terugkerende gebruiker
Lid geworden
9 nov 2008
Berichten
1.144
Hallo,

Ik ben nu een programmaatje aan het maken waarin je kan bijhouden aan wie je iets uitleent. Maar nu heb ik een probleem met het bepalen van de rente, want ik heb namelijk geen idee hoe ik het aantal dagen tussen 2 datums kan bepalen.
Daar komt ook nog bij dat een van de datums door een parser wordt uitgelezen, waardoor het een string is.

Heeft iemand een idee?
 
Zo dus

Code:
          Try
            Dim date1, date2
            date1 = MaskedTextBox3.Text
            date2 = MaskedTextBox4.Text
            TextBox4.Text = DateDiff(DateInterval.Day, date1, date2) + 1 & " Dagen"
        Catch ex As Exception
            MsgBox("Vul een datum in", MsgBoxStyle.Critical)
        End Try
 
Dit heb ik ervan gemaakt:
Code:
Try
                    dagverschil = DateDiff(DateInterval.Day, selected(3), Now.ToString) + 1 & " Dagen"
                Catch ex As Exception
                    MsgBox("Vul een datum in", MsgBoxStyle.Critical)
                End Try

En toen kwam er deze error:
Code:
Error	1	Overload resolution failed because no accessible 'DateDiff' can be called without a narrowing conversion:
    'Public Function DateDiff(Interval As String, Date1 As Object, Date2 As Object, [DayOfWeek As Microsoft.VisualBasic.FirstDayOfWeek = FirstDayOfWeek.Sunday], [WeekOfYear As Microsoft.VisualBasic.FirstWeekOfYear = FirstWeekOfYear.Jan1]) As Long': Argument matching parameter 'Interval' narrows from 'Microsoft.VisualBasic.DateInterval' to 'String'.
    'Public Function DateDiff(Interval As Microsoft.VisualBasic.DateInterval, Date1 As Date, Date2 As Date, [DayOfWeek As Microsoft.VisualBasic.FirstDayOfWeek = FirstDayOfWeek.Sunday], [WeekOfYear As Microsoft.VisualBasic.FirstWeekOfYear = FirstWeekOfYear.Jan1]) As Long': Argument matching parameter 'Date1' narrows from 'String' to 'Date'.
    'Public Function DateDiff(Interval As Microsoft.VisualBasic.DateInterval, Date1 As Date, Date2 As Date, [DayOfWeek As Microsoft.VisualBasic.FirstDayOfWeek = FirstDayOfWeek.Sunday], [WeekOfYear As Microsoft.VisualBasic.FirstWeekOfYear = FirstWeekOfYear.Jan1]) As Long': Argument matching parameter 'Date2' narrows from 'String' to 'Date'.	C:\Users\Martin.PC_thuis\Documents\Visual Studio 2008\Projects\lenen\lenen\Form1.vb	104	35	lenen

Nog meer ideeën??

Toch bedankt voor het meedenken!:thumb:
 
Try
Code:
  Dim date1
            date1 = TextBox2.Text
            TextBox2.Text = DateDiff(DateInterval.Day, date1, Now, FirstDayOfWeek.Monday) & " Dagen"
        Catch ex As Exception
            MsgBox("Vul een datun in", MsgBoxStyle.Critical)
        End Try
 
Laatst bewerkt door een moderator:
Dank je!:thumb::thumb:

Hij werkt nu bij een van de leners, maar bij de andere, die 1 dag later zou zijn, zegt hij -205 dagen, terwijl dat 6 zou moeten zijn.

Enig idee?:confused:
 
Dan trek je de datum toch andersom af.

is de begindatum in het verleden ligt geeft het een aantal dagen.
ligt het in de toekomst is het verschil dus - aantaldagen
het verschil geeft dus aan dat de datum -205 dagen inde toekomst licht.
ten opzichte van de datum vandaag.
ik weet niet hoe je de code hebt aangepast.
dus kan niets zeggen wat er mis is
 
Laatst bewerkt:
Maar de andere is nu wel goed, en dan wordt die verkeerd.

Code:
Try
    Dim date1
    date1 = selected(3).ToString
    TextBox2.Text = DateDiff(DateInterval.Day, date1, Now, FirstDayOfWeek.Monday) & " Dagen"
Catch ex As Exception
    MsgBox("Vul een datun in", MsgBoxStyle.Critical)
End Try

*edit*

selected(3) komt van een parser...
 
Laatst bewerkt:
hoe ziet je selected(3).ToString er uit wat voor een notatie is dit?
 
Sorry mijn fout:o

Selected(3) was 1-9-2011, en dat is dus (waarschijnlijk) over 205 dagen..

BEDANKT:thumb::thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan