Bonjour à tous,

j'essaye d'écrire un code pour sommer une plage de cellule variable correspondant à un résultat de recherche V

Dans ce code j'ai réussi à faire la recherche V cependant je suis bloqué pour faire ma somme sur la ligne correspondant au résultat de la recherche dans la page "Traitement"

En faite ce que je veux faire : c est résumé dans un tableau la somme des données correspondant à une catégorie dans la page principale,
la difficulté ici est que le nombre de colonne peut être variable,

Par ex :
page Principle colone A sont les catégories
page Traitement : colonne A les catégories et dans les colonnes suivantes ça sera toutes les données, il peut y avoir des données jusqu'a W...

Ce que je veux faire dans la page principale c est que :
chaque cellule de la colonne A seront testées et si le résultat est trouvé => Faire la somme dans la colonne 3 => de toutes les cellules sur la meme ligne (Numero de colonne indéterminé) de la page Traitement.

Pour le moment j'ai mis une SUM fixe pour tester le code : cela marche mais je veux que la plage de cellule ici soit variable en fonction du nombre de cellule remplit pour cette catégorie

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Sub recherche()

'il va réaliser une recherche V à partir du nom des catégories et si il trouve, il va sommer toutes la ligne correspondante de la page Traitement

Dim P As Range, C As Range, Teste

With Sheets("DATABASE")
    Set P = .Range(.[A2], .Cells(.Rows.Count, 1).End(xlUp))
End With

With Sheets("Traitement")
    
    For Each C In P
        Teste = Application.VLookup(C.Value, .Range(.[A2], .Cells(.Rows.Count, 1).End(xlUp)), 1, 0)
        
        If IsError(Teste) Then
        C.Offset(, 3) = ""
        Else
        C.Offset(, 3) = "=SUM(Traitement!B2:I2)"
        End If
     Next C
End With
End Sub
Merci pour votre aide