Pb script vbs fonctionne aléatoirement

Résolu
lastar44 Messages postés 16 Date d'inscription mercredi 19 septembre 2007 Statut Membre Dernière intervention 9 juin 2010 - 2 juin 2010 à 15:33
lastar44 Messages postés 16 Date d'inscription mercredi 19 septembre 2007 Statut Membre Dernière intervention 9 juin 2010 - 9 juin 2010 à 14:57
Bonjour à tous,

J'ai réussi à adapter un code vbs trouvé sur un site en anglais.
C'est un script qui permet d'assembler plusieurs présentations powerpoint en une seule.
Le code fonctionne visiblement bien sauf que selon le dossier dans lequel je place le script et les documents à assembler, ma présentation ne contient pas toujours toutes les slides!
Quelqu'un voit-il une explication à ce problème?

Merci pour votre aide.

28 réponses

lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
9 juin 2010 à 11:46
Dans ton code, il te faudra remplacer ta variable PPTMER_FOLDER par la variable représentant le dossier contenant le script donc comme ceci :


var1 = WScript.ScriptFullName
var2 = WScript.ScriptName
PPTMERGE_FOLDER = left(var1,len(var1) - len(var2))

Set folder = fs.GetFolder(PPTMERGE_FOLDER)



L'expérience, c'est une connerie par jour, mais jamais la même..
0
lastar44 Messages postés 16 Date d'inscription mercredi 19 septembre 2007 Statut Membre Dernière intervention 9 juin 2010
9 juin 2010 à 11:54
Ok, je viens de tester en remplaçant ma ligne Const PPTMERGE_FOLDER = "D:\Data\test fusion\FusionPPT" par le paragraphe que tu as mis et la ligne "Set folder = fs.GetFolder(var1,len(var1) - len(var2))" je l'avais déjà dans mon code quelques lignes après.
Pourtant je ne pense pas avoir oublié quelque chose!
0
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
9 juin 2010 à 12:01
Et ça ne fonctionne pas? Attenion dans ton fs.getfolder, tu ne mets pas le bon paramètre, il faut bien mettre le "left"
Et peut-être faut-il faire gaffe au ""

Si tu fais :
var1 = WScript.ScriptFullName
var2 = WScript.ScriptName
PPTMERGE_FOLDER = left(var1,len(var1) - len(var2))
msgbox(PPTMERGE_FOLDER)
tu t'apercevras qu'à la fin y'a le \, il faudra peut-être également le supprimer.


L'expérience, c'est une connerie par jour, mais jamais la même..
0
lastar44 Messages postés 16 Date d'inscription mercredi 19 septembre 2007 Statut Membre Dernière intervention 9 juin 2010
9 juin 2010 à 12:09
En effet je n'avais pas fait attention à ce paramètre, merci pour la correction^^.
J'ai testé ce que tu viens de me donner, ça ne fonctionne toujours pas et j'ai effectivement un message avec le chemin qui comporte un '\' à la fin.
Sais-tu comment je peux le supprimer?

Merci!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
9 juin 2010 à 13:05
Avec un peu de bidouille, il suffirait de supprimer un caractère en +, donc :
PPTMERGE_FOLDER = left(var1,len(var1) - len(var2)+1)
mais je crois qu'il y a plus simple pour récupérer le chemin du répertoire sans cet ""


L'expérience, c'est une connerie par jour, mais jamais la même..
0
lastar44 Messages postés 16 Date d'inscription mercredi 19 septembre 2007 Statut Membre Dernière intervention 9 juin 2010
9 juin 2010 à 14:08
En effet en faisant:
PPTMERGE_FOLDER = left(var1,len(var1) - len(var2)+x), en remplaçant x par le nombre de lettre du nom de mon dossier, ça fonctionne!!!
Je vais tester à plusieurs endroits voir si ça fonctionne bien partout!
Parce qu'en fait je veux récupérer le chemin du répertoire où il y a le script mais les fichiers sont dans un sous-dossier donc je ne vois pas trop comment faire autrement pour obtenir le chemin complet.

En tout cas merci de ton aide, j'espère que ça va fonctionner partout^^
0
lolokun Messages postés 1241 Date d'inscription mardi 10 octobre 2006 Statut Membre Dernière intervention 27 août 2013 7
9 juin 2010 à 14:46
Oups sorry, suffit de remplacer le + par un "-"

Une fois que tu as ton dossier contenant le script, il te suffira de lister le sous-répertoire en question, il doit y avoir des exemples de code sur le site


L'expérience, c'est une connerie par jour, mais jamais la même..
0
lastar44 Messages postés 16 Date d'inscription mercredi 19 septembre 2007 Statut Membre Dernière intervention 9 juin 2010
9 juin 2010 à 14:57
Quand je remplace "+1" par "-1", ça ne fonctionne plus!
Mais ne t'en fais pas le principal c'est que ça fonctionne quel que soit l'endroit où se trouve le dossier et que mon nom de sous-dossier contenant les fichiers ppt ne change pas!
Merci!!
0
Rejoignez-nous