Avatar billede Sidsel Seniormester
04. maj 2021 - 16:47 Der er 1 løsning

Tjek dato vba

Hej.
Jeg bruger denne kode til at se om en dato er ældre end 31-05-2021, hvis den er, skal datoen ændres til 31-05-2022.

Men den virker ikke altid, og jeg kan ikke regne ud hvorfor, kan nogen hjælpe?

'Tjek udløbsdato

  Dim stringDate2 As String
  Dim formatDate2 As Date
  Dim checkDate2 As Date
  Dim NewDate As Date
  Dim isDateValue2 As Boolean

  Dim y2 As String
  Dim m2 As String
  Dim d2 As String

    stringDate2 = Workbooks("master 2021").Worksheets("ark1").Range("c12").Value

    checkDate2 = "31-05-2021"
    NewDate = "31-05-2022"

    isDateValue2 = IsDate(stringDate2)
   
    y2 = Right(stringDate2, 4)
    m2 = Mid(stringDate2, 4, 2)
    d2 = Left(stringDate2, 2)

    formatDate2 = CDate(d2 & "-" & m2 & "-" & y2)

    If formatDate2 < checkDate2 Then
        Workbooks("master 2021").Worksheets("ark1").Range("c12").Value = NewDate
    End If

Når den fejler, kan jeg se værdier d2, y2 og m2, men den kan ikke læse det som en dato.

I dette tilfælde er værdien af c12: 31-06-2020
d2=31
m2=06
y2=2020
Avatar billede Sidsel Seniormester
04. maj 2021 - 17:00 #1
øh, jeg fik et lyst øjeblik.. der er kun 30 dage i juni.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester