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

Visualisation du contenu de répertoire avec shapes

erics83

XLDnaute Impliqué
Bonjour,

Très intéressé et impressionné par le code de JB dans "
Arborescence des sous-répertoires d'un répertoire avec shapes"

Je souhaitais avoir une petite aide : plutôt que d'avoir des liaisons, utiliser des "pavés". J'avais déjà sollicité le forum sur le sujet, mais l'affichage était sous forme de listbox. N'est il pas possible de le faire sous forme de "pavé", dans le style de menus horizontaux ? (exemple visuel en PJ dans les images) qui serait plus "visuel", surtout lorsqu'il y a plusieurs dossiers et/ou sous-dossiers ?

En vous remerciant pour votre aide,


Résultat code de JB

Résultat recherché :
 
Dernière édition:

erics83

XLDnaute Impliqué
Bonjour,
J'ai oublié de préciser une information importante : les sous dossiers ne se "déploient" que lorsque l'on clique dessus (dans le résultat recherché, le dossier se déploie et le shapes change de couleur (rouge))
Bref, comme dans un menu horizontal dans les pages Web. ..

En vous remerciant pour votre aide,
 

erics83

XLDnaute Impliqué
Merci Paf,
le classeur de JB permet de choisir le répertoire à visualiser, donc on peut prendre comme base le classeur de JB, son code permet de visualiser le contenu du répertoire. c'est le visuel que je souhaite "changer" : utiliser les Shapes et plutôt que de faire des liens, faire des "pavés".....donc les shapes sont remplis avec les noms des dossiers.

Merci Roland_M,
Effectivement votre code est très intéressant (et très complet), mais comme je le soulignais, c'est le visuel que je souhaiterai modifier : mettre sous forme de "pavé" le répertoire, comme un menu déroulant horizontal que l'on peut voir dans les pages web.....

Ce que j'ai essayé de faire (en utilisant paint, car impossible avec mes maigres connaissances en VBA) en mettant en PJ le "résultat recherché"

En vous remerciant pour votre aide,
 

erics83

XLDnaute Impliqué
Bonjour Paf,

Merci pour ce code, vraiment pas si éloigné du souhait et avec un petit côté "sexy" dans la présentation..Impressionnant car très proche de ce que je recherche...! ..En fait, je souhaite juste voir le nom du dossier, j'ai donc fait
Code:
ActiveSheet.Shapes(nom).TextFrame.Characters.Text = SubFolder.Name '& vbLf & vbLf & SubFolder.Path
, mais le code bloque au niveau de
Code:
Set SourceFolder = Fso.GetFolder(Repertoire)
, normal, puisqu'en enlevant le "chemin" il ne trouve pas....j'ai fait plusieurs essais en essayant de mettre
Code:
 repertoire = SubFolder.Name & vbLf & vbLf & SubFolder.Path
par exemple, mais cela ne fonctionne pas et je ne vois pas où je dois indiquer le "chemin" du répertoire....en fait, dans le shapes, il ne faudrait y avoir que le nom du dossier....Je continue de chercher car j'ai vu que JB avait mis en "caché" dans les colonnes A,B,C, etc....les chemins, certainement pour les mêmes raisons qui me bloquent...

