Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
Ta macro me dit que j'ai 0 formule dans mon fichiers alors que j'en ai 35
Ta variable "x" est attachée a aucun code aussi. Vous voulez dire que j'ai oublié de la déclarer? mais même sans déclaration ça marche quand même.
merci pour le tuyau, mais cela va être fastidieux car mon classeur comporte 60 feuilles, je pensais pouvoir le faire avec une macro qui comptabilise toutes les formules du classeur
Sub Compte_Formules()
Dim Cpt As Long
Dim Feuille As Long
Application.ScreenUpdating = False
NbFeuil = ActiveWorkbook.Sheets.Count
For Feuille = 1 To NbFeuil
Sheets(Feuille).Select
Selection.SpecialCells(xlCellTypeFormulas).Select
Cpt = Cpt + Selection.Count
Next Feuille
MsgBox "Nombre de formules trouvées: " & Cpt
End Sub
Sub Compte_Formules()
Dim Cpt As Long
Dim Feuille As Long
Application.ScreenUpdating = False
NbFeuil = ActiveWorkbook.Sheets.Count
For Feuille = 1 To NbFeuil
Sheets(Feuille).Select
Selection.SpecialCells(xlCellTypeFormulas).Select
Cpt = Cpt + Selection.Count
Next Feuille
MsgBox "Nombre de formules trouvées: " & Cpt
End Sub
C'est parce qu'une feuille ne possède pas de formule cela m'a fait le même problème, il faut que toutes les feuilles aient une formule minimum pour que le code fonctionne.
et mettre une gestion d'erreur du style On Error Resume Next ou On Error Goto pour éviter le plantage en cas de feuille de calcul qui est sans aucune formule.
et mettre une gestion d'erreur du style On Error Resume Next ou On Error Goto pour éviter le plantage en cas de feuille de calcul qui est sans aucune formule.
@Etoto : désolé, j'ai juste voulu indiquer une piste, et j'suis actuellement débordé avec d'autres exos ; j'peux pas tout faire en même temps ! 😭 😜 (et j'ai pas d'sous pour embaucher une secrétaire ! 🤣)
Sub Compte_Formules()
Dim Cpt As Long
Dim Feuille As Long
Application.ScreenUpdating = False
NbFeuil = ActiveWorkbook.Sheets.Count
For Feuille = 1 To NbFeuil
Sheets(Feuille).Select
Selection.SpecialCells(xlCellTypeFormulas).Select
On Error Resume Next
Cpt = Cpt + Selection.Count
Next Feuille
MsgBox "Nombre de formules trouvées: " & Cpt
End Sub
oh là ! ne mets pas le On Error Resume Next dans la boucle For ! c'est inutile d'exécuter cette instruction à chaque tour de boucle (c'est-à-dire ici pour 1 à NbFeuil) ; met On Error Resume Nextavant la boucle For, par exemple juste après la ligne Dim Feuille As Long
ensuite, attention à ceci : en cas d'erreur, l'instruction qui sera exécutée suite à On Error Resume Next sera Cpt = Cpt + Selection.Count ; or il me semble bien qu'il ne faut pas que ce compteur Cpt soit incrémenté si la feuille ne contient aucune formule ; c'est pour ça que c'est moins simple qu'il y paraît ; je te laisse chercher une solution... 😜
Oui j'ai remarqué avec mes tests, mais je peux mettre le On Error dans le For mais après je doit soustraire par le nombres de feuilles qui ne contiennent PAS de formules ce que je sais pas faire mais je vais essayer.
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD