IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Probleme ouverture fichier avec boite de dialogue


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2012
    Messages : 12
    Par défaut Probleme ouverture fichier avec boite de dialogue
    Bonjour à tous,

    J'ai créé un petit programme qui me permet depuis une boite de dialogue de selectionner un fichier, de réaliser des calculs et de les copier dans mon fichier d'origine.

    Ma boite de dialogue contient 3 boutons :
    • explorer (pour selectionner un fichier comme dans windows)
    • valider (qui permet d'exécuter les macros)
    • fermer (sui femre simplement la boite de dialogue)

    Et 2 afficheurs :
    • textNameMOAP (permet d'afficher le nom du fichier avant de le charger)
    • textboxMOAP (permet d'afficher le chemin du fichier)


    Mon progamme est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    Private Sub cmdValider_Click()
     
        Dim Chemin_Fichier_Modele As String, Chemin_MOAP As String, Chemin_Complet_MOAP As String, Feuille As String
        Dim PlageAT As String
     
     
        ' Chemin du Fichier
     
        Feuille = "MED-FML-2010-000129"
        Chemin_Complet_MOAP = TextBoxMOAP.Text
        Chemin_MOAP = TextNameMOAP.Text
        Chemin_Fichier_Modele = ThisWorkbook.Name
        PlageAT = "AT5:AT1500"
     
        ' Vérifie si un fichier a été choisie
        If TextBoxMOAP.Text = "" Then
            MsgBox "Choisissez un fichier Excel (xlsx ou xlsm)"
            TextBoxMOAP.SetFocus
     
        Else
            ' Désactive le mise à jour de l'écran
            Application.ScreenUpdating = False
     
            Application.DisplayStatusBar = True
     
            Application.StatusBar = "En cours..."
            DoEvents
     
     
     
            ' Montant décidés de l'année en cours
     
            If Month(Now()) = 12 Then
            Range("M23").Formula = "=SUM('" & Chemin_Complet_MOAP & "[" & Chemin_MOAP & "]" & Feuille & "'!" & PlageAT & ")/1000"
            Range("M23").Interior.ColorIndex = 34
            Else
               Range("M23").Interior.ColorIndex = 2
            End If
     
                    Range("M23").Value = Range("M23").Value
     
        Unload Me
        End If
    End Sub
    Et ma macro permettant d'ouvrir l'explorateur de fichier est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    Private Sub cmdExplorerMOAP_Click()
        Dim Fd As FileDialog
        Dim Fdfs As FileDialogFilters
        Dim Plage As Range
        Dim cell As Range
        Dim Name_Fichier As String, i As Integer
     
        ' choix du fichier Excel par l'explorateur
        Set Fd = Application.FileDialog(msoFileDialogOpen)
        Set Fdfs = Application.FileDialog(msoFileDialogOpen).Filters
     
        Fdfs.Clear
        ' ajout de la seule extension Excel
        Set Fdf = Fdfs.Add("All files", "*.xlsm; *.xlsx", 1)
     
        ' récupération du nom et du chemin du fichier sélectionné
        With Fd
            .AllowMultiSelect = False
            If .Show = -1 Then
                Path = .SelectedItems(1)
     
                Name_Fichier = Mid(Path, InStrRev(Path, "\") + 1)
     
                ' MsgBox name_fichier
                TextBoxMOAP.Text = Path
                TextNameMOAP.Text = Name_Fichier
                menu.TextBoxFichierMOAP.Text = Path
     
            Else
            'The user pressed Cancel.
                Exit Sub
            End If
        End With
     
        ' Set Fd = Nothing
     
    End Sub

    1 - Mon premier problème est que l'explorateur me demande à chaque fois de selectionner 2 fois le fichier.

    2 - Mon deuxième souci est que je souhaiterais utiliser la première feuille du classeur que je selectionne et non pas forcer le nom du fichier (ici c'est MED-FML-2010-000129).

    Est ce que quelqu'un pourrait m'éclairer sur ces deux problèmes ?

    Merci et bonne fêtes

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2009
    Messages : 652
    Par défaut
    Bonjour,

    Pour le 1er problème, essayez plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub aa()
    Dim retour As Variant
    retour = Application.GetOpenFilename("Fichiers Excel (*.xlsx; *.xlsm), *.xls; *.xlsm ")
    If retour <> False Then
        MsgBox retour
    End If
    End Sub

  3. #3
    Membre habitué
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Décembre 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2012
    Messages : 12
    Par défaut
    Bonjour et merci,

    J'ai essayé cependant mon problème reste toujours le même.
    Je pense que cela doit être un problème lié à ma variable.
    Je vais creuser...

    Meilleurs Voeux

Discussions similaires

  1. [XL-2013] Ouverture de fichier avec boite de dialogue
    Par pepesese dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 17/09/2014, 18h33
  2. Réponses: 6
    Dernier message: 12/08/2014, 17h06
  3. [XL-2010] Ouverture d'un .xls avec boite de dialogue
    Par francoisclb dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 07/07/2014, 13h57
  4. Pas de fichiers à l'ouverture d'une boite de dialogue
    Par mathrix77 dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 02/02/2008, 00h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo