Microsoft Excel

Herbers Excel/VBA-Archiv

Monatswechsel | Herbers Excel-Forum


Betrifft: Monatswechsel von: Gunter
Geschrieben am: 03.02.2010 13:13:21

Hallo Zusammen,

ich habe eine Tabelle die beim Monatswechsel neu angelegt wird. Für das Erkennen des Wechsels hab ich folgenden Code:

If Month(Right(ThisWorkbook.Names("oldDat").Value, 5)) < Month(Date) Then

Das hat bisher auch recht gut funktioniert, seit dem Jahreswechsel gibt es allerdings Probleme und das scheint mit dem obigen Code zusammen zu hängen. Ich verstehe diesen Code nicht wirklich und wäre daher froh, wenn mir jemand auf die Sprünge helfen könnte.
Für zweckdienliche Hinweise herzlichen Dank.

Gruss
Gunter

  

Betrifft: was steht im Namen oldDat? owT von: Rudi Maintaire
Geschrieben am: 03.02.2010 13:17:09




  

Betrifft: AW: was steht im Namen oldDat? owT von: Gunter
Geschrieben am: 03.02.2010 13:25:26

40149


  

Betrifft: AW: was steht im Namen oldDat? owT von: Renee
Geschrieben am: 03.02.2010 13:37:17

Hi Gunter

Das kann natürlich nicht funktionieren, denn 12 ist nun mal nicht < wie 1!
Also könnte es heissen:

    If Month(ThisWorkbook.Names("oldDat").Value) < Month(Date) Or _
       (Month(ThisWorkbook.Names("oldDat").Value) > Month(Date) And _
        Year(Thisworkbook.Names("oldDate").Value) < Year(Date)) Then
GreetZ Renée


  

Betrifft: AW: was steht im Namen oldDat? owT von: Rudi Maintaire
Geschrieben am: 03.02.2010 13:38:48

Hallo,
das ist der 2.12.09. Dieser Monat ist natürlich größer als der aktuelle.

if dateserial(year(ThisWorkbook.Names("oldDat")),Month(ThisWorkbook.Names("oldDat")),1) < dateserial(year(date),Month(date),1) then
Gruß
Rudi


  

Betrifft: AW: was steht im Namen oldDat? owT von: Gunter
Geschrieben am: 03.02.2010 14:39:37

Vielen Dank euch beiden. Genau das war mein Problem in oldDat stehen die Monate vom Ende letzten Jahres.
Neues Jahr neues Glück, dank euch funzt es wieder.

Gruss
Gunter