tifred07
Messages postés2Date d'inscriptionvendredi 18 février 2005StatutMembreDernière intervention23 mars 2007
-
23 mars 2007 à 14:38
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 2018
-
24 mars 2007 à 00:39
Bonjour à tous!!!
Voila, je débute dans le VBA sur excel ou je commence à me faire la main (on y prend vite gout).
J'ai un problème que j'ai essayé de retranscrire d'une manière simple pour m'aider à avancer mais je ne sais vraiment pas par quoi commencer, mes connaissances sont encore trop limiter
Si je peux avoir votre aide ça serais sympa!
(Je n'ai aucune idée du niveau de difficulté de l'écriture de ma macro... et si vous avez besoin d'éclaircissement n'hésiter pas, ma philosophie c'est de bien connaître ce que l'on veut faire avant de plonger tête la première)
Je vous expose le problème :
Je possède un dossier racine que l’on va appeler « Base de donnée »
<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
Dans ma base de donnée je possède des sous dossiers nommés pour le premier « Dessins » et pour le deuxième « matériel »
Dans ces deux dossiers se trouve un dossier portant le nom d’un dessin (exemple 200) et les dossiers portant le nom 200 contienne un fichier nommé « fichier1 » « dans dessins » et « support1 » dans matériel.
Je souhaiterai créer une macro me demandant pour variable le nom d’un dessin. Je souhaite pouvoir entrer « 200 » et pouvoir copier dans un dossier Temp les fichiers correspondant « fichier1 et support1 » lié à ce nom de dossier. « fichier1 et support1 n’ont pas d’extension »
Si possible je souhaiterai pouvoir ensuite nommer les fichiers comme suit :
200.fichier1
200.support1
Avant execution de la macro :
100/fichier1
200/fichier1
Dessins 600/fichier1
700/fichier1
Base de données
100/support1
200/support1
Matériel 600/support1
700/support1
Temp vide
Résultat : à l’appelle de la macro : 200
100/fichier1
200/fichier1
Dessins 600/fichier1
700/fichier1
Base de données
100/support1
200/support1
Matériel 600/support1
700/support1
Temp 200.fichier1
200.support1
Rien que de l'écrire ça me fais un peu peur j'espère que c pas trop compliquer à comprendre (chaque dossier possède d'autre fichiers portant des noms aléatoire.
cs_Exploreur
Messages postés4821Date d'inscriptionlundi 11 novembre 2002StatutMembreDernière intervention15 novembre 201615 23 mars 2007 à 14:59
Salut,
Je ne sais pas si VBA excel, cette instruction existe, mais regarde un peu vers :
FileSystemObject...(c'est pas le plus rapide, j'en convient)...Cela te permet de vérifier entre autre si ton fichier existe, et de là, tu en récupère son nom, et evec les fonction sur les chaines de carractère tu peux travaillé sur son nom, en extraire une partie, avec Mid, Left,Right,Replace,Split....regarde avec ton aide en ligne avec ces mots là....
Exit Sub
Erreur:
MsgBox Err.Number & vbCrLf & Err.Description
End Sub
Bien sûr, il faudra éventuellement valider si le répertoire existe, s'il y a un fichier existant,...
Il faut aussi vérifier les "" à savoir s'ils sont présents ou non ou en double,...
Mais la base, c'est ça