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 :

Variabiliser Nom du fichier


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Biens de consommation

    Informations forums :
    Inscription : Janvier 2019
    Messages : 101
    Par défaut Variabiliser Nom du fichier
    Bonjour à tous,

    J'ai créé un début de macro tel quel:

    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
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Cancel = True
        If ActiveCell.Row = 3 Then
            With Application.FileDialog(msoFileDialogFilePicker)
            .AllowMultiSelect = False
            .Show
            Range("D3") = .SelectedItems(1)
     
            End With
        End If
            If ActiveCell.Row = 4 Then
            With Application.FileDialog(msoFileDialogFilePicker)
            .AllowMultiSelect = False
            .Show
            Range("D4") = .SelectedItems(1)
     
            End With
        End If
    End Sub


    Ainsi que :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub traitement_facturation()
     
    Workbooks.OpenText Filename:=Sheets("Menu").Range("D3")
    Windows("fichier facturation.xlsm").Activate
    Workbooks.OpenText Filename:=Sheets("Menu").Range("D4")
     
     
    End Sub



    Ceci doit me permettre de double cliquer dans les cellules D3 et D4 et d'afficher dans ces cellules le chemin d'accès jusqu'aux fichiers que je souhaite ouvrir avec ma macro. A partir de là, je souhaite copier coller certaines informations contenues dans ces fichiers.

    Voici mon problème :

    Pour aller chercher les infos dans ces deux fichiers, je comptais utiliser "nomfichier.activate". Cependant, comme vous vous en doutez, les chemins d'accès dans les cellules D3 et D4 seront amenés à changer, et le nom des fichiers également.

    Exemple: Aujourd'hui j'ouvre un fichier qui s'appelle "août 2019". Si j'utilise Windows("Août 2019").activate, cela va fonctionner… Mais uniquement pour ce fichier, et non pas pour le suivant (septembre 2019).

    Ainsi, je souhaite variabiliser ma macro afin que celle-ci se positionne sur les fichiers des cellules D3, D4 sans que j'ai à modifier ma macro tous les mois. Je pense que la solution est toute bête, mais là je bloque.

    Est-ce que quelqu'un aurait une petite idée ?

    Bonne journée à tous !

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 171
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Il suffit de construire le nom (Août, Septembre, etc.) dynamiquement avec par exemple la fonction MonthName
    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub t()
      Const ThisMonth As Byte = 8
      MsgBox MonthName(ThisMonth)
    End Sub
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

Discussions similaires

  1. Variabiliser le nom du fichier sortie
    Par selva15 dans le forum Macro
    Réponses: 4
    Dernier message: 26/06/2017, 13h25
  2. Comment récupérer le nom du fichier sans l'extension ?
    Par altahir007 dans le forum Langage
    Réponses: 16
    Dernier message: 13/11/2009, 13h20
  3. Réponses: 2
    Dernier message: 29/01/2004, 11h05
  4. Réponses: 4
    Dernier message: 10/10/2003, 18h04
  5. nom de fichier et variables d'environnement
    Par joebarthib dans le forum Langage
    Réponses: 2
    Dernier message: 18/07/2002, 15h21

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