Boite de dialogue ouvrir

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

jsl72

XLDnaute Junior
Bonjour,

Inscrit sur forum aujourd'hui.

Mon souhait est de pouvoir ouvrir des fichiers exportés depuis un logiciel exotique (fichiers genre *.txt), mais qui portent l'extension ".trc".
L'objectif est que la boîte de dialogue OUVRIR ne reconnaisse que les fichiers ".trc" et n'ouvre les fichiers que si ils ont l'extension ".trc" et uniquement l'extension ".trc"

Sur le forum j'ai trouvé un code qui a été écrit en 2003 mais qui ne fonctionne pas avec EXCEL 2007.

Merci à ceux qui pourraient m'apporter leur aide.

Code :
Dim Temp As Variant
Temp = Application.GetOpenFilename(fileFilter:=File_Filter, Title:=Phrase)
If Temp = False Or Temp = '' Then
Arret = True
Exit Function ' Si rien quitter
Else ' Sinon ajouter dans le label fichier et repertoire source !
Open_Fichier = Temp
End If
End Function

Pour appeller cette fonction :

Code :
File_Filter = 'Fichier Excel (*.xls), *.xls'
Phrase = 'Choississez le fichier à ouvrir :'
File_T😵pen = Open_Fichier(File_Filter, Phrase)

Bonne soirée.
 
Dernière édition:
Re : Boite de dialogue ouvrir

Bonjour le fil, salut Jsl72

Désolé pour toi, parfois Michel à l'impression que tout le monde connait VBA 🙄

Voici le code dont il parlait
VB:
Sub TRC()
  Dim sChemin As String, sNomFic As String
'
' Initialiser les variables
sChemin = "D:\Dossiers TRC\"
sNomFic = "NomFichier.trc"
' Ouvrir le fichier ".trc" comme un fichier texte
Workbooks.OpenText Filename:=sChemin & sNomFic, Origin:=xlMSDOS, _
  StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
 ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=False, _
 Space:=False, Other:=False, FieldInfo:=Array(1, 1), _
  TrailingMinusNumbers:=True
End Sub

Dans le code il faut remplacer "NomFichier.trc" par le vrai nom de ton fichier

Essaye ça 😉

A+
 
Re : Boite de dialogue ouvrir

Je pense qu'il est bon de rappeler que je n'ai que quelques notions de VBA.

Voici le code dont tu parles?
Sub TRC()
Dim sChemin As String, sNomFic As...

Un peu plus d'explications m'aiderait beaucoup.

Merci de ta compréhension.

Joël.
 
Re : Boite de dialogue ouvrir

Re

Je pense qu'il est bon de rappeler que je n'ai que quelques notions de VBA.

Désolé, mais je pense qu'il aurait été bien de le dire dès le début. Je ne peux pas faire de la formation, ce n'est pas le but d'un forum.

Je te laisse au mains de Bruno, un de nos experts 🙂.

En plus, je dois désormais m'occuper un peu plus de mes développements.

A bientôt 🙂.
 
Re : Boite de dialogue ouvrir

Bonjour Bruno,

J'ai essayé, le code fonctionne, le fichier "nomfichier.trc" s'ouvre impec.

Cependant le code n'offre pas le choix du nom de fichier "nomfichier.trc" , ni du répertoire dans lequel il est enregistré.
Les fichiers .trc peuvent se trouver sur n'importe quel lecteur et porter un nom différent à chaque fois

Merci de ton aide.
@+
Joël
 
Re : Boite de dialogue ouvrir

Michel,

Désolé de t'avoir fait perdre ton temps.
Quand je me suis inscrit sur le forum je n'est pas été mis en garde comme quoi il était réservé à des pros, mais plutôt qu'il permettait de progresser en VBA depuis le plus petit niveau.

Tu pourras remarquer que je t'ai apporté des codes tout fait, à compléter.

Bon week-end
 
Re : Boite de dialogue ouvrir

Re

je n'est pas été mis en garde comme quoi il était réservé à des pros

Non, justement cela n'a rien à voir. Mais si on te met un code et que tu n'essaye pas de comprendre la logique, c'est plutôt la le problème. je t'ai juste montrer comment j'ai fait au départ pour arriver à me débrouiller.

Mais ne perd pas patience, tu n'es pas très loin de solutionner ton problème 🙂.
 
Re : Boite de dialogue ouvrir

Bonjour Bruno,

J'ai essayé, le code fonctionne, le fichier "nomfichier.trc" s'ouvre impec.

Cependant le code n'offre pas le choix du nom de fichier "nomfichier.trc" , ni du répertoire dans lequel il est enregistré.
Les fichiers .trc peuvent se trouver sur n'importe quel lecteur et porter un nom différent à chaque fois

Merci de ton aide.
@+
Joël
 
Re : Boite de dialogue ouvrir

J'ai le code qui permet de conduire jusqu'au fichier à ouvrir voulu.
Il fonctionne très bien.
Le hic c'est que le fichier ne s'ouvre pas

Merci de concentrer vos recherches sur "quoi écrire à la suite" du pour que le fichier s'ouvre


Sub Macro1()

DimstrFileNameAsVariant = Application.GetOpenFilename(filefilter:="Fichier *.trc (*.trc),*.trc", _
Title:="Sélectionnez le fichier à ouvrir")

'si un fichier a été sélectionné, celui-ci est ouvert
If strFileName <> False Then
Workbooks.Open strFileName
End If

Merci par avance.
 
Re : Boite de dialogue ouvrir

Re

Déjà comme cela, ce sera mieux:

Sub Macro1()

Dim strFileName As Variant

stop
strFileName = Application.GetOpenFilename(filefilter:="Fichier *.* (*.*),*.*", _
Title:="Sélectionnez le fichier à ouvrir")

'si un fichier a été sélectionné, celui-ci est ouvert
If strFileName <> False Then
Workbooks.Open strFileName
End If

End Sub

Dim permet de déclarer les variables (Tape F1 en sélectionnant ce mot) et ensuite tu peux aller voir ce qui se passe dans le VBA grâce au stop que j'ai rajouter en tapant F8 pour aller en mode pas à pas. Tu peux cliquer sur le nom (par exemple: strFilmename) pour voir la valeur qu'il prend en langage VBA.
 
Re : Boite de dialogue ouvrir

Michel,

Nous sommes arrivés au but.

La solution résidait dans ces deux mots:
Stop
strFileName

Comme quoi que sur de bonnes fondations on peut construire une belle bâtisse.

MERCI pour ton efficacité.

PROBLEME RESOLU
 
Re : Boite de dialogue ouvrir

Bonsoir,

La réponse définitive pour ceux que ça pourra aider.

Le code:

Code:
'Ouvre uniquement les fichiers .trc
    Dim strFileName As Variant
    strFileName = Application.GetOpenFilename(filefilter:="Fichier *.trc (*.trc),*.trc", _
    Title:="Sélectionnez le fichier à ouvrir")
    If strFileName <> False Then   'si un fichier a été sélectionné, celui-ci est ouvert
    Workbooks.OpenText strFileName, Origin:= _
    xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote _
    , ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:= _
    False, Space:=False, Other:=False, FieldInfo:=Array(1, 1), _
    TrailingMinusNumbers:=True
    Else
    Exit Sub
    End If
 
- 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

Réponses
1
Affichages
681
Réponses
7
Affichages
2 K
Guest
G
J
  • Question Question
Réponses
2
Affichages
1 K
Jean Michel CROQUETTES
J
J
  • Question Question
Réponses
2
Affichages
5 K
Retour