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

Afficher des fichiers avec le formulaire

  • Initiateur de la discussion Initiateur de la discussion Lone-wolf
  • 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 !

Lone-wolf

XLDnaute Barbatruc
Bien le bonjour a ceux qui sont en ligne.

Suite aux divers liens que l'on m'a proposé, j'ai trouvé un formulaire qui permet d'afficher dans une ListBox tous les types de fichiers.

L'incovenient c'est que, au travers de celle-ci, on ne peu pas ouvrir les fichiers.
C'est ce que je recherche.

Vous voudriez bien regarder le classeur?

Merci beaucoup
 

Pièces jointes

Dernière édition:
Re : Afficher des fichiers avec le formulaire

Bonjour Lone-wolf, le forum,

L'une ou l'autre de ces 2 macros dans le code de l'UserForm :

Code:
Private Sub ListBox1_[COLOR="red"]Click[/COLOR]() 'simple clic
SendKeys "o" 'ou "y" sur version anglaise, évite l'alerte...
ThisWorkbook.FollowHyperlink ListBox1.List(ListBox1.ListIndex)
End Sub

Code:
Private Sub ListBox1_[COLOR="Red"]DblClick[/COLOR](ByVal cancel As MSForms.ReturnBoolean) 'double-clic
SendKeys "o" 'ou "y" sur version anglaise, évite l'alerte...
ThisWorkbook.FollowHyperlink ListBox1.List(ListBox1.ListIndex)
End Sub

La méthode FollowHyperlink permet d'ouvrir un fichier quelle que soit son extension.

A+
 
Dernière édition:
Re : Afficher des fichiers avec le formulaire

Re,

Pour éviter de rouvrir Excel quand il s'agit d'un fichier Excel, utiliser plutôt :

Code:
Private Sub ListBox1_Click() 'simple clic
Dim txt$
txt = ListBox1.List(ListBox1.ListIndex)
If txt Like "*xls" Or txt Like "*xlsx" Or txt Like "*xlsm" Then
  Workbooks.Open txt
Else
  SendKeys "o" 'ou "y" sur version anglaise, évite l'alerte...
  ThisWorkbook.FollowHyperlink txt
End If
End Sub

Code:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean) 'double-clic
Dim txt$
txt = ListBox1.List(ListBox1.ListIndex)
If txt Like "*xls" Or txt Like "*xlsx" Or txt Like "*xlsm" Then
  Workbooks.Open txt
Else
  SendKeys "o" 'ou "y" sur version anglaise, évite l'alerte...
  ThisWorkbook.FollowHyperlink txt
End If
End Sub

A+
 
Re : Afficher des fichiers avec le formulaire

Bonjour Job

Sur les deux codes il y a une flèche jaune qui s'affiche sur cette ligne

ThisWorkbook.FollowHyperlink ListBox1.List(ListBox1.ListIndex)


ThisWorkbook, ne fais pas référence au classeur?
 
Re : Afficher des fichiers avec le formulaire

Re,

Bien sûr je n'ai pas ce problème sur Excel 2003 (je teste toujours mes codes)...

Alors essayez de remplacer ListBox1.List(ListBox1.ListIndex) par ListBox1.List(ListBox1.ListIndex, 0)

Et dites-nous.

Nota : ThisWorkbook c'est le classeur contenant la macro.

A+
 
Re : Afficher des fichiers avec le formulaire

Re,

Essayez peut-être (dernière chance, après j'abandonne) :

Code:
Private Sub ListBox1_Click() 'simple clic
Dim txt$
txt = [COLOR="Red"]TextBox1 & "\" &[/COLOR] ListBox1.List(ListBox1.ListIndex, 0)
If txt Like "*xls" Or txt Like "*xlsx" Or txt Like "*xlsm" Then
  Workbooks.Open txt
Else
  SendKeys "o" 'ou "y" sur version anglaise, évite l'alerte...
  ThisWorkbook.FollowHyperlink txt
End If
End Sub

Code:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean) 'double-clic
Dim txt$
txt = [COLOR="red"]TextBox1 & "\" &[/COLOR] ListBox1.List(ListBox1.ListIndex, 0)
If txt Like "*xls" Or txt Like "*xlsx" Or txt Like "*xlsm" Then
  Workbooks.Open txt
Else
  SendKeys "o" 'ou "y" sur version anglaise, évite l'alerte...
  ThisWorkbook.FollowHyperlink txt
End If
End Sub

Pour répondre à votre question sur le type de fichier, j'ai écrit dans mon 1er post :

La méthode FollowHyperlink permet d'ouvrir un fichier quelle que soit son extension.

A+
 
Re : Afficher des fichiers avec le formulaire

Tout simplement génial!!! Chapeau bas.

Cette fois ça marche, essais avec fichiers doc et images.

Juste SendKeys à enlever, il affichais un o sur les documents Word.

Merci infiniment Job.

Je remet le classeur au cas ou...
 

Pièces jointes

Dernière édition:
Re : Afficher des fichiers avec le formulaire

Re,

Juste une chose encore.

Si avant de cliquer dans la ListBox on modifie ou efface la TextBox, il y aura une erreur.

On peut alors écrire :

Code:
Private Sub ListBox1_Click() 'simple clic
Dim txt$
[COLOR="Red"]On Error Resume Next[/COLOR]
txt = TextBox1 & "\" & ListBox1.List(ListBox1.ListIndex, 0)
If txt Like "*xls" Or txt Like "*xlsx" Or txt Like "*xlsm" Then
  Workbooks.Open txt
Else
  SendKeys "o" 'ou "y" sur version anglaise, évite l'alerte...
  ThisWorkbook.FollowHyperlink txt
End If
[COLOR="red"]If Err Then MsgBox "Vous avez modifié la TextBox !"[/COLOR]
End Sub

Code:
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean) 'double-clic
Dim txt$
[COLOR="Red"]On Error Resume Next[/COLOR]
txt = TextBox1 & "\" & ListBox1.List(ListBox1.ListIndex, 0)
If txt Like "*xls" Or txt Like "*xlsx" Or txt Like "*xlsm" Then
  Workbooks.Open txt
Else
  SendKeys "o" 'ou "y" sur version anglaise, évite l'alerte...
  ThisWorkbook.FollowHyperlink txt
End If
[COLOR="red"]If Err Then MsgBox "Vous avez modifié la TextBox !"[/COLOR]
End Sub

A+
 
Re : Afficher des fichiers avec le formulaire

Et bien, logiquement on ne vas pas cliquer dans la ListBox si il n'y à rien.

En test, j'ai ouvert le classeur contenant les fichiers .doc, sélectionné deux fichiers (un après l'autre bien entendu). Ensuite tout en gardant ceux-ci dans la List, j'ai ouvert un dossier contenant des images; il n'y a pas u de bugs.
 
Re : Afficher des fichiers avec le formulaire

Merci de me venir en aide j'ai vu le fichier :
USF-Gestion-Base -de-données.xls
C’est super jusque ce qu'il me faut.
Il faudrait faire quelques modifications
à savoir mon fichier Excel contient 30 colonnes mais peut contenir 40 colonnes
et il est sur plus de 1500 lignes. Mon objectif est de pourvoir consulter les infos directement à l'écran sans jouer avec les ascenseurs horizontaux et faire des modifs comme ton fichier
Si tu peux modifier ce formulaire et m’expliquer comment tu as fait et comment le modifier ultérieurement
Cela ma sauverez la vie…
voici le lien :

https://www.excel-downloads.com/thr...nees-ajout-modif-supress-en-un-seul-usf.9541/
 
- 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

Discussions similaires

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