Lecture de fichier

Lecture de fichier - VB/VBA/VBS - Programmation

Marsh Posté le 28-11-2006 à 12:43:28    

Bonjour,
 
Une petite question de débutant...
 
Je veux faire une requete VBA pour acceder à un fichier...
Le probleme est que:
 
-> c'est une autre personne qui injecte le fichier dans le repertoire courant
-> c'est toujours le meme nom de fichier sauf la fin qui change (genre fichier-essai1, fichier-essai2, fichier-tentative1)
 
J'essaie d'ouvrir le fichier avec fichier*.* par exemple mais ca ne marche pas. En SQL, on peut utiliser % à la place (fichier%.*) quand il manque un bout du nom mais en vba je ne sais pas :(
 
pourriez vous m'eclairer sur ce point, s'il vous plait ? :)


---------------
Clan Torysss.
Reply

Marsh Posté le 28-11-2006 à 12:43:28   

Reply

Marsh Posté le 28-11-2006 à 13:26:17    

voir aide en ligne : si VBA Excel exemple GetOpenFilename


Message édité par kiki29 le 28-11-2006 à 13:30:22
Reply

Marsh Posté le 30-11-2006 à 11:52:46    

en fait, c'est un peu plus complexe que ca :)
 
j'aimerai pouvoir récuperer le nom de ce fichier pour le conserver dans une variable pour d'autres modifications par la suite.
j'ai essayé aussi de voir en recherchant le dernier fichier créé dans le répertoire mais je ne connais pas non plus comment récuperer dans une variable le nom du dernier fichier crée  :(  
 
 
 
ps: je suis une grosse quiche en vba...


Message édité par Rayaki le 30-11-2006 à 12:11:59

---------------
Clan Torysss.
Reply

Marsh Posté le 30-11-2006 à 19:25:14    

Salut, je te donne un moyen d'y arriver.
 
En fait il faut que tu énumères tous les fichiers dans le répertoire concerné pour trouver le fichier qui t'intéresse en comparant leur date de création il n'y a que comme cela que tu pourras trouver le dernier fichier.
Il faut passer par les api windows semble t'il je ne sais pas si il y a plus simple en vba.
 
Tu trouveras un exemple là:
 
http://docvb.free.fr/apidetail.php?idapi=46
 
Le principe consiste à l'aide des fonctions findfirst (recherche du premier fichier) et findnext (recherche du fichier suivant) de récupérer la liste de tous les fichiers (et répertoires aussi) corespondant à ton critère de recherche ('fichier*.* dans ton cas).
La méthode est itérative, et à chaque itération tu récupères dans une structure de type WIN32_FIND_DATA l'ensemble des paramètres du fichier ou répertorie (nom, extension, attributs, date de création, etc...). Il faut vérifier qu'il sagit bien d'un fichier donc en testant l'attribut.
 
Je pense que tu comprendras l'exemple sinon n'hésite pas à me demander même si je suis pas un pro VBA, mais qq soit le language utilisé la mise en oeuvre des api est la même...


Message édité par tapalair le 30-11-2006 à 19:30:49
Reply

Marsh Posté le 30-11-2006 à 19:46:00    

J'avais lu trop rapidement ton post , pas besoin des API pour connaitre les dates de creation, modif de fichiers  
voir mon post http://forum.hardware.fr/hfr/Progr [...] 1719_1.htm et adapter

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed