Contrôle ComboBox
Utilisation de Common Dialog

Le contrôle Common Dialog (avec ShowOpen).Retour au menu Contrôles divers

        Permet de sélectionner un fichier à l'aide d'un Common Dialog.
        Cet exemple montre que l'on a pas besoin d'activer le composant ou
        de placer l'objet dans votre projet.
        On créera l'objet lors du lancement du programme (CreateObject).
        Il faut ajouter la référence Microsoft Forms 2.0 Object Library au projet.
        Ce contrôle est similaire à la commande GetOpenFilename.
        (Pour information et par respect pour les auteurs, c'est suite à une idée
        trouvée sur le site VBFrance.com

        Attention : Après avoir mis en place cette application, il apparaît que
        les PC non équipés de VB6 n'accepte pas ce type de code.

Listing du code

 

Public Const Chemin = "C:\"

Public CheminFichierSélectionné As String

Public CheminFichierSélectionnéShort As String

Public NameSansExtension

Sub OuvreFichier()

  Call SélectionFichier( "xls" , Chemin, "Sélection d'un classeur à ouvrir ..." )

End Sub

Public Function SélectionFichier(Extension As String , DOSSIER As String , TITRE As String )

  CheminFichierSélectionné = ""

  Set ComDlg = CreateObject ( "MSComDlg.CommonDialog" )

  On Error Resume Next

Debut:

  With ComDlg

    .MaxFileSize = 256

    .InitDir = DOSSIER

    .CancelError = True

    .DialogTitle = TITRE

    .Filter = "Fichiers " & Extension & "(*." & Extension & ")|*." & Extension & "|"

    .FilterIndex = 1

    Err.Clear

    .ShowOpen

    If Err.Number <> cdlCancel Then

      If MsgBox( "Vous n'avez pas sélectionné de fichier." & Chr ( 10 ) & "Voulez-vous annuler _
     la sélection ?" , vbYesNo, TITRE) = vbYes Then

        Exit Function

      Else

        GoTo Debut

      End If

    End If

  End With

  CheminFichierSélectionné = ComDlg.Filename

  CheminFichierSélectionnéShort = ShortFilename(CheminFichierSélectionné)

  MsgBox "Le chemin et le fichier sélectionné est : " & CheminFichierSélectionné & vbCr & _

      "Le nom du fichier est : " & CheminFichierSélectionnéShort & vbCr & "Le nom sans _ 

     extension est : " & NameSansExtension, vbInformation + vbOKOnly, "Information de sélection ..."

  Set ComDlg = Nothing

End Function

La fonction ShortFilename

 

Function ShortFilename(LongFilename As String ) As String

  For i = Len (LongFilename) To 1 Step - 1

    If Mid (LongFilename, i, 1 ) = "\" Then Exit For

  Next

  ShortFilename = Mid (LongFilename, i + 1 , Len (LongFilename))

  NameSansExtension = Mid (ShortFilename, 1 , Len (ShortFilename) - 4 )

End Function

La boîte de dialogue de message avec les infos récupérées

Retour au début de document

Retour au début du document