Gestion des codes VBA

laurent950

XLDnaute Barbatruc
Re : Gestion des codes VBA

Bonsoir tototiti2008

Je viens de parcourir votre fils, vraiment c’est du super travail, l’idée est merveilleuse et j’ai aussi des idées.

J’ai compris le mode de fonctionnement de votre application qui fonctionne très bien sur mon EXCEL 2010 en 64 bits.

Les codes écrit est stocké indépendamment de Excel c’est une idée Génial.

Merci à ce Forum Extraordinaire Grace à vous tous.
Laurent
 

coco_lapin

XLDnaute Impliqué
Re : Gestion des codes VBA

Bonjour tototiti2008, BrunoM45 et le forum,

A une certaine époque j’avais vu l’outil de tototiti2008 mais je ne m’étais pas penché dessus.
Ce fil vient d’être remonté et à force de voir plusieurs fois écrit que BrunoM45 l’utilisait de façon habituelle j’ai testé l’outil.

Avant toute chose je remercie tototiti2008 pour son application qui est agréable à utiliser. Chapeau, beau travail ! J’envisage de l’utiliser pour ranger mes codes.

Il est vrai qu’il faut un petit investissement au début pour comprendre comment cela fonctionne mais la procédure (le .doc) est bien faite et efficace.

J’aurai quelques questions sur le gestionnaire de code VBA :

Je suppose que la dernière version est celle présente via la signature de tototiti2008. d’après mes essais j’ai l’impression qu’elle ne prend pas en compte la modification proposée par BrunoM45 du 08/05/2010 4H34 concernant l’enregistrement de code via des .txt
Pourriez-vous confirmer que la dernière version est celle présente via la signature de tototiti2008 ?

J’ai essayé l’application avec Excel 2000, Excel 2003 et Excel 2010 (32 bits).
Quelque soit la version je n’arrive pas à insérer de code dans un classeur ou un nouveau classeur. Un nouveau classeur se crée bien mais sans code. Une fois que j’utilise boite de dialogue « Ouvrir un code » puis que je sélectionne « Nouveau classeur » puis que je clique sur « OK », ce bouton OK apparaît ensuite avec des pointillés à l’intérieur du bouton. La boite de dialogue « Préciser ou insérer le code » n’apparaît pas.
Je n’ai peut être pas compris comment il fallait procéder pour insérer un code.
 
C

Compte Supprimé 979

Guest
Re : Gestion des codes VBA

Bonjour Coco_lapin ;)

Merci de t'intéresser à l'application de Tototiti2008, quelque peu modifiée par mes soins
et avec le concours de bon nombre d'XLDiens

La dernière version est bien celle du lien dans la signature de Tototiti2008
Elle se trouve dans le post #41 : https://www.excel-downloads.com/threads/gestion-des-codes-vba.123898/
Nous en sommes à la v1.2 :eek:

Elle prend bien en compte l'enregistrement de codes en ".txt"
Un clique sur le bouton avec l'icône de Notepad, affiche un Usf dans lequel tu colles ton code préalablement copié ;)

Pour insérer un code dans un nouveau classeur, il faut :
1) sélectionner le code souhaité (enregistré au format .txt)
2) Cliquer sur le bouton "Nouveau classeur"
Normalement un nouveau classeur s'ouvre et dans le projet VBA de ce nouveau classeur, se trouve le code ;)

A+
 

coco_lapin

XLDnaute Impliqué
Re : Gestion des codes VBA

Bonsoir BrunoM45 et le forum,

Merci BrunoM45 d'avoir pris de ton temps pour me donner ces explications. J'ai vu aussi que tu avais mis à jour certains posts de ce fil ainsi que l’application pour que l’ensemble soit cohérent, c’est sympa de ta part:).

