Ouverture fichier Excel depuis Excel

Bonjour à tous,

J'ai une macro qui me sert à ouvrir un fichier excel contant des données, récupérer des informations et les copier sur mon classeur.

MAIS, lors de la recherche de mon fichier dans les méandres de mon poste, la boite de dialogue n'affiche que les fichiers excel enregistré en version 1997 - 2003. ... Seriez-vous d'où cela peut venir ?

Je travaille en excel 2013.

Merci d'avance

Tom

Voici le code d'ouverture du fichier :

Sub extractioncommande()

nom_fichier = ActiveWorkbook.Name    'récupère le nom du classeur  = l'outil de plannification (initialement il s'agit du classeur actif)

' Paramètre la feuille d'extraction suivant quel bouton l'utilisateur à utilisé
If extraType = "AutoCad" Then
    nom_feuille_source = "Commande"
ElseIf extraType = "CTM" Then
    nom_feuille_source = "Demande de materiel"
End If

'(1) ouvre une boite de dialogue permettant d'aller chercher le fichier excel
nom_extra = Application.GetOpenFilename("Fichier Excel (*.xls), *.xls")
 If Len(Replace(nom_extra, ".xls", "")) = Len(nom_extra) Then
     MsgBox "Sélectionnez un fichier au format .xls"
     Exit Sub
 Else
     Set classeur_source = Application.Workbooks.Open(nom_extra)
     Set feuille_source = classeur_source.Worksheets(nom_feuille_source)

    'Recherche des colonnes et lignes des entêtes
    For i = 10 To 200
        For j = 1 To 25
            Select Case feuille_source.Cells(i, j).Value
                Case Is = "Codes"
                    ind_col_c_DM = j 'Normalement cette colonne est = à A = 1
                Case Is = "Désignations"
                    ind_col_d_DM = j 'Normalement cette colonne est = à C = 3
                Case Is = "Quantités"
                    ind_lgn_q_DM = i 'Normalement cette ligne est à = 12
                    ind_col_q_DM = j 'Normalement cette colonne est = à M = 13
                Case Is = "OBSERVATIONS :"
                    ind_lgn_ob_DM = i 'bas de la feuille
                End Select
        Next j
    Next

    nbLignes_DM = ind_lgn_ob_DM - ind_lgn_q_DM

    ReDim matriceDM(nbLignes_DM, 2) As Variant 'matrice à 3 colonnes (codes, libélés et quantités)
    k = 0

    'Copie des code et quantité présent dans la feuille de demande de matériel
    For i = ind_lgn_q_DM + 2 To ind_lgn_q_DM + nbLignes_DM - 2
        If feuille_source.Cells(i, ind_col_q_DM).Value <> "" Then 'si il y a une quantité
            matriceDM(k, 0) = feuille_source.Cells(i, ind_col_c_DM).Value 'code
            matriceDM(k, 1) = feuille_source.Cells(i, ind_col_d_DM + 1).Value 'libélé
            matriceDM(k, 2) = feuille_source.Cells(i, ind_col_q_DM).Value 'quantité
            k = k + 1
        End If
    Next i
 End If
 FichierExtrait = True

Windows(nom_fichier).Activate 'active la feuille FGM
FGM.Activate
UserForm1.Label18.Caption = nom_extra

End Sub

bonjour,

une proposition de correction

nom_extra = Application.GetOpenFilename("Fichier Excel (*.xls*), *.xls*")
 If InStr(nomextra, ".xls") = 0 Then
     MsgBox "Sélectionnez un fichier au format .xls*"
     Exit Sub
     End If

Super au top !

Merci h2so4

Sujet résolu.

Si quelqu'un a une idée pour ça : --> https://forum.excel-pratique.com/post454975.html?hilit=mise%20en%20forme#p454975

Rechercher des sujets similaires à "ouverture fichier"