Bonjour,
Grâce à l'aide de hackoofr j'ai pu écrire ce code :
Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 @echo off for %%a in ("%~dp0\.") do set "parent=%%~nxa" EXCEL.EXE /cmd/"%parent%" "Liste de documents test.xlsm"
Grâce à lui la deuxième ligne permet de trouver le nom du dossier parent où se trouve le batch sans le chemin.
Cette information est envoyée dans un fichier Excel se trouvant dans le même dossier.
Le problème c'est que le nom du dossier parent comprend des espaces alors le code boucle sur chaque mot et donc avant de réussir à ouvrir le fichier, Excel essai d'ouvrir un fichier correspond à chaque mot du dossier parent.
Exemple :
Le fichier batch se trouve dans ce dossier :
"C:\Users\Toto\Desktop\Planning BE\Toto Tata Titi"
Quand je lance le batch Excel s'ouvre puis me dit :
Puis me dit :"Désolé... Nous ne trouvons pas Tata.xlsx. Peut-être l'avez vous déplacé, renommé ou supprimé ?"
Puis ouvre enfin le bon fichier et récupère correctement la variable "Toto Tata Titi"."Désolé... Nous ne trouvons pas Titi".xlsx. Peut-être l'avez vous déplacé, renommé ou supprimé ?"
Je ne peux me passer des espaces dans la dénomination du dossier.
Comment pourrai-je faire ? Je ne comprends vraiment pas pourquoi la valeur de %parent% se trouve être utilisé comme nom de fichier Excel![]()
Partager