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 :
Encore une fois en phase de test, je sais qu'il y a des choses à modifier pour les bonnes pratiques ^^
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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()
et voici la partie intéressante de la macro :
A l'éxecution, on m'annonce la macro impossible à exécuter.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Partager