Concernant l’insertion de code dans un classeur, après avoir examiné le code, je me suis aperçu que mon erreur venait du fait que j’avais un type « Document » (même si c'était un .txt). Il faut que le type soit « Module »…pour qu’il puisse être exporté. L’exportation fonctionne maintenant correctement.

J’ai effectué des tests avec la dernière version que tu viens de diffuser.
Ce que j’ai apprécié :
L’ouverture de l'userform en mode non modal
La possibilité de passer en mode Addin, pour ne pas afficher le classeur (merci pour le choix)
Les boutons "Fermer" et "Quitter"

Le bouton « Mise en forme Xld »

Un clique sur le bouton avec l'icône de Notepad, affiche un USF dans lequel je colle mon code préalablement copié. Lorsque j’appuie sur « Valider » un reset de l’USF « Gérer les codes» est réalisé :confused:. J’avais essayé cette fonctionnalité avec ta version V2 que j’avais téléchargée il y a quelques jours et cela fonctionnait correctement. J'ai encore fais une boulette?:rolleyes:

Merci encore pour ton aide, bonne nuit et A+.
 
Dernière édition:
C

Compte Supprimé 979

Guest
Re : Gestion des codes VBA

Re,
J'ai vu aussi que tu avais mis à jour certains posts de ce fil ainsi que l’application pour que l’ensemble soit cohérent, c’est sympa de ta part:).

Tu l'as remarqué ça fait plaisir :D :eek:

Lorsque j’appuie sur « Valider » un reset de l’USF « Gérer les codes» est réalisé. J’avais essayé cette fonctionnalité avec ta version V2 que j’avais téléchargée il y a quelques jours et cela fonctionnait correctement. J'ai encore fais une boulette?

Je venais justement de m'en appercevoir et j'ai modifié mon fichier zippé

Il faut simplement couper le code de la
Sub Usf_Activate() et le mettre à la fin de la Sub Usf_Initialise()
Sinon a chaque fois que ton UsF s'active, il y a RaZ des noeuds :(
C'est un code que je pensais avoir corrigé sur la version de mon PC et non ;)

A+
 
Dernière modification par un modérateur:

coco_lapin

XLDnaute Impliqué
Re : Gestion des codes VBA

Re,

Je viens d'appliquer le couper coller sur le code que tu m'as proposé et maintenant l'application fait ce que j'attendais :).

Je vais maintenant pouvoir l'utiliser pour ranger mes codes et classeurs.

Pour ceux qui n'ont pas encore essayé l'application, faite le, un super plaisir de début d'année ;).

Merci BrunoM45 et bonne nuit à tous.
 

GeoTrouvePas

XLDnaute Impliqué
Re : Gestion des codes VBA

Bonjour à tous,

A force de voir ce fil remonter sans cesse, j'avais fini par m'y intéresser et consacrer un peu de temps pour voir le boulot réalisé par Titi. J'ai donc testé son outil chez moi et je dois dire que je n'ai que des compliments à faire.

Bravo Titi, tu as réussi à faire un outil à la fois simple à utiliser et complet. Toutes mes félicitations ! Ya un peu de génie et beaucoup de boulot derrière tout ça !;)

Je regrette juste une chose : ne pas pouvoir l'utiliser là où il me serait le plus utile : au boulot. Mon petit Excel 2002 ne supporte pas tes listviews.... Snif.

En tout cas un grand merci à toi et à tous ceux qui ont fait progresser ce travail.

Edit : En regardant la notice, je constate que ce ne sont pas les listivews qui posent problème mais les Treeviews. Quoi qu'il en soit, c'est toujours ce vieil enquiquineur de MSCOMCTL.OCX qui fait des siennes !
 
Dernière édition:

tototiti2008

XLDnaute Barbatruc
Re : Gestion des codes VBA

Bonjour à toutes et tous,

Merci de votre intérêt pour l'outil

@Geo : Pourtant cet outil a été développé sur Excel 2002 (XP) à l'origine
Mais 2012 a été l'année où Microsoft s'est amusé à faire des mises à jour sur MSCOMCTL.OCX, quelle que soit la version d'Office (d'abord sur 2007-2010, un peu plus tard sur 2003), il est possible que si le classeur a été ouvert par une version récente et enregistré, il ne soit plus compatible avec les version précédentes
Merci à Microsoft pour cette avancée dans la portabilité des applications VBA contenant Listview et Treeview...

Je réessayerais de l'ouvrir en XL2002 et je te dirais

A+
 

GeoTrouvePas

XLDnaute Impliqué
Re : Gestion des codes VBA

Bonjour Toto,

En effet, 2012 n'a pas été une année favorable à la rétrocompatibilité.... Les Listview ont d'ailleurs fait couler pas mal d'encre sur XLD. Moi qui trimballe beaucoup de fichiers entre le boulot (Excel 2002) et la maison (Excel 2002, 2010 et 2013), ça ma pénalise énormément.


En y regardant de plus près, il se pourrait que le problème soit lié à l'enregistrement du fichier avec une version 64 bits.

En effet, si j'ouvre ton fichier, j'ai un message d'erreur qui apparaît ("Impossible de charger l'objet car il n'est pas disponible sur cette machine"). La référence "Microsoft Windows Common Controls 6.0 (SP6)" est signalée comme manquante. Le chemin donné est C:\Windows\SysWow64\MSCOMCTL.OCX