Bonjour JB,
Un essai ? une fois de plus, je suis en admiration......Merci pour votre fichier (je ne l'avais pas trouvé....très sincèrement désolé...), j'ai utilisé celui que vous avez mis en lien hypertexte, comment mettre dans le "dernier" shapes le nom des fichiers (avec les liens hypertextes), plutôt que de les mettre dans la colonne A ?
(Par contre le fichier en PJ, n'est pas le même que celui du lien hypertexte, Celui du lien hypertexte correspond à votre photo)

En vous remerciant pour votre aide,
Eric
 
Dernière édition:

Paf

XLDnaute Barbatruc
re et bonjour J.BOISGONTIER

en fait, dans le shapes, il ne faudrait y avoir que le nom du dossier....

En fait, je souhaite juste voir le nom du dossier, j'ai donc fait...

le 'SubFolder.Path' est nécessaire puisqu'il est utilisé lors du clic sur le shape pour aller chercher les sous dossiers. Sans cette information on ne saurait pas à partir de quoi faire la recherche.

Mais de la façon dont il est mis (ActiveSheet.Shapes(nom).TextFrame.Characters.Text = SubFolder.Name & vbLf & vbLf & SubFolder.Path c'est à dire après deux sauts de ligne après le SubFolder.Name) il n'est pas visible dans le shape ? Si ?

A+
 

erics83

XLDnaute Impliqué
Bonjour JB,

Votre fichier fonctionne parfaitement, et une fois de plus, vous avez compris le résultat que je cherchais.....cela fonctionne parfaitement !!

Merci,


Bonjour Paf,
Si, il est visible, mais avec tout le lien : exemple c:/documents/essais eric/Menus, alors que je ne souhaitetrai voir que "Menus" dans le shapes...un peu comme la photo proposée par JB. Le code de JB fonctionne parfaitement (comme d'habitude, j'allais dire...), mais je vous avouerai que j'ai vraiment un petit faible pour vos shapes et votre visuel. Et donc si je pouvais obtenir les "mélange" des deux, cela serait formidable....

Merci pour votre aide,
 
Dernière édition:

Paf

XLDnaute Barbatruc
Re,

Apparemment on n'a pas le même visu. Cf Copie d'écran

Avez vous conservé strictement cette ligne pour rempir les shapes:
ActiveSheet.Shapes(nom).TextFrame.Characters.Text = SubFolder.Name & vbLf & vbLf & SubFolder.Path

peut-être pouvez vous jouer sur la taille des shapes ?

A+
 

Pièces jointes

  • Arboshapes.jpg
    139.2 KB · Affichages: 160

Paf

XLDnaute Barbatruc
re,

une nouvelle version qui affiche la liste des fichiers du répertoire sélectionné.
Enfin .... presque....
S'il n'y a qu'une dizaine de fichiers, l'affichage dans le shape est correct.
Au delà, le shape est bien redimensionné , la variable contenant les noms de fichiers est bien renseignée, mais le shape reste vide ... ???

Et c'est rapide ...(s'il n'y avait pas ce souci...!)

A+
 

Pièces jointes

  • arbo shape V2.xls
    54 KB · Affichages: 56

erics83

XLDnaute Impliqué
merci Paf,

Effectivement, je l'ai testé sur un autre ordinateur et.....votre code fonctionne....excusez moi pour la remarque de mon précédent post...ou alors, à force de faire des essais, cela provoquait ce bug.....
Par contre, serait-il possible d'avoir les noms des fichiers et un lien hypertexte (comme dans le cas de JB, dans sa dernière photo, cf la colonne F) ?

En vous remerciant par avance,
 

erics83

XLDnaute Impliqué
Merci Paf,

Nos post se sont croisés....j'ai essayé le V2 et visuellement, c'est vraiment très sympa et rapide...Je vais certainement modifier dans le code la couleur de la police(ça fait 1h que j'essaye sans succès, je n'arrive pas à trouver la formulation (.text.color= etc....dans le shape) , car le blanc sur jaune clair n'est pas très visible et essayer de centrer le texte à l'intérieur du shapes (idem que pour la couleur de la police, je n'arrive pas à trouver la "bonne" formulation...)
Par contre, la flèche faisant le lien avec les fichiers est très très sympa et visuelle , bravo pour cette idée !!!
Pour les liens hypertextes, j'ai essayé 2-3 trucs, mais je ne suis pas arrivé à les créer dans le shape....par contre, je n'ai vu/eu le souci avec le shapes vide...

merci pour votre aide,
A+
 
Dernière édition:

Paf

XLDnaute Barbatruc
re

la police vous apparait en blanc ? bizarre, chez moi c'est noir . Peut-être un paramétrage Excel différent ?

une ultime (?) version qui affiche les noms de fichiers en lien hypertexte.
Police de caractères noire et nom des répertoires centrés.

A+
 

Pièces jointes

  • arbo shape V3.xls
    62 KB · Affichages: 53

erics83

XLDnaute Impliqué
Bonjour Paf,

Effectivement, cela doit être un problème de paramétrage....mais j'ai résolu en "imposant" le format et en mettant
Code:
 .TextFrame2.VerticalAnchor = msoAnchorMiddle
        .TextFrame2.HorizontalAnchor = msoAnchorNone
        .TextFrame2.TextRange.Font.Fill.Visible = msoTrue
        .TextFrame2.TextRange.Font.Fill.ForeColor.RGB = RGB(0, 0, 0)
        .TextFrame2.TextRange.Font.Fill.Transparency = 0
        .TextFrame2.TextRange.Font.Fill.Solid

Par contre, j'ai galéré sur les liens Hypertextes....et je vois que vous avez résolu le problème....par contre, il en génère un autre : lorsque dans mon répertoire, j'ai des fichiers, les liens hypertextes se font, mais sont masqués par les sous dossiers :



En vous remerciant pour votre aide,
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…