Attribuer une variable à fichier dynamique

Bonjour à tous,

Je suis débutant sur VBA et dans le cadre de mon travail je dois faire interagir plusieurs feuilles excel entre elles. De par le fait que le nom des fichiers change chaque mois, j’aurai besoin d’attribuer une variable propre a chaque fichier plutôt que les identifier par leurs noms.

Voici plus de détails :

Il y a deux fichiers A,B et C

Dans le cadre du reporting mensuel, le fichier A est statique, dans le cadre où il récupère les données chez B, les compile et le recrache chez C. Ainsi, il récupère les données des mois M-1 et M, et les classe dans deux onglets distincts.

  • Les données du mois M sont issues du fichier B qui est renommé chaque mois (ex : Reporting_mars_2017)
  • Les données du mois M-1 sont issues du mois M à fin de mois (M du mois précédent)

Ci-dessous le code que j’ai utilisé (incomplet) :

MsgBox "VEUILLEZ SELECTIONNER LE FICHIER EFFECTIF DU MOIS M", vbInformation,

chemin = "\\Qf5\ CDG \Suivi Effectifs"

Application.Dialogs(xlDialogOpen).Show (chemin)

'ACTIVATION DU FICHIER

Windows("Effectif_AVRIL_2017.xlsx").Activate

Ce que je recherche exactement c’est comment attribuer un nom d’une variable à un fichier nom déterminer que nous choisissons chaque mois grâce au code ci-dessus.

Je vous remercie par avance.

Bien cordialement,

Bonjour,

Voir code ci-dessous

    Dim fichier_A As Workbook, fichier_B As Workbook
    Dim chemin As String

    MsgBox "VEUILLEZ SELECTIONNER LE FICHIER EFFECTIF DU MOIS M", vbInformation

    Set fichier_A = ThisWorkbook                   'assignation variable objet au classeur A

    chemin = "\\Qf5\ CDG \Suivi Effectifs"
    Application.Dialogs(xlDialogOpen).Show (chemin)
    Set fichier_B = ActiveWorkbook                   'assignation variable objet au classeur B
     fichier_B.Windows(1).WindowState = xlMinimized   'mise en réduction de la fenêtre du classeur B
     fichier_A.Activate                               'activation du classeur A

Bonjour Thev,

Je viens d'essayer le code et ça fonctionne à merveille, merci bien.

Si vous me le permettez, je voudrais savoir comment faire de même avec le fichier C (attribution d'une variable).

Puis-je par exemple faire ouvrir le fichier C (en bout de code) de la même manière que B, puis écrire:

Set fichier_C = ActiveWorkbook 'Assignation variable objet au classeur C

Encore une fois, Merci.

Bien cordialement.

Stan

Mon idée fonctionne, Merci

Stan

Rechercher des sujets similaires à "attribuer variable fichier dynamique"