ddlenrager
XLDnaute Nouveau
salut le forum,
En général, je ne post pas car je trouve toujours les réponses en parcourant le forum mais là j'ai rien trouvé. Voici mon problème, j'ai fait un code qui, en fonction d'un plage défini, renvoi chaque valeur de chaque cellule vers un fichier texte afin d'imprimer celui-ci avec une imprimante Zebra. tout fonctionne sauf la fin lorsque je demande la suppression du fichier texte créer, là, j'ai une message m'indiquant "Execution interrompue". lorsque j'essaie mon code en pas à pas détaillé celui-ci fonctionne ?????
quelqu'un aurait il eu le même problème
ci joint le code :
Option Explicit
Dim Cible As Integer
Dim cell As Variant
Declare Function WinExec Lib "kernel32" (ByVal lpCmdLine As String, ByVal nCmdShow As Long) As Long
Sub excelVersFichierTexte()
Dim Cible As Integer
Cible = FreeFile
'ouvre ou créer le .bat et copie des chemins d'impressions
Open "\\f-hapy\home1$\" & user & "\MyDocs\essai.bat" For Output As #Cible
Print #Cible, "Mode COM1: BAUD=9600 DATA=8 xon=on dtr=off rts=off"
Print #Cible, "copy \\f-hapy\home1$\" & user & "\MyDocs\" & "Test.txt com1:"
Close #Cible
End Sub
Private Function user()
'récupere l'IPN de l'utilisateur
user = Application.UserName
End Function
Sub ZPL()
'Création du .txt avec intégration du code ZPL
Cible = FreeFile
Open "\\f-hapy\home1$\" & user & "\MyDocs\" & "Test.txt" For Append As #Cible
Print #Cible, "^XA"
'origine de l'étiquette x;y
Print #Cible, "^LH50,50"
'définiton, du contraste
Print #Cible, "^MD20"
Print #Cible, "^FO25,85^A0R,150,100^FD" & cell & "^FS"
Print #Cible, "^FO25,50^GB200,420,2^FS"
'définition du nombre d'étiquettes à imprimer
Print #Cible, "^PQ1,0,1,Y"
Print #Cible, "^XZ"
Close #Cible
End Sub
Sub maplage()
Dim maplage As Variant
'boucle sur le nombre de cellule dans la plage
maplage = Range("a1:" & Range("a1").End(xlDown).Address)
For Each cell In maplage
Call ZPL
Next
Shell ("\\f-hapy\home1$\" & user & "\MyDocs\" & "essai.bat")
Call delete
End Sub
Sub delete()
Application.Wait (Now + TimeValue("0:0:10"))
Kill ("\\f-hapy\home1$\" & user & "\MyDocs\" & "Test.txt")
End Sub
En général, je ne post pas car je trouve toujours les réponses en parcourant le forum mais là j'ai rien trouvé. Voici mon problème, j'ai fait un code qui, en fonction d'un plage défini, renvoi chaque valeur de chaque cellule vers un fichier texte afin d'imprimer celui-ci avec une imprimante Zebra. tout fonctionne sauf la fin lorsque je demande la suppression du fichier texte créer, là, j'ai une message m'indiquant "Execution interrompue". lorsque j'essaie mon code en pas à pas détaillé celui-ci fonctionne ?????
quelqu'un aurait il eu le même problème
ci joint le code :
Option Explicit
Dim Cible As Integer
Dim cell As Variant
Declare Function WinExec Lib "kernel32" (ByVal lpCmdLine As String, ByVal nCmdShow As Long) As Long
Sub excelVersFichierTexte()
Dim Cible As Integer
Cible = FreeFile
'ouvre ou créer le .bat et copie des chemins d'impressions
Open "\\f-hapy\home1$\" & user & "\MyDocs\essai.bat" For Output As #Cible
Print #Cible, "Mode COM1: BAUD=9600 DATA=8 xon=on dtr=off rts=off"
Print #Cible, "copy \\f-hapy\home1$\" & user & "\MyDocs\" & "Test.txt com1:"
Close #Cible
End Sub
Private Function user()
'récupere l'IPN de l'utilisateur
user = Application.UserName
End Function
Sub ZPL()
'Création du .txt avec intégration du code ZPL
Cible = FreeFile
Open "\\f-hapy\home1$\" & user & "\MyDocs\" & "Test.txt" For Append As #Cible
Print #Cible, "^XA"
'origine de l'étiquette x;y
Print #Cible, "^LH50,50"
'définiton, du contraste
Print #Cible, "^MD20"
Print #Cible, "^FO25,85^A0R,150,100^FD" & cell & "^FS"
Print #Cible, "^FO25,50^GB200,420,2^FS"
'définition du nombre d'étiquettes à imprimer
Print #Cible, "^PQ1,0,1,Y"
Print #Cible, "^XZ"
Close #Cible
End Sub
Sub maplage()
Dim maplage As Variant
'boucle sur le nombre de cellule dans la plage
maplage = Range("a1:" & Range("a1").End(xlDown).Address)
For Each cell In maplage
Call ZPL
Next
Shell ("\\f-hapy\home1$\" & user & "\MyDocs\" & "essai.bat")
Call delete
End Sub
Sub delete()
Application.Wait (Now + TimeValue("0:0:10"))
Kill ("\\f-hapy\home1$\" & user & "\MyDocs\" & "Test.txt")
End Sub