Anomalie du vbs [Résolu]

Signaler
Messages postés
51
Date d'inscription
lundi 30 septembre 2013
Statut
Membre
Dernière intervention
3 septembre 2018
-
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
Bonjours,
Je débute en programmation et j'ai eu quelques problèmes avec certains fichiers éditer en script vbs qui fonctionnent très bien, quand ils sont sur le bureau et d'autres ne marchent pas du tout. Pourquoi ?
Cordialement

9 réponses

Messages postés
29743
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 octobre 2020
338
Bonjour,

Heuuuu..... disons que...... sans savoir ce que contiennent les scripts en question..... impossible pour nous de te répondre....




Messages postés
51
Date d'inscription
lundi 30 septembre 2013
Statut
Membre
Dernière intervention
3 septembre 2018

VOICI UN DES SCRIPT VBS QUI NE S'EXÉCUTE PAS.

'Renommer un dossier 

Sub RenameFolder() 
Dim fso ' As Scripting.FileSystemObject 
Dim fd ' As Scripting.Folder 
Dim s ' As String 
Dim sFolderName ' As String 
Dim sNewName ' As String 
Dim sTemp ' As String 

'Initialisation des noms de dossiers 
sFolderName = "d:\MonDossier" 
sNewName = "toto" 

Set fso = CreateObject("Scripting.FileSystemObject") 
' Vérifier que le dossier source existe bien. 
If fso.FolderExists(sFolderName) Then 
' Récupérer l'instance du dossier. 
Set fd = fso.GetFolder(sFolderName) 
sTemp = fd.Drive & "\" & sNewName 
' Vérifier que le dossier cible n'existe pas déjà. 
If fso.FolderExists(sTemp) Then 
MsgBox "Ce nom de dossier existe déjà!" 
Else 
fd.Name = sNewName 
End If 
Else 
MsgBox "Dossier non trouvé!" 
End If 
End Sub



EDIT : AJOUT DES BALISES DE CODE (jordane)
Messages postés
29743
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 octobre 2020
338
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Messages postés
29743
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 octobre 2020
338
Ok maintenant on voit le script...
Mais pourrais tu nous indiquer en quoi il ne fonctionne pas ?
* Et aussi.. dans QUELS cas... il ne fonctionne pas.



Messages postés
51
Date d'inscription
lundi 30 septembre 2013
Statut
Membre
Dernière intervention
3 septembre 2018

Je le sauvegarde sur le bureau de Seven et quand on clique dessus rien ne se passe.
Messages postés
29743
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 octobre 2020
338
Quand on lit ta question... tu laisses sous-entendre que ce script fonctionne ( sauf si tu le mets sur le bureau) .. c'est bien ça ?
Si tu le places ailleurs sur ton DD .. il fonctionne ??

ou bien... comme je le suppose... quelque soit l'endroit où tu place ce script... il ne fonctionne pas du tout...


PS: Dis toi que plus tu sera précis dans tes explications plus vite tu obtiendras une réponse à ta question.....(et moins vite on se lassera de te répondre).
Messages postés
51
Date d'inscription
lundi 30 septembre 2013
Statut
Membre
Dernière intervention
3 septembre 2018

Bonjour,

Je m'excuse mais du moment que je n'en fait pas une utilisation commerciale et que je n'en tire aucun profit, je me suis servis de ce code source pour apprendre le script.vbs. je ne vois pas où est le mal pour CodeS-Sources.

http://codes-sources.commentcamarche.net/.

Cordialement.
Messages postés
29743
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 octobre 2020
338

Je m'excuse mais du moment que je n'en fait pas une utilisation commerciale et que je n'en tire aucun profit, je me suis servis de ce code source pour apprendre le script.vbs. je ne vois pas où est le mal pour CodeS-Sources.

Hein ????
De quoi parles tu ???*
Messages postés
51
Date d'inscription
lundi 30 septembre 2013
Statut
Membre
Dernière intervention
3 septembre 2018

Ce document intitulé « Anomalie du vbs » issu de CodeS-SourceS (codes-sources.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Messages postés
29743
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
13 octobre 2020
338
Oui ca on le sait ... mais quel est le rapport avec la question ??
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
229
foldername = "d:\MonDossier"
donc : fd.Drive = "d:"
et donc : sTemp = fd.Drive & "\" & sNewName ==>==>> = "d:\toto"
et donc ton code vérifié la non-existence de "d:\toto" ==>> et si n'existe pas : renomme "d:\Mondossier" en "d:\toto" ?
C'est cela que tu veux faire ?

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
229
Et par quoi appelles-tu cette sub ???
ce n'est certes pas en te contentant de cliquer sur ton vbs que cette sub sera spontanément appelée.
ton vbs serait par contre exécutable du seul fait d'un click sans ton Sub RenameFolder() et le end sub correspondant.

Il le serait également en écrivant comme toute premlière instruction :
RenameFolder
, ce qui appellerait ta sub

Existe également la possibilité d'utiliser des arguments en Command Line (utile si ton fichier vbs contient plusieurs procédures que tu veux utiliser selon tes besoins).
Pour résumer : ton code ne sera exécuté que si :
- soit la sub RenameFolder est appelée (avec ou non Command Line)
- soit ce code est directement (hors sub) celui de ton fichier.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
229
Bon ...
De toutes manières :
le code montré fait tout un tas de détours inutilement alourdissants.
Je n'ai pas VBS (inhibé sur ma machine pour des raisons personnelles de sécurité), mais (de mémoire et donc à main levée et sans tester), VBS a ce qu'il faut.
Voici ce que tu devrais écrire :
RenameFolder

Sub RenameFolder
Dim sFolderName
Dim sNewName
sFolderName = "d:\MonDossier"
sNewName = "d:\toto"
Set fso = CreateObject("Scripting.FileSystemObject")
If not fso.FolderExists("d:\Monoutil") then
msgbox "le dossier " & sFolderName & " n'existe pas"
exit sub
end if
if fso.FolderExists("d:\abcdef") Then
msgbox "le dossier " & sNewName & " existe deja"
exit sub
end if
fso.MoveFolder sFolderName, sNewName
end sub

Tu sais quoi ? Tu devrais commencer par apprendre en lisant les fonctions disponibles de VBS au lieu de tenter d'apprendre en regardant ce que d'autres (pas forcément toujours adroits) ont écrit ailleurs.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
229
A Reverde, à qui je rappelle qu'il est ici sur un FORUM.
Tu as cliqué sur le tag "RESOLU". Bien, mais ce click n'aurait aucun sens sans indiquer (d'autres suivent/suivront cette discussion) comment ton problème a été "résolu" !
Alors ?
Messages postés
51
Date d'inscription
lundi 30 septembre 2013
Statut
Membre
Dernière intervention
3 septembre 2018

ucfoutu, je suis vraiment désolé pour vous car vous êtes le seul qui avait compris le sens de ma question et cela répondu à ma question. Quand à avoir cliqué sur le tag RÉSOLU c'est parce-que j'ai eu à un moment donné l'impression qu'on se moqué des gens comme moi. Je vous en prie n'en faisons pas une polémique à ce sujet car j'ai toujours besoin de vous.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
229
Personne ne s'est "moqué de toi", reverde.
Tu es ici sur un forum technique. Les questions (justifiées) de jordane45 étaient précisément techniques et nécessaires car elles permettaient de "rester dans les rails".
Il te faut comprendre qu'ici : pas d'états d'âme. Tu y seras toujours le bienvenu dans cet esprit.