VB

Prich Messages postés 29 Date d'inscription vendredi 16 mai 2008 Statut Membre Dernière intervention 31 août 2009 - 16 mai 2008 à 11:09
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 16 mai 2008 à 12:48
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

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
16 mai 2008 à 11:12
Salut,
Et CopyFolder ne te convient pas?

@+: Ju£i?n
Pensez: Réponse acceptée
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
16 mai 2008 à 11:12
"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)
0
Prich Messages postés 29 Date d'inscription vendredi 16 mai 2008 Statut Membre Dernière intervention 31 août 2009
16 mai 2008 à 11:17
salut

 avec CopyFolder,  je copie la totalité du dossier sans savoir ce qu'il contient. Justement j'aimerai copier que certains fichiers du dossier. 
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
16 mai 2008 à 11:19
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
0

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

Posez votre question
Prich Messages postés 29 Date d'inscription vendredi 16 mai 2008 Statut Membre Dernière intervention 31 août 2009
16 mai 2008 à 11:23
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
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
16 mai 2008 à 11:30
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
0
Prich Messages postés 29 Date d'inscription vendredi 16 mai 2008 Statut Membre Dernière intervention 31 août 2009
16 mai 2008 à 11:39
J'ai testé le bout de prog mais rien ne ce passe


merci comme même
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
16 mai 2008 à 11:43
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
0
Prich Messages postés 29 Date d'inscription vendredi 16 mai 2008 Statut Membre Dernière intervention 31 août 2009
16 mai 2008 à 11:46
oui biensure je l'ai testé avec mes paramètres, mais rien ne c'est produit
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
16 mai 2008 à 11:47
et en pas a pas, que fait le code ?
0
Prich Messages postés 29 Date d'inscription vendredi 16 mai 2008 Statut Membre Dernière intervention 31 août 2009
16 mai 2008 à 11:58
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
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
16 mai 2008 à 12:09
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.
0
Prich Messages postés 29 Date d'inscription vendredi 16 mai 2008 Statut Membre Dernière intervention 31 août 2009
16 mai 2008 à 12:19
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é
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
16 mai 2008 à 12:48
pas le droit de lire la source
ou fichier de destination existant (non ecrasable, tu dois faire un Kill de ces fichiers)
0
Rejoignez-nous