[vba] ouvrir un classeur

Résolu
fjefflu Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   -  
 Utilisateur anonyme -
Bonjour,
Encore une fois j'ai besoin de votre aide,cette fois ci je suis confronté à un problème d'ouverture de classeur,je souhaiterai ouvrir un classeur avec "Getopenfilename" par exemple ,mais je souhaiterai indiquer le répertoire ou se trouvent les fichiers ,j'utilise déja une macro d'ouverture mais elle ne semble pas adaptée à mon besoin,avec" filesearch" on peut indiquer "lookin",mais je n'arrive pas à trouver d'équivalent avec "getopenfile".
Merci d'avance

6 réponses

Utilisateur anonyme
 
Bonjour,

Autre suggestion :

Sub OuvrirClasseur()

    Dim strFichier As String
    
    ChDrive ("C:")
    ChDir "\Dossier\Excel\"
    
    strFichier = Application.GetOpenFilename("Excel Files (*.xls), *.xls")
    If (strFichier <> "") Then
        If (strFichier <> "Faux") Then
            MsgBox strFichier
        End If
    End If

End Sub
'

Lupin
5
dandypunk Messages postés 832 Date d'inscription   Statut Membre Dernière intervention   83
 
Désolé pas d'idée
2
dandypunk Messages postés 832 Date d'inscription   Statut Membre Dernière intervention   83
 
Essayes
Workbooks.open Filename:="NomDuClasseur"
1
fjefflu Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   1
 
Le problème ,je me suis mal exprimé ,c'est qu'il s'agit d'ouvrir la boite de dialogue "ouvrir" déja "positionnée" sur le bon repertoire et que la personne puisse choisir un des classeurs présent dans ce repertoire.
1

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

Posez votre question
le père
 
Bonjour

Application.Dialogs(xlDialogOpen).Show repertoire$
1
Zoltar
 
Bonjour,

J'ai eu le même problème et utilisé la fonction suivante :

Application.Dialogs(xlDialogOpen).Show ("C:\Repertoire\")

Pour info, dans mon cas, j'ai ajouté une attente de réponse qui permet de sortir de la procédure si l'utilisateur décide d'annuler la boite de dialogue "ouvrir"...

Ca donne (après avoir déclaré Reponse en byte) :

Reponse = Application.Dialogs(xlDialogOpen).Show("C:\Repertoire\sous-repertoire\...\")
If Reponse = 0 Then
Exit Sub
End If
1