Choix de fichier

Le
Manu
Bonsoir,

J'ai dans un dossier C:Rapport des fichiers qui se nomment ainsi :
Rapport 01-2011.xls
Rapport 02-2011.xls
Rapport 03-2011.xls
etc.

Est t'il possible dans une macro qu'il me fasse choisir celui que je veux
ouvrir soit 01-2011 ou 02-2011 etc.. afin que ma procedure puisse
continuer avec le fichier que j'aurais choisis.

Merci

Manu
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jacky
Le #23251441
Bonsoir,

En adaptant le chemin exact
Ceci peut-être
'-----------------
Sub jj()
ChDrive "c:"
ChDir "c:Rapport" ' a adapter
fichier = Application.GetOpenFilename("(*.xls), *.xls")
If fichier = False Then Exit Sub
MsgBox "Ouvrir " & fichier '***supprimer après text
'Workbooks.Open Filename:=fichier '** Valider après test
' Suite de la macro
'--------
'--------
End Sub

'----------------------

--
Salutations
JJ


"Manu" 4d960350$0$5430$

Bonsoir,

J'ai dans un dossier C:Rapport des fichiers qui se nomment ainsi :
Rapport 01-2011.xls
Rapport 02-2011.xls
Rapport 03-2011.xls
etc....

Est t'il possible dans une macro qu'il me fasse choisir celui que je veux ouvrir soit 01-2011 ou 02-2011
...etc.. afin que ma procedure puisse continuer avec le fichier que j'aurais choisis.

Merci

Manu

MichD
Le #23251431
Bonjour,

Copie ce qui suit dans un module standard et tu
adaptes la valeur de la variable CheminEtTypeFichier au besoin.


'------------------------------------------
Sub test()
Dim CheminEtTypeFichier As String, Fichier As String

'Le chemin et le début du nom du classeur
CheminEtTypeFichier = "C:*2011.xls*"

Fichier = BrowseFile(CheminEtTypeFichier)
If Fichier = "" Then
MsgBox "Aucune sélection a été effectuée."
Exit Sub
Else
MsgBox "Nom du fichier sélectionné : " & Fichier
End If
'la suite de ta macro
End Sub

'------------------------------------------
Function BrowseFile(CheminEtTypeFichier) As String
With Application.FileDialog(msoFileDialogFilePicker)
'Définit un titre pour la boîte de dialogue
.Title = "Choisir le fichier BASE DE DONNÉES EXCEL"
'Empêcher la multi-sélection
.AllowMultiSelect = False
'Répertoire par défaut suivi du type de fichier par défaut
.InitialFileName = CheminEtTypeFichier
'Efface les filtres existants.
.Filters.Clear
'Définit une liste de filtres pour le champ "Type de fichiers".
.Filters.Add "Classeurs Excel", "*.xls; *.xlsx; *.xlsm"
'Définit le filtre qui s'affiche par
'défaut dans le champ "Type de fichiers "."
.FilterIndex = 1
'Indique le type d'affichage dans la boîte de dialogue
'(exemple visualisation des propriétés)
.InitialView = msoFileDialogViewProperties
'Affiche la boîte de dialogue
.Show
If .SelectedItems.Count > 0 Then
BrowseFile = .SelectedItems(1)
Else
BrowseFile = ""
End If
End With
End Function
'-------------------------------------------





MichD
--------------------------------------------
"Manu" a écrit dans le message de groupe de discussion : 4d960350$0$5430$


Bonsoir,

J'ai dans un dossier C:Rapport des fichiers qui se nomment ainsi :
Rapport 01-2011.xls
Rapport 02-2011.xls
Rapport 03-2011.xls
etc....

Est t'il possible dans une macro qu'il me fasse choisir celui que je veux
ouvrir soit 01-2011 ou 02-2011 ...etc.. afin que ma procedure puisse
continuer avec le fichier que j'aurais choisis.

Merci

Manu
isabelle
Le #23251461
bonjour Manu,

Sub test()
Fichier = ChoixFichier("C:Rapport")
If Fichier = Empty Then
Exit Sub
Else
MsgBox Fichier
End If
End Sub

Function ChoixFichier(chemin As String)
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
.Filters.Clear
.Filters.Add "Excel", "*.xls", 1
.InitialFileName = chemin & "*.xls"
.AllowMultiSelect = False 'empecher la selection multiple
.Show 'afficher la boite de dialogue
On Error Resume Next 'au cas ou aucun Fichier n'est sélectionner
ChoixFichier = .SelectedItems(1)
Err.Clear
End With
End Function

isabelle
------------------------------------------------------------------

Le 2011-04-01 12:54, Manu a écrit :
Bonsoir,

J'ai dans un dossier C:Rapport des fichiers qui se nomment ainsi :
Rapport 01-2011.xls
Rapport 02-2011.xls
Rapport 03-2011.xls
etc....

Est t'il possible dans une macro qu'il me fasse choisir celui que je veux
ouvrir soit 01-2011 ou 02-2011 ...etc.. afin que ma procedure puisse
continuer avec le fichier que j'aurais choisis.

Merci

Manu



MANU
Le #23251501
Merci à vous 3, c'est exactement ce qu'il me faut

Manu

"isabelle" in5496$b9v$
bonjour Manu,

Sub test()
Fichier = ChoixFichier("C:Rapport")
If Fichier = Empty Then
Exit Sub
Else
MsgBox Fichier
End If
End Sub

Function ChoixFichier(chemin As String)
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
.Filters.Clear
.Filters.Add "Excel", "*.xls", 1
.InitialFileName = chemin & "*.xls"
.AllowMultiSelect = False 'empecher la selection multiple
.Show 'afficher la boite de dialogue
On Error Resume Next 'au cas ou aucun Fichier n'est sélectionner
ChoixFichier = .SelectedItems(1)
Err.Clear
End With
End Function

isabelle
------------------------------------------------------------------

Le 2011-04-01 12:54, Manu a écrit :
Bonsoir,

J'ai dans un dossier C:Rapport des fichiers qui se nomment ainsi :
Rapport 01-2011.xls
Rapport 02-2011.xls
Rapport 03-2011.xls
etc....

Est t'il possible dans une macro qu'il me fasse choisir celui que je veux
ouvrir soit 01-2011 ou 02-2011 ...etc.. afin que ma procedure puisse
continuer avec le fichier que j'aurais choisis.

Merci

Manu



Publicité
Poster une réponse
Anonyme