Icône de la ressource

Index de vos Macros avec Mots-Clés V1.2

  • Initiateur de la discussion Initiateur de la discussion crocrocro
  • Date de début Date de début

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 !

crocrocro

XLDnaute Impliqué
crocrocro a soumis une nouvelle ressource:

Index de vos Macros avec Mots-Clés - Retrouvez facilement vos macros à partir de Mots-Clés

Le fichier à télécharger permet de lister toutes vos macros, de les retrouver facilement à partir de Mots-Clés

Regarde la pièce jointe 1215690

Mode Opératoire

  • Créer les Mots-Clés (pour chaque macro concernée) :
Dans les lignes qui suivent immédiatement la ligne de déclaration de la macro, définissez un ou plusieurs mots-clés. Chaque Mot-Clé est encadré par un caractère prédéfini (Constante SEP_MOT_CLE) le caractère # dans le...​

En savoir plus sur cette ressource...
 
Bonjour,
très envie de tester... mais il te manque la clause pour tenir compte du mode 64 bit avec ptrsafe
comme c'est ton appli je te laisse corriger pour une nouvelle publication... 😉
en attendant je fais la correction de mon côté
1743761465113.png


VB:
Option Explicit
#If VBA7 Then
    Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
#Else
    Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
#End If

avec cette modif ça fonctionne mieux 🙂
super dév 🙂
 
Dernière édition:
Merci oguruma 🙂
fichier modifié et remis en ligne.
Attention il semblerait qu'une fonction plante au moment du transpose d'un tableau...
J'en ai compris que tu ouvrais le fichier pour intervenir dessus
et cette fonction rencontre trop de ligne ça plante
1743783834944.png

1743783768144.png


1743784661047.png


pTab n'est pas valorisé

En fait dans mon répertoire il y a un fichier Excel sans Macro...
1743786723022.png


1743787519334.png



et donc juste comme cela... pour vérifier et ça ne plante plus j'ai débuggé comme cela
VB:
    Debug.Print "valeur finale de i = " & i
    
    If i <= 3 Then
        MsgBox "pas de code"
        Exit Sub
    End If

Voilà je ne suis pas allé plus loin dans le debug
je pense qu'il est utile d'exclure les cas où les fichiers ne comportent pas de macro...
Bon fichier en question est un piège c'est .xlsb donc fichier binaire natif susceptible de contenir des macros

juste une petite remarque... "i" comme cela dans du code.... ça ne ressemble pas à grand chose et source d'une mauvais lecture perso quand j'ai une variable d'index je la nomme iDx
 

Pièces jointes

  • 1743786801229.png
    1743786801229.png
    2 KB · Affichages: 5
  • 1743784014052.png
    1743784014052.png
    11 KB · Affichages: 3
  • 1743783960580.png
    1743783960580.png
    14.5 KB · Affichages: 6
Attention il semblerait qu'une fonction plante au moment du transpose d'un tableau...
J'en ai compris que tu ouvrais le fichier pour intervenir dessus
et cette fonction rencontre trop de ligne ça plante
Regarde la pièce jointe 1215992
Regarde la pièce jointe 1215991

Regarde la pièce jointe 1215996

pTab n'est pas valorisé

En fait dans mon répertoire il y a un fichier Excel sans Macro...
Regarde la pièce jointe 1215998

Regarde la pièce jointe 1216000


et donc juste comme cela... pour vérifier et ça ne plante plus j'ai débuggé comme cela
VB:
    Debug.Print "valeur finale de i = " & i
   
    If i <= 3 Then
        MsgBox "pas de code"
        Exit Sub
    End If

Voilà je ne suis pas allé plus loin dans le debug
je pense qu'il est utile d'exclure les cas où les fichiers ne comportent pas de macro...
Bon fichier en question est un piège c'est .xlsb donc fichier binaire natif susceptible de contenir des macros

juste une petite remarque... "i" comme cela dans du code.... ça ne ressemble pas à grand chose et source d'une mauvais lecture perso quand j'ai une variable d'index je la nomme iDx
Merci encore oguruma 👍
les fichiers xlsb (fichiers binaires) ne pouvant pas être exploités ici,
un premier message à l'ouverture signale
1743794179054.png

