Sub test()
Dim code$, Scripts$, fichier$, x&, dossier$
'le code du vbs
code = "Set img = CreateObject(""ImageMagickObject.MagickImage.1"")" & vbCrLf
code = code & "img.Convert wscript.arguments(0), wscript.arguments(1)"
' creation du fichier vbs
fichier = ThisWorkbook.Path & "\convertSerie.vbs"
x = FreeFile
Open fichier For Output As #x: Print #x, code: Close #x
'raccourci a utiliser avec wscript.shell
Scripts = """" & fichier & """ "
'dossier contenant les fichiers a convertir
dossier = "H:\fond_d_ecran\animaux\"
With CreateObject("WScript.Shell")
itemvu = Dir(dossier & "\*.jpg")
Do While itemvu <> "" 'boucle dir sur fichier
Source = dossier & "\" & itemvu
Destination = Replace(Source, ".jpg", ".png")
' run avec plusieurs arguments exemple (.Run scripts i, " " & "toto" & " titi"
.Run Scripts & " " & Source & " """ & Destination & """ "
itemvu = Dir
Loop
End With
'si tu veux supprimer le vbs dynamique a la fin
'Do While Dir(Destination) = "": DoEvents: Loop
'Kill fichier 'supprime le vbs dynamique
End Sub