Nom de macro en variable ou en boucle VBA Excel 2017
Résolu/Fermé
A voir également:
- Nom de macro en variable ou en boucle VBA Excel 2017
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Mise en forme conditionnelle excel - Guide
- Liste déroulante excel - Guide
- Si ou excel - Guide
3 réponses
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 751
Modifié le 9 août 2022 à 12:07
Modifié le 9 août 2022 à 12:07
Bonjour,
Un exemple avec toutes les macros dans un même module :
Option Explicit Sub Menuiserie_1() MsgBox "M1" End Sub Sub Menuiserie_2() MsgBox "M2" End Sub Sub Menuiserie_3() MsgBox "M3" End Sub Sub EnvoiAvecIf() Dim res As String res = InputBox("saisir un chiffre entre 1 et 3", "Quelle macro lancer?") If Val(res) < 1 Or Val(res) > 3 Then MsgBox "Imbécile!" Else Application.Run "Menuiserie_" & res End If End Sub Sub EnvoiEnBoucle() Dim i As Integer For i = 1 To 3 Application.Run "Menuiserie_" & i Next End Sub
Pour le cas ou les macros à appeler seraient dans un autre module (exemple Module12) :
Option Explicit Sub EnvoiAvecIf() Dim res As String res = InputBox("saisir un chiffre entre 1 et 3", "Quelle macro lancer?") If Val(res) < 1 Or Val(res) > 3 Then MsgBox "Imbécile!" Else Application.Run "Module12.Menuiserie_" & res End If End Sub Sub EnvoiEnBoucle() Dim i As Integer For i = 1 To 3 Application.Run "Module12.Menuiserie_" & i Next End Sub
Bonjour Pijaku,
Merci beaucoup, j'avais essayer le "Application.run" mais j'avais pas réussis, peut-être à cause des modules.
Je vais bien étudier ta solution et l'adapter a mon besoin,
Encore merci beaucoup pour l'aide apporter sur ce site.
Je reviendrais clôturer le sujet lorsque j'aurai réussis.
Merci.