Formulaire de recherche dans un dossier vba

Résolu/Fermé
azizabdel84 - 2 sept. 2011 à 14:35
 azizabdel - 7 sept. 2011 à 09:22
Bonjour à tous,

J'ai un projet qui est de créer un formulaire de recherche sous vba excel.
J'ai un dossier sur mon pc nommé prospectus dans lequel se trouvent des prospectus(au format pdf]) nommés par code ISIN (exemple de nom de prospectus : FR10256869) .
je voudrais lorsque je saisie dans mon formulaire plus précisément dans textbox un Code Isin puis je valide , que ce dernier m'ouvre le prospectus correspondant à ce code.
Je sais pas si j'ai été clair mais n'hésitez pas à me demander plus de précision.
Espérant que vous m'aiderez,
Peace à tous!!!



A voir également:

5 réponses

eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
3 sept. 2011 à 13:14
Bonjour,

code qui doit me permettre de rechercher un fichier dans le dossier
J'avais cru comprendre que le fichier portait le nom du code ISIN.
Dans ce cas il n'y a pas a rechercher, juste à l'ouvrir :
Dim AcroRd32 As String, cheminFichierPDF As String, x As Double
    AcroRd32 = "C:\Program Files (x86)\Adobe\Reader 10.0\Reader\AcroRd32.exe "
    cheminFichierPDF = "d:\tmp\"
    x = Shell(AcroRd32 & cheminFichierPDF & [Feuil1!A1].Value & ".pdf", vbNormalFocus)

AcroRd32 : chemin et nom de reader d'adobe avec un espace en fin
cheminFichierPDF : là où sont tes fichiers pdf
Feuil1!A1 : référence ASIN qui servira à fabriquer le nom du fichier en ajoutant ".pdf"
, vbNormalFocus : met le document pdf actif, à supprimer si tu préfères qu'excel reste en avant-plan

eric
1
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
2 sept. 2011 à 22:12
Bonsoir,

vraiment en vba ?

Une simple formule suffit.
Avec en A1 le nom de ton fichier, tu peux faire un lien hypertexte avec :
=LIEN_HYPERTEXTE("file:///D:\tmp\" & A1 & ".pdf";"ouvrir fichier")

eric
0
Merci Eric pour ta réponse,

En fait c'est un projet qu'on m'a demandé en vba.
Le formulaire est déjà fait mais je bloque au niveau du code qui doit me permettre de rechercher un fichier dans le dossier (sachant qu'il y'a 250 fichiers dans mon dossier.
Après recherche sur le net je n'ai pas vraiment trouvé ma réponse et je me demande si c'est possible.
0
Merci Eric pour ta réactivité,

Je teste ça rapidement et je te tiens au courant

azizabdel
0

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

Posez votre question
azizabdel84 Messages postés 1 Date d'inscription lundi 5 septembre 2011 Statut Membre Dernière intervention 5 septembre 2011
5 sept. 2011 à 12:19
J'ai testé et cela fonctionne cependant ça ne correspond pas exactement à ce que je souhaiterais.
Dans ta macro, la recherche se fait à partir d'une cellule ("A1") ,moi j'aimerais que la recherche se fasse à partir du userform que j'ai crée et dans lequel je dois saisir juste le code ISIN (ex FR500000) puis valider. Après validation je dois avoir le fichier (FR500000) qui s'ouvre automatiquement. Et ainsi de suite à chaque fois que je saisirais et validerais un code Isin dans le formulaire de recherche.

Azizabdel
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
5 sept. 2011 à 12:54
Bonjour,

Ben il me semble qu'il faille simplement remplacer [Feuil1!A1].Value par le texte issu de ton userform.
non ?

eric
0
ça voudrait dire qu'il faut donc que je modifie à chaque recherche,mon code en remplaçant par le texte issu du userform?
j'ai essayé de le modifier à ma façon mais ça ne marche pas
voici mon code

Sub OuvrirPdf()
Dim AcroRd32 As String, cheminFichierPDF As String, x As Double
AcroRd32 = "C:\Program Files (x86)\Adobe\Reader 9.0\Reader\AcroRd32.exe "
cheminFichierPDF = "C:\Documents and Settings\thiombia\Bureau\Prospectus"
x = Shell(AcroRd32 & cheminFichierPDF & TB_icode.Value & ".pdf", vbNormalFocus)
End Sub

'TB-icode est le nom du textbox du formulaire dans lequel je saisie le code Isin recherché
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
5 sept. 2011 à 13:26
Ce code n'est pas suffisant, il faut l'intégrer à celui de la gestion du formulaire.
Sur le bouton ok par exemple, mais toi seul connais ton userform pour l'instant...
Tu peux déposer un fichier exemple sur cijoint.fr et coller ici le lien fourni.
Mais je m'absente pour un moment, si qcq'un veut reprendre...
eric
0
ci-joint le lien du fichier :

http://www.cijoint.fr/cjlink.php?file=cj201109/cij0YJiQQN.xls

Ok Merci pour ton aide Eric !
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
5 sept. 2011 à 20:06
Bonsoir,

Je t'ai fait un Sub ouvrir(ISIN) où tu passes en paramètre la référence ISIN du document.
Je mis un appel sur cette procédure sur le bouton ok du formulaire.
Je n'ai pas testé l'ouverture du document mais pour tester jusqu'à cette partie j'ai mis en commentaire ton contrôle sur la saisie qui bloquait les lettres.
Tant que j'y étais un double-clic sur la ref en colonne B de Feuil1 ouvre le doc

http://www.cijoint.fr/cjlink.php?file=cj201109/cijGMXaWlb.xls

eric
0