DeleteFolder avec variable dans le nom

Résolu
cs_chapeaumelon Messages postés 3 Date d'inscription lundi 22 septembre 2003 Statut Membre Dernière intervention 12 juillet 2007 - 12 juil. 2007 à 15:13
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 12 juil. 2007 à 22:52
Bonjour,

J'ai un petit souci avec mon DeleteFolder.

Le folder à éffacer est du type 00012345.123

Le zero's sont variable en fonction du la taille en caractères du la variable stFichierSource.
Mais la dernière partie .123 est aussi variable. Mais pas d'utilité pour moi.

Je pensais que je pouvais mettre un Wildcard * à la fin, mais cela ne fonctionne pas. Si je met .123 allors le Deletefolder fonctionne.

Comment résoudre ?

Function PadLeft(rsIn, rlCount, rvntChar)
Dim s: s = String(rlCount, rvntChar)
If Len(rsIn) >= rlCount Then
PadLeft = rsIn
Else
PadLeft = String(rlCount - Len(rsIn), rvntChar) & rsIn
End If
End Function

dim filesys
Set filesys = CreateObject("Scripting.FileSystemObject")
Dim sPath
sPath = Merlindr & "\scout\archdata" & PadLeft(stFichierSource, 8, "0")&"*"
MsgBox sPath
If filesys.FolderExists(sPath) Then
filesys.DeleteFolder sPath,true
End If

4 réponses

cs_chapeaumelon Messages postés 3 Date d'inscription lundi 22 septembre 2003 Statut Membre Dernière intervention 12 juillet 2007
12 juil. 2007 à 20:19
J'ai trouvé ; malheureusement la fonction FolderExist ne supporte pas de Wildcards
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
12 juil. 2007 à 18:49
Salut
D'après l'aide de VB6, DeleteFolder accepte un * :
folderspec, Correspond toujours au nom du dossier à supprimer. L'argument folderspec peut contenir des caractères génériques dans le dernier composant du chemin.
"Dernier composant" c'est à dire entre le dernier \ et la fin de la chaine

Quel est le contenu de sPath quand ton essai ne fonctionne pas ?
Quelle est l'erreur s'il y en a une ?

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
0
cs_chapeaumelon Messages postés 3 Date d'inscription lundi 22 septembre 2003 Statut Membre Dernière intervention 12 juillet 2007
12 juil. 2007 à 19:58
F:\scout\archdata\00012345*

j'ai aussi essayé 00012345.*

Le folder a deleter : 00012345.123

Si je tape .123 après PadLeft(stFichierSource, 8, "0")&".123" - cela fonctionne parfaitement.

Je ne comprends pas ?
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
12 juil. 2007 à 22:52
Ah bah oui, t'as rasion, je n'y avais pas pensé.
Bien vu
0
Rejoignez-nous