Boucle VBA en colonne vers ligne

bonjour,

le code ci-dessous me donne les dates du mois en colonne.

Si je souhaite qu'elles se mettent en ligne, comment modifier le code ?

Sub recap_mois()

Application.ScreenUpdating = False

    annee = 2014

    'Supression
    Range("B3:AF3").ClearContents

 'Boucle mois
    For mois = 1 To 1

        nb_jours = Day(DateSerial(annee, mois + 1, 1) - 1)
        Colonne = mois * 2 + 0

        'Boucle jour
        For jour = 1 To nb_jours
        Date_du_jour = DateSerial(annee, mois, jour)
        Cells(jour + 2, Colonne) = Date_du_jour
       Next
    Next

End Sub

Francky

Bonjour,

essaie ceci

Sub recap_mois()

Application.ScreenUpdating = False

    annee = 2014

    'Supression
   Range("B3:AF3").ClearContents

 'Boucle mois
   For mois = 1 To 1

        nb_jours = Day(DateSerial(annee, mois + 1, 1) - 1)
        Colonne = mois * 2 + 0

        'Boucle jour
       For jour = 1 To nb_jours
        Date_du_jour = DateSerial(annee, mois, jour)
        Cells(Colonne, jour + 2) = Date_du_jour
       Next
    Next

End Sub

Bonjour H2so4,

c'est ça, bon je vais comparer les codes afin de comprendre.

encore merci,

Francky

Bonjour,

j'ai simplement inversé les variables utilisées dans l'instruction cells. Cette instruction a 2 paramètres - cells(x,y) -

le premier indique le numéro de ligne et le second le numéro de colonne de la cellule que l'on veut référencer.

cells(jour+2, colonne) écrira en ligne 3 à ligne nb_jours+2 (jour +2) et colonne 2 (colonne = mois*2+0)

en inversant

cells(colonne, jour++2) écrira en ligne 2( car la variable colonne = mois *2+0) et colonne 3 à colonne nb_jours+2 (jour +2)

Merci h2so4 pour ces explication et d'avoir pris le temps.

Franck

Rechercher des sujets similaires à "boucle vba colonne ligne"