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 :

Valeur d'une constante dans une cellule Excel [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2015
    Messages : 14
    Points : 6
    Points
    6
    Par défaut Valeur d'une constante dans une cellule Excel
    Bonjour !

    J'aimerais mettre en place une feuille Excel avec en contenu des cellules les valeurs de mes diverses constantes à renseigner avant la macro.

    Seulement seulement...Je n'ai aucune idée de comment je dois m'y prendre.

    J'ai essayé ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub Workbook_Open()
     
     
    chemin_EB = Sheets(6).Cells(4, 4).Value
    nom_onglet_EB = Sheets(6).Cells(6, 7).Value
     
    End Sub
    dans ThisWorkbook puis ça dans mon module :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Public chemin_EB As String 'chemin du fichier EB
        Public nom_onglet_EB As String
    Mais..mais ça ne marche pas !

    "Erreur d'exécution 5 : Argument ou appel de procédure incorrect".

    Merci pour votre aide !

    Nicolas

  2. #2
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    pour commencer, ce ne sont pas des constantes mais des variables là

    exemple d'une constante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Const MaConstante As String = "UnMot"
    ensuite, si tu veux écrire dans une cellule la valeur de la constante, là tu cherches à faire l'inverse
    il faut plutôt faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets(6).Cells(6, 7).Value = MaConstante

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2015
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Bonjour,

    Ah d'accord, je pensais à des constantes car je souhaiterai les utiliser de façon globale dans tout mon traitement (et à travers mes différents modules).

    Donc, comment faire pour initialiser une variable globale à la valeur d'une cellule ?

    Je me suis peut être mal exprimé, je souhaite récupérer la valeur de la cellule dans ma variable, et non mettre la valeur de ma variable dans la cellule.

    Merci pour ta réponse.

    Nicolas

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Essayes plutôt ce genre de code en remplaçant le nom de ta feuille et les coordonnées de ta cellule et le nom de la variable.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    strToto = ThisWorkbook.Worksheets("Feuil1").Range("A1").Value
    Philippe

  5. #5
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 073
    Points : 9 853
    Points
    9 853
    Billets dans le blog
    5
    Par défaut
    Au temps pour moi,

    donc, ta déclaration des variables en publique est bonne
    ces déclarations sont bien situées dans un module STANDARD ?


    la feuille existe bien ?

    met un point d'arrêt sur la première ligne de ta procédure Workbook_Open
    ferme ton fichier et réouvre le
    tu vas directement basculer en mode pas à pas
    fait défiler la procédure ligne par ligne via la touche F8, pour voir dans quelle procédure et à quelle ligne ça plante.


    je viens de copier tout bêtement tes codes dans un nouveau classeur, je l'ai enregistré, fermé et ré ouvert

    j'ai ajouté une petite procédure pour afficher la valeur de chemin_EB et elle remonte bien

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2015
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Bonjour Philippe,

    En changeant mon code par ce que tu me donnes, j'ai cette erreur :

    "Erreur de compilation : instruction incorrecte à l'intérieur d'une procédure".

    Joe, en ce qui concerne la déclaration des variables, je les fais dans un module qui, par la suite, lance plusieurs autres modules...cela pose-t-il un souci ?
    La feuille existe bien oui, j'ai essayé de mettre autant le numéro 6 que le nom "Variables" de la feuille mais ça ne change rien.

    Je vais essayer ce que tu m'as dit !

    Merci

    Après test, j'arrive bien en effet à récupérer les valeurs des cellules dans mes variables, mais il semblerait que ces variables ne soient pas vraiment "globales"...


    D'un module à l'autre j'ai l'impression qu'elles se remettent à 0...

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2015
    Messages : 14
    Points : 6
    Points
    6
    Par défaut
    Problème réglé !

    J'ai créé un nouveau module, en recopiant le code...et j'ai bien fait en sorte d'appeler ma procédure en tout début de code et ça marche.

    C'était une erreur toute bête ma foi, et tant mieux pour moi !

    Merci tout de même.

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

Discussions similaires

  1. Déplacer une image d'une feuille vers une autre dans un fichier Excel
    Par helenaide dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 03/10/2011, 14h27
  2. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  3. portée d'une variable dans une fonction dans une méthode
    Par laurentg2003 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/06/2009, 19h05
  4. [POO] dans une classe, appeler une fonction dans une méthode
    Par arnaudperfect dans le forum Langage
    Réponses: 3
    Dernier message: 26/08/2007, 23h04
  5. Envoyer une formulaire dans une page dans une Frame
    Par zooffy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/06/2007, 10h13

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