Bonjour le forum,
1- J'ai inséré une ligne au debut du fichier par " Rows(1).Insert Shift:=xlDown ". Ensuite j'ai inséré la formule SOUS.TOTAL au dessus de chaque colonne souhaitée par :
Cells(i, 9).FormulaLocal = "=SOUS.TOTAL(9;I3:I65000)" pour une colonne
et Range(Cells(i, 12), Cells(i, 16)).FormulaLocal = "=SOUS.TOTAL(9;L3:L65000)" pour un ensemble de colonnes consécutives.
Ma question est : Si je définis l'ensemble des colonnes au dessus desquelles je souhaite insérer la formule dans un tableau : t = Array(6, 9, 12, 13, 14, 15) par exemple, comment intégrer la notion t(i) pour référencer une colonne de ca tableau dans l'écriture de la formule sous.total?
Car Cells(l, t(i)).FormulaLocal = "=SOUS.TOTAL(9;Range(t(i) & 3):Range(t(i) & 65000))" ne fonctionne pas.
2- Est-il possible de remplacer dynamiquement le nombre max de lignes 65000 par le nombre exacte selon la col A?
Voir fichier ci-joint et les macros inser1 et inser2
Merci de votre aide
KIM
1- J'ai inséré une ligne au debut du fichier par " Rows(1).Insert Shift:=xlDown ". Ensuite j'ai inséré la formule SOUS.TOTAL au dessus de chaque colonne souhaitée par :
Cells(i, 9).FormulaLocal = "=SOUS.TOTAL(9;I3:I65000)" pour une colonne
et Range(Cells(i, 12), Cells(i, 16)).FormulaLocal = "=SOUS.TOTAL(9;L3:L65000)" pour un ensemble de colonnes consécutives.
Ma question est : Si je définis l'ensemble des colonnes au dessus desquelles je souhaite insérer la formule dans un tableau : t = Array(6, 9, 12, 13, 14, 15) par exemple, comment intégrer la notion t(i) pour référencer une colonne de ca tableau dans l'écriture de la formule sous.total?
Car Cells(l, t(i)).FormulaLocal = "=SOUS.TOTAL(9;Range(t(i) & 3):Range(t(i) & 65000))" ne fonctionne pas.
2- Est-il possible de remplacer dynamiquement le nombre max de lignes 65000 par le nombre exacte selon la col A?
Voir fichier ci-joint et les macros inser1 et inser2
Merci de votre aide
KIM
Pièces jointes
Dernière édition: