[Excel] Excel.run une macro en Add-in
Bonjour,
Encore et toujours mes problèmes ^^ cette fois ci je n'arrive pas à executer une macro.
Circonstance : je l'éxecute depuis vb.net, avec quelques arguments composés de variable string et de variable workbook.
J'ouvre le fichier qui reçoit le traitement, je lance la macro, je ferme, le tout dans un boucle pour tout une série de fichier (d'où l'intérêt de l'automatisation)
La macro est normalement précédé d'un formulaire, mais je l'ai modifié en faisant en sorte que le formulaire recueille uniquement les arguments avant d’exécuter la procédure.
La macro est donc dans le code du form, dans un fichier xlam.
Voici mon code vb :
Code:
1 2 3 4 5 6 7 8 9
| Dim appExcel As New excel.Application
appExcel = CType(CreateObject("Excel.Application"), excel.Application)
Dim doc As excel.Workbook
For Each xls In Chemins
doc = appExcel.Workbooks.Open(xls)
appExcel.Run("Importation", TextBox2.Text, TextBox1.Text, "X", doc, Label5.Text)
doc.Close()
Next
appExcel.Quit() |
Encore une fois en phase de test, je sais qu'il y a des choses à modifier pour les bonnes pratiques ^^
et voici la partie intéressante de la macro :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| Private Sub CommandButton2_Click()
Dim cycle As String
Dim bactérie As String
Dim recherché As String
cycle = TextBox1.Text
bactérie = TextBox2.Text
recherché = "X"
Call Importation(cycle, bactérie, recherché, excel, fichier)
Unload UserForm2
End Sub
[...]
Sub Importation(cycle As String, bactérie As String, recherché As String, excel As Workbook, fichier As String)
[...]
End Sub |
A l'éxecution, on m'annonce la macro impossible à exécuter.