Autres VBA 2007 Ligne de commande pour ouvrir l'éditeur VBA

Marcham

XLDnaute Junior
Bonjour,
Je cherche souvent sur internet comment faire ceci ou cela en VBA, aussi je recopie souvent dans un classeur excel des exemples de fonctions que j'ai piochées ainsi.
J’asservis toutes ces exemples de fonctions à des boutons de commande que j'active si je veux me remémorer dans le détail l'activité d'une fonction.
Parfois j'ai besoin (ou pas) d'éditer ou d'aller voir le code VBA correspondant à la fonction.
Donc, j'aimerai savoir s'il est possible d'écrire un code qui permet d'ouvrir l'éditeur VBA du classeur que j'utilise et (cerise sur le gâteau) le top serait que ce code ouvre l'éditeur sur une fonction déterminée (celle qui serait présente dans le code du bouton par exemple).
Naturellement, je conçois que cette édition ne peut se faire que lorsque que nous sommes sorti de la fonction, aussi j'utiliserais un "commande bouton" pour ça. (Mais ça je sais faire)
Merci d'avance Marc
 

vgendron

XLDnaute Barbatruc
Bonjour

Pourquoi vouloir créer un bouton "raccourcis" qui existe déjà??
onglet développeur, - Visual Basic

sinon, moi j'utilise le raccourci clavier Alt+F11
après.. pour la cerise sur le gateau... je ne sais pas
mais si tu as déjà des boutons de commande associés à un code, le clic droit sur ce bouton - affecter macro, modifier - te permet d'aller sur ledit code
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Il vous faut la référence Microsoft Visual Basic for Application Extensibiliy 5.3
et probablement modifier les options de sécurité des macro.
Ce sont ces deux instructions qui le font :
VB:
CoModS.CodePane.Show
CoModS.CodePane.SetSelection LS, 1, LS + NbLS - 1, 1000
CoModS est un VBIDE.CodeModule et un membre de la collection .VBProject.VBComponents
Peut être que la modification de la propriété TopLine du CodePane suffira. .ProcBodyLine pourra vous trouver la ligne à spécifier.
 
Dernière édition:

Marcham

XLDnaute Junior
Voilà comment j'ai fais :
A la fin de chaque fonction que je pourrais solliciter, j'écris la ligne :
If Editer Then Stop
Et dans un module, la fonction Editer
Function Editer() As Boolean
Dim Reponse As Integer
Reponse = MsgBox("On édite ?", vbYesNo)
If Reponse = vbYes Then Editer = True Else Editer = False
End Function
Et ça fonctionne très bien
 

Dranreb

XLDnaute Barbatruc
Oui mais si vous voulez mieux, comme atteindre le code d'une procédure d'après un lien hypexteste sur son nom, sans avoir à modifier le code pour qu'il s'affiche par un Stop, il y a ces dispositifs de la bibliothèque VBIDE à étudier. Je ne me souviens guère avoir eu jadis de difficulté à les mettre en œuvre.
 

dysorthographie

XLDnaute Accro
Bonjour,
j'ai travaillé en SSII pendant plus de 20 ans! je me suis constitué une librairie conséquente de routine prêt à l'emploie !

je t'invites à te constituer la tienne en enregistrant ton travail dans des répertoires sous répertoire organiser par thème!
  1. je commente mon Code
  2. je donne un nom a mon module
    1631614165209.png
  3. je fais , avec la souris , un déplacer colée du Module Toto vers un répertoire
    Sans titre.png
  4. je fais un click droit sur le fichier Toto.bas et je lui dit Ouvrir avec NotePad++
    Sans titre.png

  5. je peux également faire un copié déplacé d'un répertoire vers mon projet VBA!
 
Dernière édition:

Discussions similaires

Réponses
2
Affichages
822

Statistiques des forums

Discussions
315 127
Messages
2 116 539
Membres
112 774
dernier inscrit
Foudil59