VBA - Problème sumif avec un critère variable
Bonjour à tous,
Novice en VBA, j'ai essayé de coder quelques lignes mais je n'arrive pas à résoudre la somme.si qui bugue.
Dans l'idée, j'ai un classeur Excel composé des feuilles suivantes :
X onglets présentant chacun (i) les coûts associés à un projet et (2) l'affectation de ces coûts à des marques
1 onglet synthétisant les coûts par marque.
1 onglet template
Sur l'onglet synthèse, j'ai créé un bouton qui permet :
1. d'ajouter un nouvel onglet standard sur la forme d'un onglet type.
2. de générer une colonne à droite du tableau de synthèse qui reprendra les informations renseignées dans le nouvel onglet.
Tout fonctionne sauf la formule du sumif et je ne suis pas sûr de comprendre malgré google comme l'utiliser sur VBA...
Je vous mets le code ci-dessous en plus du fichier joint
Sub Nouveau_projet()
'Ajout_projet Macro
Sheets("Template projet").Select
Sheets("Template projet").Copy Before:=Sheets(3)
Sheets("Synthèse").Select
'Détermine la dernière colonne du tableau
Dim Tbl As Range, DerniereColonne As Integer, frm
With ThisWorkbook.Worksheets("Synthèse")
DerniereColonne = .Cells(5, .Columns.Count).End(xlToLeft).Column
End With
'Détermine la dernière ligne du tableau
Dim DerniereLigne As Integer
With ThisWorkbook.Worksheets("Synthèse")
DerniereLigne = .Cells(.Rows.Count, 1).End(xlUp).Row
End With
'Copie format de la colonne n et le colle en n+1
Columns(DerniereColonne).Select
Selection.Copy
Columns(DerniereColonne + 1).Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Copie la formule Sumif pour retrouver les datas en colonne n
Dim M As Integer
M = DerniereColonne + 1
Range(Cells(7, M), Cells(DerniereLigne, M)).FormulaR1C1 = _
"=SUMIF('Template projet (2)'!C[1],'Synthèse'!RC[-6],'Template projet (2)'!C[2])"
End Sub
Merci par avance pour votre aide! En espérant avoir été suffisamment clair.
Pieroquet
Re-bonjour à tous,
J'ai solutionné mon problème en remplaçant la forumle FORMULAR1C1 par FORMULALOCAL, beaucoup plus simple à gérer!
Bonne fin de journée,
Pieroquet