Hmmm... je ne comprends pas bien comment la fonction sous totale peut insérer une ligne....
Dans ton fichier tu mets
WorksheetFunction.Subtotal(109, Sheets("nom de la feuille").Range("D1:D10"))
tel quel dans un module. Je pense que tu n'as pas bien compris comment écrire du code VBA. Renseigne-toi sur la façon d'écrire du code, mais voici quelques explications:
Il faut que tu créés une méthode que tu lanceras quand tu en auras besoin.
1 2 3
| Sub nom_de_la_methode
'code
End Sub |
Dans cette méthode, tu va mettre le code qui t'intéresses. Par exemple, tu veux que dans la cellule D11 apparaisse le sous total des cellules D1 à D10, tu écris:
1 2 3
| Sub monSousTotal()
Sheets("maFeuille").Range("D11").Value = Application.WorksheetFunction.Subtotal(109, Sheets("maFeuil").Range("D1:D10"))
End Sub |
A gauche de "=", tu mets la cellule dans laquelle tu aimerais voir apparître le sous total et à droite tu mets le calcul pour le sous total.
Sheets("maFeuil") indique que tu veux travailler dans la feuille nommée maFeuil. Range te permets de travailler dans une cellule.
Pourquoi veux-tu passer par une macro? Ne peux-tu pas écrire seulement une formule dans ton fichier?
Partager