mais sans erreur, j'ai modifié mon code pour qu'il les sautent.
J'ai aussi modifié mon code pour ne pas avoir d'erreur sur le transpose (test NbLignesResultats > 0).
Concernant ta judicieuse remarque sur les règles de nommage des variables, pour ce qui des variables de type compteur dans les boucles, j'ai l'habitude de les nommer i, j, k ...
J'ai remis en ligne le fichier modifié.
 
Bonsoir,

J'ai systématiquement le message "28 fichier(s) en erreur (Voir Debug.Print)"
Il y a bien 28 fichiers Excel dans mon répertoire, dont 1 *.xlsm
Le problème : je ne sais pas comment ni où voir Debug.print pour essayer de comprendre...

Merci 😉
Jean-Michel
Macros Mots Clés 01.jpg
 
Bonjour Jean-Michel,
pour voir les fichiers en anomalie, il faut :
- ouvrir l'éditeur VBE : Onglet Développeur -> Visual Basic ou (Alt + F11)
- et dans la fenêtre VBE -> Onglet Affichage -> Fenêtre Exécution (ou Ctrl + G)
Dans la fenêtre Exécution vous aurez la liste des fichiers en erreur avec le code Erreur et sa description :
3 erreurs à priori possible :
Erreur : 50289 - Impossible d'effectuer cette opération tant que le projet est protégé.
Il s'agit d'un fichier avec son code VBA protégé par mot de passe
Erreur : 1004 - Impossible d'ouvrir le fichier «Nom du fichier » car son format ou son extension n'est pas valide. Vérifiez que le fichier n'est pas endommagé et que son extension correspond bien au format du fichier.
Il s'agit souvent d'un fichier dont l'accès est refusé (voir explorateur)
Erreur : 999 - Il s'agit d'un fichier déjà ouvert dans Excel
 
Bonjour Jean-Michel,
pour voir les fichiers en anomalie, il faut :
- ouvrir l'éditeur VBE : Onglet Développeur -> Visual Basic ou (Alt + F11)
- et dans la fenêtre VBE -> Onglet Affichage -> Fenêtre Exécution (ou Ctrl + G)
Dans la fenêtre Exécution vous aurez la liste des fichiers en erreur avec le code Erreur et sa description :
3 erreurs à priori possible :
Erreur : 50289 - Impossible d'effectuer cette opération tant que le projet est protégé.
Il s'agit d'un fichier avec son code VBA protégé par mot de passe
Erreur : 1004 - Impossible d'ouvrir le fichier «Nom du fichier » car son format ou son extension n'est pas valide. Vérifiez que le fichier n'est pas endommagé et que son extension correspond bien au format du fichier.
Il s'agit souvent d'un fichier dont l'accès est refusé (voir explorateur)
Erreur : 999 - Il s'agit d'un fichier déjà ouvert dans Excel
Merci pour cette réponse rapide et tout à fait pertinente 🙂
j'ai donc 28 fois l'erreur : "Erreur : 1004 - L'accès par programme au projet Visual Basic n'est pas fiable"
Un paramètre de sécurité à changer ? (je suis sous W10 64 bits, Excel 2007)
 
Je me réponds, puisque j'ai trouvé comment modifier effectivement le paramètre de sécurité qui bloquait le processus.
Maintenant, ça fonctionne parfaitement, merci pour cette application qui va bien me servir car j'utilise souvent certaines macros plus ou moins récurrentes par rapport à mes besoins et ça me permettra de "remettre la main dessus" beaucoup plus rapidement.
Merci encore ! 🙏🙏🙏
Jean-Michel

Pour modifier ce paramètre dans Excel 2007 :
Menu Office -> Options Excel -> Centre de gestion de la confidentialité -> Bouton "Paramètres du Centre de gestion de la confidentialité" -> Paramètres des macros -> Accès approuvé au modèle d'objet du projet VBA
 
