VB

Signaler
Messages postés
29
Date d'inscription
vendredi 16 mai 2008
Statut
Membre
Dernière intervention
31 août 2009
-
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
-
Bonjour,

Je suis un débutant en VB, je souhaiterai faire une boucle afin de copier un par un des fichiers d'un répertoire, après les avoir soumis des tests, en utilisant les fonctions Fso.
J'ai essayé avec CopyFile(source,destination[,overwrite]), le problème est que je suis obligé d'indiquer le chemin entier du fichier que je veux tester et copier. Or moi je voudrai juste indiquer le chemin du repertoire et pouvoir travailler sur tous les fichiers de celui lui.
 
Merci d'avance pour votre aide

14 réponses

Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,
Et CopyFolder ne te convient pas?

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
"je voudrai" pourquoi un tel souhait ?
il est facile de faire une concaténation du chemin avec le nom du fichier

d'autre part, FSO est inutile ici (conserves FSO pour le VBS)
Messages postés
29
Date d'inscription
vendredi 16 mai 2008
Statut
Membre
Dernière intervention
31 août 2009

salut

 avec CopyFolder,  je copie la totalité du dossier sans savoir ce qu'il contient. Justement j'aimerai copier que certains fichiers du dossier. 
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,
Dans ce cas tu n'a pas le choix tu vas devoir jouer avec les chemins...

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
29
Date d'inscription
vendredi 16 mai 2008
Statut
Membre
Dernière intervention
31 août 2009

Peux-tu être plus explicite STP, dans la mesure où je ne suis pas informaticien, les idées ne fusent pas mon cerveau quand il s'agit de problème informatique.

merci
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
en gros :

Dim sFolderSrc As String
Dim sFolderDst As String
Dim sFileName as String
sFolderSrc = "C:\Source"
sFolderDst = "C:\Destination"
sFileName = Dir$(sFolderSrc & "*.txt"
Do While Lenb(sFileName)
... test tests
FileCopy sFolderSrc & sFileName, sFolderDst & sFileName
sFileName = Dir$()
Loop
Messages postés
29
Date d'inscription
vendredi 16 mai 2008
Statut
Membre
Dernière intervention
31 août 2009

J'ai testé le bout de prog mais rien ne ce passe


merci comme même
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
tu l'as adapté un minimum, j'imagine ? (modification des chemins)

parceque sans cela, effectivement, si tu n'as pas de fichiers txt dans un C:\Source
et comme par hasard, un C:\Dest prêt a recevoir des fichiers, il ne risque pas de se passer grand chose
Messages postés
29
Date d'inscription
vendredi 16 mai 2008
Statut
Membre
Dernière intervention
31 août 2009

oui biensure je l'ai testé avec mes paramètres, mais rien ne c'est produit
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
et en pas a pas, que fait le code ?
Messages postés
29
Date d'inscription
vendredi 16 mai 2008
Statut
Membre
Dernière intervention
31 août 2009

Le  prog fonctionne correctement sauf qu'il ne donne rien.......
t'aurai pas une idée avec CopyFile(source,destination[,overwrite]), où la source serai variable?
merci
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
ce genre de boucles ?

For each oFile In FSO.GetFolder("C:\Source")
...
Next oFile

j'insiste sur le faite que FSO est a proscrire de VB. lent et déstiné au VBS uniquement.
Messages postés
29
Date d'inscription
vendredi 16 mai 2008
Statut
Membre
Dernière intervention
31 août 2009

J'ai l'erreur "run-time error '70'  permission refusée"....


merci de ton aide, je vais creusé sur le premier bout de prog que tu ma donné
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
pas le droit de lire la source
ou fichier de destination existant (non ecrasable, tu dois faire un Kill de ces fichiers)