Bonjour,
Je sollicite votre aide pour un petit problème.
Je désire venir calculer la somme d'une plage, cette plage, je souhaite la déclarer en fonction de deux variables "Colonne" et "ligne" déclarés au préalable. Le problème ce que je n'arrive pas à déclarer la plage avec les deux varaibles, si j'utilise que la variable ligne cela fonction, si que la colonne ok aussi.
Plus simplement, je déclare une ligne et un colonne, ce qui n’emmène à une cellule, puis je souhaite sommer toutes les cellules de la ligne qui se situe jusqu’à 30 colonnes en arrière.
J'ai essayé de gérer çà avec :
Set moisglissant = Sheets("CTB").Range("Colonne-4 & Ligne : Colonne & Ligne")
ou bien
Set moisglissant = Sheets("CTB").Columns("Colonne-4 : Colonne").Rows(Ligne)
Ci joint la partie de mon code :
Sub injection_dans_table()
Dim Valeur_Cherchee As String
Dim Ligne As Double
Dim i As Double
Dim Colonne As Integer
Dim anneeencours As String
Dim trimestreencours As String
Dim moisencours As Integer
Dim semaineencours As Integer
'injection dans la table à l'instant "t"
anneeencours = year(Now())
trimestreencours = anneeencours & DatePart("q", Now)
moisencours = anneeencours & Month(Now())
semaineecours = anneeencours & DatePart("ww", Now)
i = 6
While Sheets("table").Cells(i, 4) <> ""
'Affectation de valeurs aux variables :
Valeur_Cherchee = Sheets("Table").Range("D" & i) 'on cherche telle valeur de telle feuille
Ligne = Sheets("CTB").Columns(1).Find(Valeur_Cherchee, lookat:=xlWhole).Row ' L est egal à la ligne ou on a trouvé la valeur correspondante / LookAt:=xlWhole) valeur exacte
Colonne = Sheets("CTB").Rows(5).Find(moisencours, lookat:=xlWhole).Column
Set moisglissant = Sheets("CTB").Range("Colonne-30 & Ligne : Colonne & Ligne")
'Set moisglissant = Sheets("CTB").Columns("Colonne-30 : Colonne").Rows(Ligne)
Sheets("Table").Range("J" & i) = Application.WorksheetFunction.Sum(moisglissant)
Merci d'avance pour votre aide,
Bonne journée à vous