Dernière édition:
Merci encore oguruma 👍
les fichiers xlsb (fichiers binaires) ne pouvant pas être exploités ici,
un premier message à l'ouverture signale
Regarde la pièce jointe 1216005
mais sans erreur, j'ai modifié mon code pour qu'il les sautent.
J'ai aussi modifié mon code pour ne pas avoir d'erreur sur le transpose (test NbLignesResultats > 0).
Concernant ta judicieuse remarque sur les règles de nommage des variables, pour ce qui des variables de type compteur dans les boucles, j'ai l'habitude de les nommer i, j, k ...
J'ai remis en ligne le fichier modifié.
Bonjour,
Test effectué sur le même fichier (un .xlsb) et ça fonctionne ! ça ne plante plus ! merci
Effectivement c'était bien NbLignesResultats qu'il fallait vérifier 🙂

d'ailleurs ton Dév me rappelle un des sujets que j'avais mis de côté et laissé tombé : détecter automatiquement le nom de la procédure ou de la fonction courante en cas de plantage pour pouvoir la nommer dans une gestion d'erreur du genre "Erreur de traitement dans le module/fonction " & CurrentFonctionModule() et éventuellement avec un paramètre optionnel et ainsi on peut faire une gestion d'erreur commune par l'écriture d'un seul module dédié...
tu as peut-être aussi tenté le coup de ton côté ?
voir aussi rechercher le n° de ligne... ça n'est pas implémenté nativement dans le VBE... à défaut d'un bricolage qui ne fonctionne pas toujours pour avoir tenter l'expérience... il y a fort longtemps
 
Merci encore oguruma 👍
les fichiers xlsb (fichiers binaires) ne pouvant pas être exploités ici,
un premier message à l'ouverture signale
Regarde la pièce jointe 1216005
mais sans erreur, j'ai modifié mon code pour qu'il les sautent.
J'ai aussi modifié mon code pour ne pas avoir d'erreur sur le transpose (test NbLignesResultats > 0).
Concernant ta judicieuse remarque sur les règles de nommage des variables, pour ce qui des variables de type compteur dans les boucles, j'ai l'habitude de les nommer i, j, k ...
J'ai remis en ligne le fichier modifié.
re... 2ème bonne nouvelle
j'ai testé sur mon répertoire EXCEL où il y a de tout.... ça ne plante pas !
j'ai donc une biblio de tous mes dév
je vais implémenter du powerquery pour personnaliser les résultats de la recherche etc. etc.
car j'ai bcp de doublons dans mes fichiers suite à du versionning donc je ferais le ménage avec pwq etc. etc. pour ne garder que l'essentiel
si tu es intéressé par les évolutions en powerquery avec plaisir
j'espère que tu connais 😉

1743839349919.png
 
Bonjour
tout fonctionne
jusqu'au lien hypertexte qui commence par ..\..\..\..\ au lieu de D:\
 

Pièces jointes

  • m_mot_clefs_err.jpg
    m_mot_clefs_err.jpg
    174.9 KB · Affichages: 6
Bonjour
tout fonctionne
jusqu'au lien hypertexte qui commence par ..\..\..\..\ au lieu de D:\
Bonjour,
Avez-vous une anomalie lors du double-clic sur une ligne qui permet d'afficher la macro de la ligne ? Lors du clic sur le lien hypertexte du fichier ?
pour mieux comprendre votre problème :
pouvez-vous refaire vos actions en détaillant bien chaque étape.
Comme je l'ai écrit dans les contraintes, évitez d'ouvrir l'éditeur VBE, de mettre en place le debogueur, de passer d'une fenêtre à l'autre (c'est à dire du fichier Macros Mots Clés et du fichier en cours d'analyse.
Eventuellement, ajouter des lignes Debug.Print dans le code pour connaitre le contenu des variables comme NomCourtFichier dans la ligne Application.Workbooks(NomCourtFichier).Close SaveChanges:=False que vous indiquez dans votre message.
NomCourtFichier doit avoir pour valeur le nom court du fichier.
 
Le répertoire précédent avait 182 fichiers après plusieurs essais le nom court comportait le nom d'un sous répertoire
J'ai essayé sur un répertoire qui avait 9 fichiers excel et pas de problème. OK donc
 
Le répertoire précédent avait 182 fichiers après plusieurs essais le nom court comportait le nom d'un sous répertoire
J'ai essayé sur un répertoire qui avait 9 fichiers excel et pas de problème. OK donc
Oguruma a fait un test avec plus de 500 fichiers avec succès, ce n'est donc pas un problème de nombre de fichiers du répertoire et je ne peux pas en dire plus 🙁
 
- 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
Retour