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 :

Récupération de la valeur d'une variable dans une procédure


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2015
    Messages : 5
    Points : 3
    Points
    3
    Par défaut Récupération de la valeur d'une variable dans une procédure
    Bonjour à tous.

    Je suis débutant en programmation. J'essaie de récupérer la valeur de la variable nb_eleves dans la seconde sub. Chaque procédure se déclenche en cliquant sur deux boutons. Je n'obtiens pas la bonne valeur dans la MsgBox. Je suis dans l'impasse depuis qq heures après avoir consulté les tutoriaux et les forums. Merci d'avance pour votre aide.

    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
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    Dim nb_eleves As Integer
     
    Sub Ajout_eleves()
     
    Dim liste_eleves() As String
    Dim nom As String
    Dim prenom As String
    Dim eleve As String
    Dim Cname As String
     
    nb_eleves = WorksheetFunction.CountA(Range("A:A")) - 1
     
    ReDim liste_eleves(nb_eleves, 3)
     
        For i = 1 To nb_eleves
        nom = Cells(i + 1, 1).Value
        liste_eleves(i, 1) = nom
        prenom = Cells(i + 1, 2).Value
        liste_eleves(i, 2) = prenom
        eleve = nom + " " + prenom
        Sheets.Add(, ActiveSheet).Name = eleve
        Sheets(eleve).Range("A1").Value = nom
        Sheets(eleve).Range("B1").Value = prenom
        Cname = Worksheets(eleve).CodeName
        liste_eleves(i, 3) = Cname
        Call competences.copie_competences(eleve)
        Call competences.EcrireCode(Cname)
        Next
     
    End Sub
     
    Sub nouvel_eleve()
     
        MsgBox nb_eleves
     
    End Sub

  2. #2
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    sub test
    nouvel_eleve 50
    end sub 
    Sub nouvel_eleve(nb_eleves  as long)
     
    MsgBox nb_eleves
     
    End Sub

  3. #3
    Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2015
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Merci beaucoup pour votre réponse. Je ne souhaite pas appeler une procédure à partir d'une autre mais seulement récupérer la valeur de la variable nb_eleves. Je l'ai donc déclarée en premier pour pouvoir l'utiliser dans toutes les procédures.

  4. #4
    Membre expert
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 266
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 2 266
    Points : 3 666
    Points
    3 666
    Par défaut
    Bonjour,

    Tes 2 procédures sont dans le même module ?
    Si non déclare Public nb_eleves As Integer dans un module standard avant les procédures, et nb_eleves ne doit pas être déclaré ailleurs.

    eric

Discussions similaires

  1. Mettre la valeur d'un champ d'une table dans une variable
    Par marcelstan dans le forum Access
    Réponses: 1
    Dernier message: 18/03/2015, 20h58
  2. 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
  3. Réponses: 0
    Dernier message: 21/01/2009, 13h52
  4. Réponses: 4
    Dernier message: 29/01/2008, 11h12
  5. Réponses: 1
    Dernier message: 15/02/2007, 00h24

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