Excel lire macro

Sylvie -  
Polux31 Messages postés 7219 Statut Membre -
Bonjour,
Lorsque j'ouvre un classeur, je peux voir ma macro. Mais, je voudrais voir toutes mes macros des autres classeurs Excel et les exécuter si je le veux sans avoir à ouvrir tous les classeurs.
Merci
A voir également:

4 réponses

Polux31 Messages postés 7219 Statut Membre 1 204
 
Bonjour,

On peut lancer une macro d'un autre classeur en utilisant la fonction Run

Application.Run("C:\monClasseur.xls!macro1")


Si la macro demande des paramètres d'entrées et renvoie une valeur on peut faire
retour = Application.Run("C:\monClasseur.xls!macro1", 10)


;o)
0
Sylvie
 
Bonjour,
Je voudrais me servir de toutes les macros sans chercher à ouvrir chaque classeur pour savoir celle dont j'ai besoin.
Merci
0
Polux31 Messages postés 7219 Statut Membre 1 204
 
Voilà comment toutes les macros d'un classeur.
Sub listeMacros()
'Nécessite d'activer la référence
    '"Visual basic For Application Extensibility 5.3"

Dim i As Integer, Ajout As Integer, x As Integer
Dim Msg As String
Dim VBCmp As VBComponent
Dim Wb As Workbook

'Indiquez le nom du classeur (ouvert)
Set Wb = Workbooks.Open("C:\monClasseur.xls")

Ajout = 1
For Each VBCmp In Wb.VBProject.VBComponents
    Msg = VBCmp.Name
    
    With ThisWorkbook.Worksheets(1).Cells(Ajout, 1)
        .Interior.ColorIndex = 6
        .Value = Msg
    End With
    
    x = Wb.VBProject.VBComponents(Msg).CodeModule.CountOfLines
    For i = 1 To x
        ThisWorkbook.Worksheets(1).Cells(Ajout + i, 1) = _
            Wb.VBProject.VBComponents(Msg).CodeModule.Lines(i, 1)
    Next
    
    Ajout = Ajout + x + 2
Next VBCmp
End Sub


Il suffit de l'adapter un peu pour parcourir l'ensemble des classeurs ...

;o)
0
Sylvie
 
Bonjour,
Je suis débutante et j'ai du mal à appliquer cette formule.
Exemple:
j'ouvre un nouveau classeur Excel sur le bureau et quand je veux y appliquer une macro.
Affichage - macro - le tableau est vide . je n'ai aucune macro.
Je voudrai avoir dans ce tableau toutes la liste de macro qui se trouve je ne sais où dans l'ordi.
Merci.
0
Polux31 Messages postés 7219 Statut Membre 1 204 > Sylvie
 
Alors là, ce n'est pas possible.

Il faut pour cela que tous les classeurs possédant des macros soient ouverts et dans la fenêtre "Macro" sélectionner dans la liste déroulante en bas de la fenêtre : tous les classeurs ouverts.

Sinon regarde ici ... mais je ne pense pas que ça soit cela que tu veux.

;o)
0
Sylvie > Polux31 Messages postés 7219 Statut Membre
 
Bonjour,
Je me demande si j'ouvre un classeur que je le nomme Macro.
Puis-je lui mettre toutes les macros et lorsque j'ai besoin d'une macro;je n'ai plus qu'à ouvrir ce classeur.
Merci
0
Polux31 Messages postés 7219 Statut Membre 1 204
 
Si tu as regardé le lien, c'est un peu ce qu'il propose ^^

Il faut le nommé .XLA et ne contiendra que des macros et pas de feuilles. Je te conseille de bien suivre le tuto.

Il suffit de faire quand tu lances Excel de faire : Outils/Macros Complémentaires, et cochez la case "Mes fonctions personnelles". Ensuite tu les auras à chaque lancement d'Excel sans avoir à refaire la manip.

;o)
0
Sylvie
 
Bonjour, Polux31
Je pense que c'est cela que je cherche.
J'essaierai demain, je vous tiendrai au courant. Et merci d'aider, les personnes comme moi qui ne connaisse pas grands choses au monde d'Excel.
A+
0
Polux31 Messages postés 7219 Statut Membre 1 204
 
De rien et bon courage ...

;o)
0