IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

"Common Dialog" et selection d'un répertoire


Sujet :

Access

  1. #1
    Nouveau membre du Club

    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2003
    Messages : 30
    Points : 30
    Points
    30
    Par défaut "Common Dialog" et selection d'un répertoire
    Bonjours à toutes et tous,

    Je ne parviens pas à parametrer un Common Dialog (VBA Access) de manière à ce qu'il me laisse sélectionner un dossier (directory) au lieu d'un fichier.

    Peut-être quelqu'un peut-il m'aider? Me trompe-je de control?

    Merci à celle ou celui qui m'aidera.

    P.
    Rien n'est plus dangereux qu'une idée quand on a qu'une idée.

  2. #2
    Membre éclairé
    Avatar de shwin
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    568
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Novembre 2003
    Messages : 568
    Points : 777
    Points
    777
    Par défaut
    salut utilise ceci

    dans un module code pour formulaire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Private Sub BtnPath_Click()
    Dim path As String
    path = BrowseDir(Me.hWnd, "Veuillez sélectionner le chemin pour la recherche de 'BDSadcin.mdb'")
    If (path <> "") Then
        edtPath = path
    End If
    End Sub
    dans un module
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    Public Const MAX_PATH = 260
    Public Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long
    Public Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pidList As Long, ByVal lpBuffer As String) As Long
     
    Public Type BrowseInfo
        hwndOwner As Long
        pIDLRoot As Long
        pszDisplayName As Long
        lpszTitle As String
        ulFlags As Long
        lpfnCallback As Long
        lParam As Long
        iImage As Long
    End Type
     
    Public Function BrowseDir(handle As Long, title As String) As String
     
    Dim lResultBrowse   As Long
    Dim lResultGetPath  As String
    Dim path            As String
    Dim brw             As BrowseInfo
     
    With brw
           .hwndOwner = handle
           .lpszTitle = title
           .ulFlags = 1
    End With
     
    lResultBrowse = SHBrowseForFolder(brw)
    If (lResultBrowse) Then 'OK cliqué
        path = String$(MAX_PATH, 0) 'initialise le rep à 0x260
        lResultGetPath = SHGetPathFromIDList(lResultBrowse, path)
     
        If (lResultGetPath) Then 'Aucune erreur
            Dim drv As String
            drv = Mid$(path, 1, InStr(1, path, vbNullChar) - 1) 'supprime les vbnullchar
            If (Right(drv, 1) <> "\") Then
                BrowseDir = drv & "\"
                Else: BrowseDir = drv 'retour du chemin
            End If
     
            Else: BrowseDir = ""
        End If
     
        Else: BrowseDir = ""
    End If
     
    End Function
    Remoting Context Matters
    Everything in this chapter is 100 percent undocumented. Reliance on these techniques is not supported by either Microsoft, the publisher, or the author of this book. Use at you own risk! If your computer won't work afterwards, your toaster blows up or your car doesn't start, I assume no liability whatsoever: You're now about to enter the uncharted territories of .NET and you do so on your own risk. I can only provide some guidance

  3. #3
    Nouveau membre du Club

    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2003
    Messages : 30
    Points : 30
    Points
    30
    Par défaut
    Ok, ca marche. Merci.

    En sus:
    1. comment puis-je faire pour définir un répertoir par défaut.
    2. La routine qui semble ouvrir le dialogue est SHGetPathFromIDList. D'où vient-elle? Quelle librairie?

    Encore merci
    Rien n'est plus dangereux qu'une idée quand on a qu'une idée.

  4. #4
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Shell32.dll
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 13/09/2006, 16h47
  2. [VB6]Common dialog à selection multiple.
    Par méphistopheles dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 09/05/2006, 19h38
  3. Quoi ?! Common Dialog fait crasher DirectDraw ?
    Par Magus (Dave) dans le forum DirectX
    Réponses: 4
    Dernier message: 21/10/2002, 19h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo