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 :

Declarer un classeur a nom et chemin variable


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 4
    Par défaut Declarer un classeur a nom et chemin variable
    Salut!
    J'utilise l'enregistreur de macro pour automatiser le rapprochement de 2 fichiers. D'un jour sur l'autre je fais plusieurs recherche V sur le fichier de la veille (ou du Vendredi); le nom et le chemin varient.

    Comment puis-je amener l'utlisateur a selectionner le fichier dans un repertoire pour l'utiliser dans les recherches v qui suivent??

    Desole mes bases sont mauvaises et je n'arrive pas a combiner les reponses des forum!
    MERCI.
    Gastonlegrand

  2. #2
    Membre confirmé
    Profil pro
    ERP + Oracle + VBA Excel
    Inscrit en
    Juin 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : ERP + Oracle + VBA Excel
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2005
    Messages : 58
    Par défaut
    Bonjour,

    Avec GetOpenFilename, une boîte de dialogue s'affiche, il est possible de la paramétrer. Le classeur ouvert est alors utilisable via Classeur_In.

    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
    Sub Ouvre_Classeur()
     
    Dim Nom_Fic As Variant
    Dim Classeur_In As Workbook
     
     
    Nom_Fic = Application.GetOpenFilename("Classeur de recherche (*.xls), *.xls")
     
     
     
    If Nom_Fic = False Then
     
        MsgBox "Pas e fichier choisi", vbCritical
     
        Exit Sub
     
    End If
     
    Set Classeur_In = Workbooks.Open(Nomfic)
     
     
     
     
    End Sub

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 4
    Par défaut
    Merci beaucoup!
    bonne reponse.

    Quand je le mets en pratique dans ma rechercheV, ca ne marche pas vraiment..je dois reouvrir le classeur que je viens de declarer..Peux tu m'expliquer stp?

    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
    Sub Formula()
     
    Dim Name_File As Variant
    Dim Classeur_In As Workbook
     
    Name_File = Application.GetOpenFilename("Last Report (*.xls), *.xls")
     
    If Name_File = False Then
        MsgBox "No file", vbCritical
        Exit Sub
    End If
     
    Set Classeur_In = Workbooks.Open(Name_File)
     
        Range("G1").Select
        ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-2],[Classeur_In]Sheet1!C[-2]:C[-1],2,0)"
        Range("G1").Select
        Selection.Copy
        Range(Selection, Selection.End(xlDown)).Select
        ActiveSheet.Paste
     
     End Sub

  4. #4
    Membre confirmé
    Profil pro
    ERP + Oracle + VBA Excel
    Inscrit en
    Juin 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : ERP + Oracle + VBA Excel
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2005
    Messages : 58
    Par défaut
    Il faut construire dynamiquement la formule avec le nom du classeur ouvert


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "=VLOOKUP(RC[-2],[" & Classeur_In.Name & "]Sheet1!C[-2]:C[-1],2,0)"

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 4
    Par défaut
    Parfait, je m'en sorti!!
    C'est genial, merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Recherchev vers classeurs fermés et nom du fichier variable
    Par charli.b2802 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/07/2013, 14h49
  2. [Batch] Chemin -> Variable en Nom Court
    Par Scoubi7 dans le forum Scripts/Batch
    Réponses: 13
    Dernier message: 17/11/2009, 10h30
  3. [XL-2003] Enregistrer classeur avec nom variable et chemin variable
    Par Lufia dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 08/10/2009, 22h29
  4. declarer nom table comme variable
    Par naouah dans le forum ASP
    Réponses: 6
    Dernier message: 29/08/2007, 17h25
  5. [Reflection] Connaître le nom d'une variable ...
    Par dahwoud dans le forum API standards et tierces
    Réponses: 7
    Dernier message: 09/08/2005, 14h37

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