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 :

VBA et fichier ouvert


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2003
    Messages : 21
    Par défaut VBA et fichier ouvert
    Bonjour,

    Dans un fichier Excel (appelé résumé.xlsm), je fais un résumé d'autres fichiers Excel. Je n'ouvre qu'un fichier à la fois. Donc, j'ouvre test1.xlsx puis résumé.xlsm. Je lance ma macro qui va copier des éléments de test1 dans résumé. Puis je ferme test1 et j'ouvre test2. Mon problème: identifier le fichier test1 dans la macro, puis test2.
    Voici mon code:

    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
    Sub Macro2()
    '
    ' Macro2 Macro
    '
    Dim wb As Workbook
    Set wb = Workbooks(1)
     
        Application.ScreenUpdating = False
        ActiveCell.FormulaR1C1 = "=[wb]Feuil1!R1C1"
        ActiveCell.Offset(0, 1).Range("A1").Select
        ActiveCell.FormulaR1C1 = "=[wb]Feuil1!R3C2"
        ActiveCell.Offset(0, 2).Range("A1").Select
        ActiveCell.FormulaR1C1 = "=[wb]Feuil1!R5C2"
        ActiveCell.Offset(0, 2).Range("A1").Select
        ActiveCell.FormulaR1C1 = "=[wb]Feuil1!R7C2"
        ActiveCell.Offset(1, 0).Range("A1").Select
    End Sub
    Quelqu'un peut m'aider?

    D'avance merci.

    Georges

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    21
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2003
    Messages : 21
    Par défaut
    En réalité je ne veux pas copier des cellules d'un fichier à l'autre. Je veux créer dans Résumé des formules du type "=cellule 1,1 " du fichier test1 puis du test2 ...
    Je dois donc remplacer le nom du fichier source par le nom du fichier ouvert. Comment régler ce problème de nom de fichier?

  3. #3
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2021
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2021
    Messages : 9
    Par défaut
    Bonjour ,
    j'ai un peu de mal à comprendre ce que tu cherches à faire, je me trompe peut être mais j'ai l'impression que tu cherches à récupérer les données des fichiers test sans avoir à aller dans le code à chaque fois pour remplacer Workbooks("test1.xlsx") par Workbooks("test2.xlsx") etc
    Si c'est bien ca je me suis servis il n'y a pas longtemps d'une macro qui permet de sélectionner son fichier et d'en sortir le nom dans une variable de type string pour ensuite s'en servir comme on veut et ne pas dépendre du nom du fichier source qui peut varier
    Je te met le code la si jamais c'est ce que tu recherches

    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
     
    Public Chemin_fichier_test As String    'contient le chemin du fichier
    Public fichier_test As String           'contient le nom du fichier
    Dim p As Integer                        'position du \ dans le chemin du fichier
    Dim fp As Integer                       'position finale du \ dans le chemin du fichier
     
    Sub recup_nom_fichier()
        p = 0
     
     
        Chemin_fichier_test = Application.GetOpenFilename("Fichiers Excel (*.xlsx), *.xlsx")
        Do
            p = InStr(p + 1, Chemin_fichier_test, Chr(92))   'recherche de " \ " dans le chemin du fichier
                If (p <> 0) Then
                    fp = p                                      'enregistre la position du " \ "
                End If
            Loop While (p <> 0)
            fichier_test = Mid(Chemin_fichier_test, fp + 1)              'extrait le nom du fichier dans le chemin
            MsgBox fichier_test                                          'optionnel (sécurité pour tester son code)
    End Sub
    En espérant que ce soit bien ce que tu cherches

Discussions similaires

  1. vba - Supprimer un fichier ouvert
    Par House MD dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 02/07/2008, 09h59
  2. [VBA-Excel] Vider Historique des fichiers ouverts
    Par bonilla dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 25/09/2006, 14h29
  3. VBA-EXCEL- TEST si fichier ouvert
    Par VBBBA dans le forum Macros et VBA Excel
    Réponses: 24
    Dernier message: 11/08/2006, 15h20
  4. [VBA-E] gestion des fichiers ouverts ...
    Par SpaceFrog dans le forum Macros et VBA Excel
    Réponses: 24
    Dernier message: 20/01/2006, 17h10
  5. [VBA][Office 2003] Fichier ouvert depuis IE ou Word?
    Par nbaudraz dans le forum VBA Word
    Réponses: 2
    Dernier message: 12/10/2005, 14h27

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