Associer le mois avec l'année

Es que en peut associer le mois avec l'année avec le code vba que Le membre GMB m’avais fournir dans l’exemple précédent,

Insertion d’une année « H1 » Manuellement pour affiche le résulta du mois «A1 » selon l’année inséré.

Merci.

Bonjour,

Essai avec le code ci-dessous. Je l'ai un peu modifié, les variables ont été typées et déclarées dans la proc car une portée "Module" est inutile (utilisation de la mémoire inutilement) :

Sub cadumois()

    Dim Cell As Range
    Dim monmois As Integer
    Dim Annee As Integer
    Dim ln As Long
    Dim lgn As Long
    Dim J As Integer

    On Error Resume Next
    monmois = InputBox("mois choisi (en chiffre - janvier = 1, février = 2, etc...)") * 1

    If Err.Number <> 0 Then
        MsgBox "Seulement numérique entre 1 et 12 !"
        Exit Sub
    End If

    If monmois > 12 Or monmois < 1 Then
        MsgBox "La valeur entrée doit se situer entre 1 et 12 inclus !"
        Exit Sub
    End If

    Annee = Worksheets("Consommation").Range("H1").Value

    If Annee = 0 Then
        MsgBox "Entrer une année en numérique dans la cellule H1 de la feuille 'Consommation' !"
        Exit Sub
    End If

    Range("A1") = Choose(monmois, "JANVIER", "FEVRIER", "MARS", "AVRIL", "MAI", "JUIN", "JUILLET", "AOUT", "SEPTEMBRE", "OCTOBRE", "NOVEMBRE", "DECEMBRE")

    Range("A3:AG24").ClearContents

    With Sheets("Mouvement")

        For ln = 7 To .Range("B" & Rows.Count).End(xlUp).Row

            'ici, contrôle avec l'année !
            If Month(.Range("C" & ln)) = monmois And Year(.Range("C" & ln)) = Annee Then

                If .Range("B" & ln) = "Sortie" Then

                    J = Day(.Range("C" & ln))
                    Set Cell = Range("A3:A" & Range("A" & Rows.Count).End(xlUp).Row).Find(.Range("F" & ln), lookat:=xlWhole)

                    If Not Cell Is Nothing Then
                        lgn = Cell.Row
                    Else
                        lgn = Range("A" & Rows.Count).End(xlUp)(2).Row
                    End If

                    Range("A" & lgn) = .Range("F" & ln)
                    Cells(lgn, J + 1).Value = Cells(lgn, J + 1).Value + .Range("G" & ln)

                End If

            End If

        Next ln

    End With

End Sub

Hervé.

Rechercher des sujets similaires à "associer mois annee"