Ouvrir dossier en fonction liste déroulante

pierre31270

XLDnaute Junior
Bonjour bonjour!!! :D

Je cherche à ouvrir un dossier en fonction du clic dans une liste déroulante.

Etant donné que la liste déroulante donne une valeur à une case liée.
J'ai fait une recherchev à partir de cette valeur: en case AB4 donne le nom de la personne qui pratique.
La case AB2 donne la catégorie de sport que pratique la personne.

Sur la liste déroulante, il y a le nom des personnes, je souhaiterais que lorsqu'on clique sur le nom d'une personne dans cette liste s'ouvre le répertoire contenant les infos (sous forme de fichiers divers) de cette personne.
Par ex que s'ouvre le dossier de Mike Jordan: C:\Users\pierre\Documents\sport\classement\Basket\Mike JORDAN

Ce code marche mais il ouvre "Documents" sans aller au-delà. Si quelqu'un aurait une solution s'il vous plait cela serait super. :)

D'avance merci! ;)


Code:
Sub test()
Dim Chemin$, CheminVariable$
Chemin = "C:\Users\pierre\Documents\sport\classement\"
CheminVariable = Sheets("Personnel").Range("AB2") & "\" & Sheets("Personnel").Range("AB4")
Shell "C:\Windows\Explorer.exe Chemin & CheminVariable"
End Sub
 

skoobi

XLDnaute Barbatruc
Re : Ouvrir dossier en fonction liste déroulante

Bonjour Pierre,

au premier cout d'œil je dirais qu'il y a un "\" de trop ici:

Code:
CheminVariable = Sheets("Personnel").Range("AB2") [COLOR=Red][B]& "\"[/B][/COLOR] & Sheets("Personnel").Range("AB4")
car il se trouve déjà là:

Code:
Chemin = "C:\Users\pierre\Documents\sport\classement[COLOR=Lime][B]\[/B][/COLOR]"
 
Dernière édition:

pierre31270

XLDnaute Junior
Re : Ouvrir dossier en fonction liste déroulante

Bonjour Skoobi,

Je te remercie de t'être penché dessus. J'ai supprimé la parenthèse mais cela ne change rien, il m'apparait le dossier "Documents", c'est assez étrange.

En y repensant il faut cette parenthèse puisque AB2 est la cellule qui correspond au type de sport et AB4 au nom de la personne, cela devrait m'ouvrir, si AB2="Basket" et AB4="Mike JORDAN" le dossier "C:\Users\pierre\Documents\sport\classement\Basket\Mike JORDAN"

J'avoue que je ne saisie pas :(

Si tu as une autre suggestion, elle est bien évidemment la bienvenue:eek:
 
Dernière édition:

pierre31270

XLDnaute Junior
Re : Ouvrir dossier en fonction liste déroulante

Bonjour Fhoest,

je te remercie de bien vouloir m'aider mais je ne cherche pas à ouvrir un fichier mais bel et bien un dossier qui contient toutes les infos sur des sportifs sur divers documents .pdf, .xlsx, .docx (je sais comment ouvrir les pdf et xlsx mais par contre si tu as une idée pour ouvrir les docx, je suis preneur car j'arrive à les ouvrir mais uniquement dans Excel et pas dans Word).

Si tu peux m'éclairer, ça serait sympa ;)
 
Dernière édition:

fhoest

XLDnaute Accro
Re : Ouvrir dossier en fonction liste déroulante

bonjour,
voici un code essai
Sub test()
Dim Chemin$, CheminVariable$
Chemin = "C:\Users\pierre\Documents\sport\classement\"
CheminVariable = Sheets("Personnel").Range("AB2") & "\" & Sheets("Personnel").Range("AB4")
Chemin = Chemin & CheminVariable
Shell "explorer /e," & """" & Chemin & """", vbNormalFocus
'Shell "C:\Windows\Explorer.exe Chemin & CheminVariable"
End Sub
pour le fichier word j'ai aussi quelques choses je te l'enverrai apres
 

fhoest

XLDnaute Accro
Re : Ouvrir dossier en fonction liste déroulante

remoi,
voici le code pour word:
Sub ouvertureword()
Dim strFichier As String
strFichier = chemin
Dim objWord As New Word.Application
''ouvrir un document Word
''On Error Resume Next
objWord.Documents.Open strFichier
'rendre Word visible
objWord.Visible = True
'objWord.Documents(1).Close
'quitter l'application Word
'objWord.Quit
'libérer la mémoire
Set objWord = Nothing
End Sub
A+
 

pierre31270

XLDnaute Junior
Re : Ouvrir dossier en fonction liste déroulante

Woaw génial ça marche! Merci beaucoup
Comment ça se fait que ça marche, c'est l'instruction qui est donnée différemment non ?

Quand tu auras le temps pour word en .docx ça serait doublement génial.
Je te remercie encore
Pierre
 

pierre31270

XLDnaute Junior
Re : Ouvrir dossier en fonction liste déroulante

Arf tu m'as devancé ^^

J'ai une erreur ici:
Dim objWord As New Word.Application

Si c'est pour ouvrir un fichier word par ex dont le chemin d'accès est variable ça serait...:
Code:
Sub test()
Dim Chemin$, CheminVariable$
Chemin = "C:\Users\pierre\Documents\sport\classement\"
CheminVariable = Sheets("Personnel").Range("AB2") & "\" & Sheets("Personnel").Range("AB4")
Open ou Shell ?? Chemin & CheminVariable & Sheets("Personnel").Range("AB4") & ".docx"
End Sub

non?
 

fhoest

XLDnaute Accro
Re : Ouvrir dossier en fonction liste déroulante

rebonjour le fil
Sub ouvertureword()
Dim strFichier As String
strFichier = Chemin & CheminVariable & Sheets("Personnel").Range("AB4") & ".docx"

Dim objWord As New Word.Application
''ouvrir un document Word
''On Error Resume Next
objWord.Documents.Open strFichier
'rendre Word visible
objWord.Visible = True
'objWord.Documents(1).Close
'quitter l'application Word
'objWord.Quit
'libérer la mémoire
Set objWord = Nothing
End Sub
tout simplement
 

Discussions similaires

Statistiques des forums

Discussions
312 613
Messages
2 090 231
Membres
104 454
dernier inscrit
alaindeloin.1976