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 :

Variable MsgBox fichier et onglet


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 114
    Par défaut Variable MsgBox fichier et onglet
    Bonjour,
    Alors je vous expose mon problème, j'ai plusieurs macro différent (1 jusque 8) et dans ces macros il y a des nom de fichiers ou d'onglet. Mais ces fichier change en fonction du mois.

    ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Windows("Masse salariale 2013 mois par mois PC.xlsm").Activate
    Windows("suividep 102013.xls").Activate
    Worksheets("octobre modifié")
    Ces fichiers ou onglet change chaque mois c'est pour cela que j'avais pensé à créer des variables.
    Et pour entrer le nouveau nom j'avais pensé à faire une sorte de MsgBox qui demande d'entrer le nom de fichier 1,2 ou 3 et qui change le nom dans toutes les macros, mais je ne sait pas comment faire...

  2. #2
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    Le plus simple:

    Tu crées un feuille qui s'appellera dans mon exemple "Lenomdetanouvellefeuille" ou tu vas mettre en A1 A2 et A3 des classeurs, puis dans tes macros tu vas mettre

    A1=Masse salariale 2013 mois par mois PC.xlsm
    A2=suividep 102013.xls
    A3=octobre modifié


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Windows(Sheets("Lenomdetanouvellefeuille").range("A1")).Activate
    Windows(Sheets("Lenomdetanouvellefeuille").range("A2")).Activate
    Worksheets(Sheets("Lenomdetanouvellefeuille").range("A3"))
    Il te suffira de changer les noms dans tes cases

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 114
    Par défaut
    Merci.
    J'ai une question car j'ai une macro qui fait des recherches:
    exemples:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
        ActiveCell.FormulaR1C1 = _
            "=VLOOKUP(RC[-23],'[suividep 102013.xls]Feuil1'!R1:R3074,7,FALSE)"
    Le "suividep 102013.xls" je le remplace par "B3" ou par Windows(Sheets "référence").range(“B3”).Activate

    Je précise "suividep 102013.xls" est une source extérieur.

  4. #4
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    Tu le remplaces par le value du range ou tu mets ta variable.

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 114
    Par défaut
    Donc par "Lenomdetanouvellefeuille!A2"
    ou .Range("A2")

  6. #6
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "=VLOOKUP(RC[-23],'[ & " Sheets("Lenomdetanouvellefeuille").range("A2") & "]Feuil1'!R1:R3074,7,FALSE)"

  7. #7
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 114
    Par défaut
    Merci, et donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "=VLOOKUP('octobre modifié'!RC[-8],'table titul_contract'!C[-38]:C[-37],2,FALSE)"
    Je le remplace par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "=VLOOKUP('Lenomdetanouvellefeuille .RANGE("A3")'!RC[-8],'table titul_contract'!C[-38]:C[-37],2,FALSE)"

  8. #8
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    On dirait que tu fais exprès....

    J'en sais rien ce qu'il y a dans ton classeur. Si tu veux mettre une variable tu le mets en variable.. Si tu veux du fixe tu mets du fixe. Si tu veux mettre le contenu d'une cellule dans une de tes formule tu dois utiliser ton range.value... Sinon pas.

    J'en reste là.

  9. #9
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 114
    Par défaut
    J'ai une erreur de syntaxe pour ce code cela me marque incompatibilité de type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Windows(Sheets("REFERENCE").Range("B2")).Activate

  10. #10
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets("REFERENCE").Range("B2")
    y'a quoi là dedans ?

  11. #11
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 114
    Par défaut
    Dans ma feuille REFERENCE il y a
    le nom du fichier de travail B2
    le nom du fichier ou estraire les valeurs B3
    l'onglet ou effectué les modification B4
    Ainsi que sur ce code cela me marque erreur de synthaxe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ActiveCell.FormulaR1C1 = _
    "=VLOOKUP(RC[-23],'[ & " Sheets("Lenomdetanouvellefeuille").range("A2") & "]Feuil1'!R1:R3074,7,FALSE)"

  12. #12
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ActiveCell.FormulaR1C1 = _
    "=VLOOKUP(RC[-23],'[" & Sheets("Lenomdetanouvellefeuille").range("A2").value & "]Feuil1'!R1:R3074,7,FALSE)"

  13. #13
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 114
    Par défaut
    Je suis tellement sur des langages différents que je n'avais même pas remarqué les guillemets ce problème est résolu.

    Incompatibilité de type pour:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Windows(Sheets("REFERENCE").Range("B3")).Activate

  14. #14
    Inactif  
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2012
    Messages : 1 733
    Par défaut
    Si le nom est bon en B2 et que le fichier est ouvert alors aucune raison que ça ne fonctionne pas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Windows(Sheets("REFERENCE").Range("B2").value).Activate

  15. #15
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 114
    Par défaut
    Nouveau probleme..
    L'indice n'appartient pas a la sélection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ActiveCell.FormulaR1C1 = _
    "=VLOOKUP(RC[-23],'[" & Sheets("Lenomdetanouvellefeuille").Range("A2").Value & "]Feuil1'!R1:R3074,7,FALSE)"

  16. #16
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 114
    Par défaut
    Merci engue de ton aide, je te dit a demain. Là j'en peu plus de voir ces lignes ...
    Bonjour, alors je retente aujourd'hui.

    Incompatibilité de type pour:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Windows(Sheets("reference").Range("A2")).Activate
    L'indice n'appartient pas a la selection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Windows(Sheets("reference").Range("A1")).Activate
    Avec ce code il me demande de sélectionner un fichier alors que c'est une feuille
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        ActiveCell.FormulaR1C1 = _
        "=VLOOKUP(RC[-23],'[" & Sheets("reference").Range("A3").Value & "]'!R1:R3074,7,FALSE)"

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

Discussions similaires

  1. Comment transformer une variable en fichier
    Par TuRn3r dans le forum C++
    Réponses: 4
    Dernier message: 21/04/2006, 14h25
  2. variable global fichier externe?
    Par molesqualeux dans le forum C
    Réponses: 4
    Dernier message: 01/02/2006, 16h13
  3. [9i] Bind variable dans fichier trace
    Par learn dans le forum Oracle
    Réponses: 6
    Dernier message: 27/01/2006, 15h24
  4. HELP : Variable et fichier
    Par arkem dans le forum Langage
    Réponses: 4
    Dernier message: 17/01/2006, 12h11
  5. Passer les variables de fichier.php en fichier.php
    Par Furius dans le forum Langage
    Réponses: 4
    Dernier message: 20/11/2005, 22h05

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