Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

arbo depuis combos (Résolu)

  • Initiateur de la discussion Initiateur de la discussion misteryann
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

misteryann

XLDnaute Occasionnel
Bonjour au EXCELlents forumeurs.
J'ai remis mon costume de scénariste et je cherche un réalisateur.
Voilà le truc:
J'ai une USF avec 3 combos
La première choisi le dossier du répertoire dans lequel se trouve mon fichier Excel;
La deuxième choisi le sous dossier;
La troisième donne les fichiers du sous répertoire;
Le bouton ouvrir doit ouvrir le fichier pdf correspondant.

Bien sûr le nombre de dossiers, sous dossiers et fichier est évolutif, sinon ce ne serai pas marrant.

J'espère que je suis assez compréhensible... le fichier joint pour voir ce que je souhaite...

Merci à celles et ceux qui vont se pencher dessus.
Cordialement
 

Pièces jointes

Dernière édition:
Re : ouverture d'un pdf après choix dans 3 combo

Je suis un noob avec plein d'idées.
Aussi un code + un code + ... = ce que je souhaite.
Je suis passé du BASIC d'il y a 30 ans au VBA... ;-)
 
Re : ouverture d'un pdf après choix dans 3 combo

Remarque: je n'ai pas encore ouvert votre fichier, je propose juste un truc de remplacement très simple.
Essayez cette procédure et voyez si votre Userform est encore nécessaire :
VB:
Sub Test()
Dim ChNomFic
ChDrive ThisWorkbook.Path
ChDir ThisWorkbook.Path
ChNomFic = Application.GetOpenFilename("Fichier PDF,*.pdf", Title:="Ouverture d'un fichier PDF")
If VarType(ChNomFic) = vbString Then
   MsgBox ChNomFic, vbInformation, "Test"
Else
   MsgBox "Aucun fichier sélectionné", vbCritical, "Test"
   End If
End Sub
 
Re : ouverture d'un pdf après choix dans 3 combo

pour vous aider donc

lancer mon fichier xlsm

appuyez sur les touches Alt + F11 qui vous amène à l’éditeur VBE

à gauche il y a écrit module 1 et module 2

double cliquez sur module 1

à droite maintenant il y a un code

ce qui est écrit en vert son des annotations

mais il y à "C:\Users\########\Documents" c'est le chemin remplacez les ####### par le nom de de l'utilisateur de votre PC

vérifiez aussi si c'est bien le chemin de Acrobat reader (si c'est ce programme que vos utilisez pour ouvrir les PDF ;-)))

une fois ça fait revenir à excel petit bouton vert dans le menu

puis cliquez sur le bouton lancez moi
 
Re : ouverture d'un pdf après choix dans 3 combo

Merci Bernard, merci Gilbert.
Je suis un noob avec plein d'idées.
je le redis sans honte. Mais ne maîtrise pas le VBA ;-)
Par contre, une appli avec " méthode GetOpenFilename de l'objet Application " me parlera plus.
Désolé, je n'ai pas la logique du VBA.
Je joints de nouveau le fichier avec explication dans la USF.
Merci pour votre attention.
 

Pièces jointes

Re : ouverture d'un pdf après choix dans 3 combo

Salut, est-ce que cela t'aidera : Visualisation d'un fichier PDF dans une UserForm

Il faut avoir installé Acrobat Reader ( gratuit )

Remarque annexe : le code de ce post à l'avantage de supprimer l'apparition du message suivant : "Cette application est sur le point d'initialiser des contrôles ActiveX potentiellement non sûrs."

Créer une UserForm
dans UserForm placer le code suivant

Code:
Option Explicit
 
Private Sub UserForm_Initialize()
    With UserForm1
        .Height = 600
        .Width = 600
    End With
End Sub

Dans un module Standard placer le code ci-dessous
puis affecter un bouton à la procédure SelFichierPDF

Code:
Option Explicit
 
Private Sub LoadPDF(ByVal sNomFichier As String, iNumPage As Long)
Dim oPDF As Object
 
    Set oPDF = UserForm1.Controls.Add("AcroPDF.PDF.1", "DisplayPDF")
 
    With UserForm1.Controls("DisplayPDF")
        .Height = UserForm1.Height - 20
        .Width = UserForm1.Width - 5
        .Visible = True
    End With
 
    With oPDF
        '   Nom fichier
        .src = sNomFichier
        .setShowScrollbars True
        '   Barre d'outils
        .SetShowToolbar True
        '   none bookmarks thumbs
        .setPageMode "bookmarks"
        '   DontCare SinglePage OneColumn TwoColumnLeft TwoColumnRight
        .setLayoutMode "SinglePage"
        '  page affichée
        .setCurrentPage iNumPage
        '   Fit FitH FitV FitB FitBH FitB
        .setView "Fit"
        '   Zoom
        .setZoom 58
    End With
 
    UserForm1.Show
    Set oPDF = Nothing
End Sub
 
Sub SelFichierPDF()
Dim Fichier As Variant
    ChDir ThisWorkbook.Path
    Fichier = Application.GetOpenFilename("Fichiers PDF (*.pdf), *.pdf")
    If Fichier = False Then Exit Sub
    DoEvents
    LoadPDF Fichier, 1
End Sub
 
Dernière édition:
Re : ouverture d'un pdf après choix dans 3 combo

Merci Kiki29.

Mais je ne vois toujours pas comment utiliser ma USF.
Je ne cherche pas à ouvrir un pdf dans ma USF mais à ouvrir un pdf via les combos de ma USF : cb1 liste des dossiers (contenus dans le même répertoire que le xls), cb 2: liste des sous dossiers. cb 3 liste des pdf présents dans le sous dossier
"image1" sera là uniquement affiliée à ma recherche.

Merci pour l'intérêt porté.
Cordialement.
 
Dernière édition:
Re : ouverture d'un pdf après choix dans 3 combo

Bonjour à tous
un petit progrès dans le fichier.
La première combo se remplie bien.
C'est la deuxième qui pose problème (celle qui doit permettre le choix du pdf)
Si quelqu'un a une idée...
Cordialement
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…