gestione delle date



  • gestione delle date
    di luckylu (utente non iscritto) data: 06/10/2015 10:46:46

    Ciao a tutti,
    ho un problema in vba apparentemente semplice.
    Devo scrivere in un foglio excel delle date che si incrementano di mese in mese.
    Ad esempio:
    scrivo la data di valutazione nella cella A1 del foglio 1= 30/06/2015

    poi vorrei creare una routine in vba per incrementare tale data di mese in mese (però fine mese):
    31/01/2015
    28/02/2015
    31/03/2015
    ...
    mi potete aiutare?
    grazie



  • di patel data: 06/10/2015 11:09:13

    prova questa
     
    Sub a()
    anno = 2015
    For mese = 1 To 12
      UltimoGiornoMese = DateSerial(anno, mese + 1, 0)
      Cells(mese, 1) = UltimoGiornoMese
    Next
    End Sub






  • di Luca73 data: 06/10/2015 13:24:21

    Per Modificare direttamente la cella A1
    E' solo un modifica alla macro di Patel che saluto

     
    Sub UltimoMeseSucc()
    Range("A1") = DateSerial(Year(Range("A1")), Month(Range("A1")) + 2, 0)
    End Sub






  • di Marius44 data: 06/10/2015 14:23:48

    Le macro di Luca e Patel sono perfette.
    Non capisco, però, perchè l'Utente voglia utilizzare VBA quando con una semplice formula si può ottenere il risultato.
    Se inserisco in A1 una data e scrivo in B1 la seguente formula

    =FINE.MESE(A1;1)

    ottengo la data di fine mese successivo. Se trascino la formula nelle celle successive, ho il fine mese della data della cella precedente.

    Ciao,
    Mario