Or sur cette bécane équipée de Win XP et Office XP, ce contrôle ActiveX se trouve sous C:\WINNT\system32

D'ailleurs si je décoche la référence, que je recoche la référence avec le bon chemin et que je replace un Treeview sur le Userform, cela fonctionne correctement.
 
C

Compte Supprimé 979

Guest
Re : Gestion des codes VBA

Bonjour Tototiti2008, GeoTrouvePas

Je ne comprends pas :( aucun problème de mon côté sur un poste en XP, mais avec Office 2003 :p

J'ai ré-enregistré le fichier de ce poste, en espérant que cela ne pose plus de problème ;)

A+
 

GeoTrouvePas

XLDnaute Impliqué
Re : Gestion des codes VBA

Bonjour Bruno et merci pour ta réactivité.

J'ai testé ta nouvelle version à mon boulot et le problème est toujours le même.

Je me demande si cela n'est pas dû à mon système d'exploitation (particularité, défaillance, bug ou un truc comme ça). Mon contrôle ActiveX se trouve dans "C:\WINNT\..." et non pas dans "C:\Windows\...". Il me semblait pourtant que VBA adaptait automatiquement ces chemins.....

Je me ferais une version spéciale pour mon boulot en recréant manuellement les 2 treeview. C'est pas la mer à boire.

En tout cas un grand merci à toi pour avoir essayer de l'adapter. Et un grand merci à Titi pour la conception de cet outil.

Bon week end à tous les XLDiens !
 

coco_lapin

XLDnaute Impliqué
Re : Gestion des codes VBA

Bonjour tototiti2008, BrunoM45, GeoTrouvePas et le forum,

A la maison j'ai Excel 2010 et l'application de gestion des codes VBA fonctionne correctement.

Au travail j'ai un PC équipé d'Excel2000 et d'Excel2003 et un autre en prêt équipé d'Excel2010.
Dans ces 3 configurations j'ai les messages d'erreurs suivants:

A l'ouverture : "Impossible de changer l'objet car il n'est pas disponible sur cette machine".
Après plusieurs clics sur OK de ce message d'erreur VBA pointe sur le code "Private Sub TVClasCode Collapse (byval Node as MSComctlLib.node"
Puis quand je lance l'application : "Erreur de compilation : projet ou bibliothèque introuvable" et VBA pointe sur le code " ImageTVGest As New ImageList".
La référence "Microsoft Windows Common Controls 6.0 (SP6)" est signalée comme manquante. Le chemin donné est C:\Windows\SysWow64\MSCOMCTL.OCX

Or sur ces 2 PC le contrôle ActiveX se trouve sous C:\WINNT\system32

J'ai essayé de réaliser ce qu'a fait GeoTrouvePas mais je n'y suis pas arrivé.
D'ailleurs si je décoche la référence, que je recoche la référence avec le bon chemin et que je replace un Treeview sur le Userform, cela fonctionne correctement.

En fait je ne comprends pas ce qu'il faut faire sur
et que je replace un Treeview sur le Userform, cela fonctionne correctement.
 

tototiti2008

XLDnaute Barbatruc
Re : Gestion des codes VBA

Bonjour à toutes et tous,

Même problème chez moi
Je n'ai pas ce problème avec la version du post #11, j'essaierais de modifier la dernière version et je vous la posterais
 
C

Compte Supprimé 979

Guest
Re : Gestion des codes VBA

Salut Tototiti2008

Juste pour info, plusieurs modifications ont été apportées depuis le post #11
Qu'elle version as-tu de la DLL : MSCOMCTL.DLL

A+
 

coco_lapin

XLDnaute Impliqué
Re : Gestion des codes VBA

Bonjour tototiti2008, BrunoM45, GeoTrouvePas et le forum,

Je viens d'essayer la version du post #11.
Cela fonctionne aussi bien en Excel 2000, 2003 ou 2010 sur mes PC au travail.

Ce soir je vais essayer cette version en Excel 2010 sur mon PC à la maison.

Comme le dit BrunoM45, plusieurs modifications ont été apportées depuis le post #11.

Pour information j'ai commencé l'importation des codes et classeurs Excel de mes 380 fichiers dans l'outil.
Pour que l'ensemble soit exploitable je dois pouvoir l'utiliser aussi bien à la maison qu'à mon travail (je balade sur une clé USB l'outil + les sources + mes fichiers à trier).

Bonne journée.

PS : je ne vois pas pourquoi ce fil est dans le salon. Sa place ne serait-elle pas dans le forum Excel?
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
315 092
Messages
2 116 119
Membres
112 666
dernier inscrit
Coco0505