Compter le nombre de fois qu'une macro est utilisée

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Répondre
a
akangaroo
Nouveau venu
Nouveau venu
Messages : 6
Inscrit le : 3 janvier 2020
Version d'Excel : 2010

Message par akangaroo » 3 janvier 2020, 22:53

Bonsoir,

Je souhaiterais savoir s'il est possible de compter le nombre de fois qu'une macro a été utilisée.

J'ai glissé en fichier joint une capture d'écran de mon Excel pour imager mes propos. On peut voir 3 tableaux différents : le premier "Chaudronnerie", le deuxième "Tuyauterie" et le troisième "Electricité". Pour chaque tableau, j'ai la possibilité d'ajouter des lignes en appuyant sur le bouton "+" que l'on peut voir à chaque début de tableau tout à gauche. A ces boutons sont donc affectés 3 macros identiques qui ajoutent un paquet de 5 lignes à la suite. Par exemple, en appuyant sur le bouton "+" ligne 9, 5 lignes s'ajoutent à la suite de la ligne 29. La ligne "Tuyauterie" devient donc la ligne 35 et non plus 30.

Dans la colonne N (colonne où l'on peut voir les inscriptions "None", se trouve une liste déroulante affichant soit "Insert" soit "None". Mon but est de créer une macro qui, lorsque j'appuie sur un bouton, switche toutes les cellules où "INSERT" est écrit en "NONE".

J'ai déjà écrit le programme pour le premier tableau, et il fonctionne. (Voir deuxième fichier joint).

Je travaille actuellement sur une plage allant de la ligne 10 à 29. Si je souhaite travailler sur la totalité de mon fichier, soit mes 3 tableaux d'un coup, j'obtiens un message d'erreur. Ce message d'erreur semble très probablement venir du fait que les lignes de titre de mes tableaux sont verrouillées. Je pourrais donc diviser le travail en 3 plages différentes : ligne 10 à 29, ligne 31 à 50 et ligne 52 à 71 et ainsi "éviter" les lignes verrouillées. Mais dans ce cas là, j'omets complètement mon bouton d'ajout des lignes, ce qui foutrait en l'air ma gestion des plages rentrées dans le programme.

J'ai donc en tête de faire compter le nombre de fois où j'ai appuyé sur un bouton "+", affecter ce nombre à une variable que le fichier garderait en mémoire, et ainsi travailler non plus sur une plage figée (ligne 10 à 29), mais sur une plage variable, dépendant du nombre de ligne présente dans chaque tableau.

L'explication est très longue, je me veux d'être le plus clair possible.

Merci d'avance pour toute aider ou tentative d'aide :mrgreen:
Programme.PNG
Programme.PNG (19.67 Kio) Vu 100 fois
Capture.PNG
Avatar du membre
GVIALLES
Membre dévoué
Membre dévoué
Messages : 823
Appréciations reçues : 74
Inscrit le : 28 novembre 2017
Version d'Excel : 2016, 360
Téléchargements : Mes applications

Message par GVIALLES » 4 janvier 2020, 11:30

Bonjour Akangaroo,

Tentative d'aide :
Tout ceci me semble bien alambiqué... :bof:
Une piste pour simplifier et fiabiliser :
Utilisation des "Listobjects" ("Tableau") pour éviter de référencer "en dur" dans le VBA les numéros de lignes/colonnes. Une bonne introduction au "Listobject" (mais en anglais, je n'ai pas mieux en magasin… :( ) : https://www.thespreadsheetguru.com/blog ... cel-tables
Cordialement,

Gérard
a
akangaroo
Nouveau venu
Nouveau venu
Messages : 6
Inscrit le : 3 janvier 2020
Version d'Excel : 2010

Message par akangaroo » 5 janvier 2020, 18:08

Bonjour,

Merci beaucoup pour la piste, je vais regarder de ce côté là!
Avatar du membre
GVIALLES
Membre dévoué
Membre dévoué
Messages : 823
Appréciations reçues : 74
Inscrit le : 28 novembre 2017
Version d'Excel : 2016, 360
Téléchargements : Mes applications

Message par GVIALLES » 6 janvier 2020, 11:26

Bonjour Akangaroo,

Je suis tombé par hasard sur ce tuto en français sur les "Tableaux structurés" :

https://fauconnier.developpez.com/tutor ... cturesvba/
Cordialement,

Gérard
a
akangaroo
Nouveau venu
Nouveau venu
Messages : 6
Inscrit le : 3 janvier 2020
Version d'Excel : 2010

Message par akangaroo » 6 janvier 2020, 13:36

Merci beaucoup!
Répondre
  • Sujets similaires
    Réponses
    Vues
    Dernier message