Fonction recherche un fichier automatiquement

Résolu/Fermé
Bro - 4 nov. 2014 à 17:24
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 - 13 nov. 2014 à 17:46
Bonjour,


Je suis sur excel 2010.

Je cherche un moyen où lorsque je clic sur la valeur dans la cellule An, une recherche automatique d'un fichier comprenant la valeur de la cellule An se fasse sur mon disque dur.

Par exemple:
- dans la cellule A2, j'ai 'premier' et en cliquant dessus j'aimerai que cela lance une recherche sur mon disque C d'un fichier dont le nom contiendrai 'premier'
- dans la cellule A3, j'ai 'deuxième' et en cliquant dessus j'aimerai que cela lance une recherche sur mon disque C d'un fichier dont le nom contiendrai 'deuxième'

et cela pour les quelques 800 lignes

j'espère avoir formuler ça correctement pour que ça se conprenne.

Merci d'avance pour votre aide !


A voir également:

9 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
6 nov. 2014 à 18:35
Bonjour,

J'ai fait cela, voir si cela convient!

La seul contrainte il faut le nom du fichier avec son extension

http://www.cjoint.com/data3/3KgsMJ3jCTj.htm
1
Ça ne marche pas...

De plus je ne connais pas l'extension du fichier à l'avance.

J'en profite pour précisé, que je ne souhaite pas ouvrir le fichier, juste avoir la fenêtre avec la recherche du fichier
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
7 nov. 2014 à 09:54
Voilà un nouveau classeur avec recherche de fichier (sans extension) et ouverture du répertoire où ce trouve le fichier

http://www.cjoint.com/data3/3Khj5yQ5Qfp.htm
0
Bonjour,

Je n'ai pu tester ta solution car il me remonte une erreur:

"Erreur de compilation:

Le code contenu dans ce projet doit être mis à jour pour pouvoir être utilisé sur les systèmes 64 bits. Vérifiez et mettez à jour les instructions Declare, puis marquez-les avec l'attribut PtrSafe."
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
10 nov. 2014 à 11:15
La 2ème solution fonctionne sous W8, mais pas sous XP. C'est dommage!
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
Modifié par eriiic le 6/11/2014 à 21:26
Bonjour,

un essai : https://www.cjoint.com/c/DKgvDzX3nIT
Dès qu'un nom de fichier est satisfaisant la recherche s'arrête et passe au mot suivant.
Les autres occurrences ne sont pas recherchées. Si pas ça, mettre une chaine plus précise.
eric

En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
1
C'est vraiment pas mal ! Mais après plusieurs tests, je n'arrive à avoir que le lien pour le premier nom (cellule A2).

De plus je n'arrive pas à élargir la ressources (rechercher directement à la racine C\)
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
8 nov. 2014 à 18:32
Bonjour,

Mais après plusieurs tests, je n'arrive à avoir que le lien pour le premier nom (cellule A2).
Pas chez moi.
Attention qu'il ne reconnait pas les répertoires virtuels. Par exemples remplacer Utilisateurs par Users
De plus il faut avoir les droits pour lire le répertoire sinon il est sauté.

De plus je n'arrive pas à élargir la ressources (rechercher directement à la racine C\)
Je veux bien voir pour modifier mais la recherche sera très longue, tous les sous-répertoires, même ceux inutiles, seront explorés.
Tu as combien de noms à rechercher ?

eric
0
Bonjour,

Pour les répertoires, j'ai bien vérifié qu'ils ne sont pas pas protégés.
En test j'ai déplacé des fichiers à retrouver par excel dans un même dossier et rien a faire, c'est comme si la boucle ne se faisait pas sur la colonne A (seul le premier s'affiche).

J'ai environ 800 lignes, donc 800 noms a retrouver dans un dossier qui pourra être n'importe où sur le disque C des différentes personnes qui utiliseront ce fichier.
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
10 nov. 2014 à 16:34
Bonjour,

tu as dû rater le post #14
eric
0
Ca marche, merci beaucoup ! Et excellent travail !!!!
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
9 nov. 2014 à 17:06
Bonjour,

Version grandement améliorée.
Les répertoires ne sont parcourus plus qu'une fois alors qu'ils l'étaient pour chaque nom auparavant.
Et des dizaines de milliers de répertoires inutiles à parcourir en moins.
A tester : https://www.cjoint.com/c/DKjrlFeD8XI

eric
1
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 213
13 nov. 2014 à 17:46
ok, je met en résolu pour toi (en haut vers ton titre, pour la prochaine fois)
eric
0
ThauTheme Messages postés 1442 Date d'inscription mardi 21 octobre 2014 Statut Membre Dernière intervention 29 juillet 2022 160
4 nov. 2014 à 20:03
Bonsoir Bro, bonsoir le forum,

Ta recherche se fait sur tous les fichiers ou uniquement les fichiers Excel (ou autre) ?
0
Le fichier recherché peut être un document .pdf, .doc ou .docx
0

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

Posez votre question
ThauTheme Messages postés 1442 Date d'inscription mardi 21 octobre 2014 Statut Membre Dernière intervention 29 juillet 2022 160
5 nov. 2014 à 12:10
Bonjour Bro, bonjour le forum,

je pensais te proposer une solution rapidement mais j'ai surestimé mes compétences. Pour le moment je m'y casse les dents et n'y arrive pas... Désolé
0
Bonjour tout le monde,


Je me permet un petit up car j'en ai besoin pour le boulot.


Merci d'avance à ceux qui pourront m'aider.
0
ThauTheme Messages postés 1442 Date d'inscription mardi 21 octobre 2014 Statut Membre Dernière intervention 29 juillet 2022 160
6 nov. 2014 à 16:32
N'attends pas de réponse... Pas d'accord Raymond ! C'est je crois faisable. Le problème est d'aller dans tous les sous-dossiers de chaque dossier/sous-dossier. j'ai bataillé et n'y suis pas arrivé parce que je suis une bille en VBA mais je pense qu'un expert devrait résoudre ça en quelques ligne de code.

Bro, as tu posté sur d'autres forums ?
0
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
10 nov. 2014 à 03:06
ThauTheme, je n'avais pas encore vu ta réponse.
Mais ce que tu dis "je n'y suis pas arrivé... mais je pense qu'un expert devrait résoudre ça en quelques ligne de code" est semblable à ce que j'ai dit "ça n'existe pas ... sauf peut-être par macro". Non ?
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
6 nov. 2014 à 20:00
Cela ouvre une boite de dialogue de choix de fichiers, a mettre dans la feuille concernée:

Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Value = "" Then Exit Sub
Ouverture
End Sub
Private Sub Ouverture()
Dim chemindossier, VoirDossier, DossierChoisi
If Val(Application.Version) >= 10 Then
   With Application.FileDialog(msoFileDialogFolderPicker)
     .InitialFileName = CurDir()
     .Show
     If .SelectedItems.Count > 0 Then
       chemindossier = .SelectedItems(1)
       ChDir chemindossier
     Else
       chemindossier = ""
     End If
   
    End With
  Else
    DossierChoisi = VoirDossier("Choisir le dossier")
    If DossierChoisi <> "" Then
      chemindossier = DossierChoisi
      ChDir DossierChoisi
    End If
    End If
End Sub


0
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 17 094
6 nov. 2014 à 15:26
N'attends pas de réponse : ça n'existe pas ... sauf peut-être par macro !
-2