Select type fichiers avec msoFileDialogOpen et Save

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 !

herve62

XLDnaute Barbatruc
Bonsoir
Je cherche la syntaxe dans ce cas pour selectionner à l'ouverture
soit du xls ou du xlsx ci dessous j'ai erreur :

Application.FileDialog(msoFileDialogOpen)
.AllowMultiSelect = False
.Filters.Clear
.Filters.Add "Document Excel", "*.xlsx", "*.xls", 1
 
Dernière édition:
Re : Select type fichiers avec msoFileDialogOpen

Bonjour Hervé

Un exemple issu de l'aide qui est ton ami 🙂:

Code:
Sub UseFileDialogOpen()

    Dim lngCount As Long

    ' Open the file dialog
    With Application.FileDialog(msoFileDialogOpen)
        .AllowMultiSelect = True
                .Filters.Clear
       .Filters.Add "document excel", "*.xls?", 1
       .Show
        ' Display paths of each file selected
        For lngCount = 1 To .SelectedItems.Count
            MsgBox .SelectedItems(lngCount)
        Next lngCount

    End With

End Sub
 
Re : Select type fichiers avec msoFileDialogOpen

Bonsoir
Merci , mais désolé je pige pas ? l'aide ? en + avec 2007 généralement c'est en ligne et on trouve pas
2003 c'était Figé en dur !!!
J'ai trouvé plein de trucs sur le Web ( principalement en anglais mais ca me gêne pas)
sinon c'est toujours UN type , là j'espérai DEUX types à ouvrir : xls OU xlsx
Peut -être ça se fait pas ? ce que je pense !!! mais on sait jamais
 
Re : Select type fichiers avec msoFileDialogOpen

Bonjour
Je vais rebondir avec un cas similaire : la fermeture Enregistrement
J'ai donc testé le "?" pour le filtre multi choix , mais ce qui marche avec l'un ne marche pas forcémént avec l'autre

Juste cette petite Sub , facilement testable en pas à pas

Code:
Private Sub CommandButton1_Click()
Dim nom
Do
        nom = Application.GetSaveAsFilename(InitialFileName:=ActiveWorkbook.Name, filefilter:=" Classeur Microsoft Excel,*[COLOR=#b22222].xls?[/COLOR]", FilterIndex:=2, Title:="Enregistrer Sous")

       If nom = False Then Exit Sub
    Loop Until Dir(nom) = ""
    ActiveWorkbook.SaveAs Filename:=nom
End Sub
J'ai laissé le XLS? qui fait planter
Mon aplli étant pour 2003 ou 2007 et + : il faudrait avoir le choix comme mon message d'hier : XLS ou XLSX
En plus le pire c'est que je viens de tester sous 2007 , un classeur avec cette Sub et enregistrer avec le choix juste XLS ..... et là c'est la Grosse insulte !!! bin oui il faut absolument XLSM
Merci bonne journée
 
Re : Select type fichiers avec msoFileDialogOpen et Save

Re

C'est un peu logique, vu que ? est un caractère générique issu du DOS.

Donc pour enregistrer, je te conseille fortement d'utiliser l'enregistreur de macros pour voir la syntaxe qui peut différer d'une version à l'autre.
 
Re : Select type fichiers avec msoFileDialogOpen et Save

Je cherche quand même de mon côté !!! et encore un site US ou j'ai trouvé et adapté dans mon appli:

Code:
Private Sub Sortie_Click()
'Dim FileSelected As String

FileSelected = Application.GetSaveAsFilename(FileFilter:= _
    "Excel 2007 (*.xlsx)," & "*.xlsx," & _
    "Excel 2003 (*.xls), *xls", FilterIndex:=2, Title:="Enregistrer Sous")
      
  If FileSelected <> False Then

ActiveWorkbook.CheckCompatibility =False

   ActiveWorkbook.SaveAs Filename:=FileSelected
   ActiveWorkbook.Close
    Else
    Workbooks(Nom_fic).Close
 End If

Presta.Hide
Unload Presta
MP.Show 0
End Sub

Donc cela fonctionne bien , par contre j'ai dû supprimer le DIM .... as String car j'avais erreur d'indice de selection au niveau du IF .... FALSE ?

Et le dernier petit truc de FIN !!!! : j'ai ouvert un fic de données en XLS et j'ai essayé de le sauver en XLSX via mon VBA et fermer ... tout va bien
Mais si on reprend ce fichier à part, pour l'ouvrir ( par clic) .... Il m'insulte ??? pourtant comme j'avais trouvé , j'ai ajouté :
ActiveWorkbook.CheckCompatibility =False

Car en direct ca se fige pas définitivement dans Excel; mais même IMPOSSIBLE d'ouvrir le nouveau XLSX ? ( si en renommant xls !!)
 
- 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
5
Affichages
842
Retour