Rechercher fichier et afficher toutes ses feuilles dans un userform

piga25

XLDnaute Barbatruc
Bonjour le forum,

Toujours dans la poursuite de mon application sur des escrimeurs, j'ai eu plusieurs versions de fichiers.
En tout premier, je créais une feuille pour chaque rencontre, mauvaise idée car cela devenait trop lourd.
J'ai alors changé mon fusil d'épaule, et maitenant j'archives ces rencontres dans une base (une ligne de 300 colonnes) d'ou je peux récupérer mes données pour faire les stats (génial).

Mon souci est comment pouvoir automatiser la récupération de mes anciennes données sur mes anciens fichiers.
La feuille permettant la saisie est pratiquement similaire, juste 4 lignes en plus sur la nouvelle version.
Je pense qu'une partie de la macro2 peut répondre à copier puis à coller ces données.

J'ai bien retrouvé une discussion où Thierry (notre monégasque) me donne un très bon début de piste, mais incomplet pour mon utilisation.
Comme ce sujet a été abordé quelques fois ici, je me suis dit pourquoi ne pas faire un code générique qui permet de rechercher le bon fichier (CommandButton4_Click), là j'y arrive avec l'explorateur windows, mais après je coince totalement.
Mon souhait, si cela est possible, c'est lorsque l'on clique sur le bon fichier (dans l'explorateur) que celui-ci s'affiche dans une TextBox, ce qui permet ensuite de lister dans une ListBox toutes ses feuilles (là le code de thierry le réalise en partie). Puis de choisir de copier soit la feuille (CommandButton1_Click), soit une partie de celle-ci.

Je vous joins le fichier de Thierry où j'ai commencé à modifier et à réaliser des codes (je ne suis pas doué)

En vous remerciant d'avance les bons samaritins du VBA
 

Pièces jointes

  • USF recherche fichier et affiche ses feuilles.xls
    72 KB · Affichages: 64

piga25

XLDnaute Barbatruc
Re : Rechercher fichier et afficher toutes ses feuilles dans un userform

Bonjour,

J'avance un peu dans ma réalisation.
J'ai bien réussi à afficher dans une textbox1 le chemin qui ouvre le fichier et dans la textbox2 le nom de ce fichier.

Par contre dans la listbox1, c'est toujours la liste des feuilles du classeur WB1 (classeur contenant le code) qui s'affiche. Ce que je souhaiterai c'est que ce soit la liste du classuer WB2 (classeur que l'on vient d'ouvrir) qui s'affiche de manière à ce que l'on puisse les choisir et en copier une partie.

Ci joint le fichier
 

Pièces jointes

  • USF recherche fichier et affiche ses feuilles version 2.xls
    68 KB · Affichages: 48

Robert

XLDnaute Barbatruc
Repose en paix
Re : Rechercher fichier et afficher toutes ses feuilles dans un userform

Bonsoir Piga, bonsoir le forum,

Essaie comme ça :
Code:
Sub CommandButton4_Click() 'bouton "Lancer l'explorateur"
NAO = Application.GetOpenFilename
For i = Len(NAO) To 1 Step -1
If Mid(NAO, i, 1) = "\" Then LenDossier = i: GoTo suite
Next
suite:
TextBox1.Value = Mid(NAO, 1, LenDossier - 1)
TextBox2.Value = Mid(NAO, LenDossier + 1, (Len(NAO) + 1) - LenDossier)
NomFichier = TextBox2.Value
Workbooks.Open NomFichier

'***************************************
'affichage des onglet du classeur ouvert
'***************************************

Me.ListBox1.Clear
For Each WS In ActiveWorkbook.Worksheets
If WS.Name <> ("Formulaire") Then
Me.ListBox1.AddItem WS.Name
End If
Next
End Sub
 

piga25

XLDnaute Barbatruc
Re : Rechercher fichier et afficher toutes ses feuilles dans un userform

Bonjour,

Merci Robert, le nom des feuilles s'affiche bien.
Je n'aurai jamais pensé à mettre ces lignes à cet endroit, j'étais persuadé que je devais le faire dans le code CommandButton1_click.

Il me reste maintenant à compléter la procédure pour ne copier qu'une partie des feuilles que je sélectionne dans cette listbox, dans le bon fichier.

Encore une fois merci.
 

Discussions similaires

Réponses
8
Affichages
393

Statistiques des forums

Discussions
312 248
Messages
2 086 595
Membres
103 250
dernier inscrit
keks974