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 :

tableau de constantes (ou tableau constant ?)


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 88
    Par défaut tableau de constantes (ou tableau constant ?)
    bonjour à tous,

    dans une fonction, j'utilise une variable tableau. Ce tableau est en fait constant : les valeurs sont codées "en dur"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    MonTab(1) = "AAA"
    MonTab(2) = "BBB"
    il est assez pénalisant de devoir recréer le tableau à nouveau lors de chaque appel de la fonction. Je m'en suis sorti en déclarant le tableau Static, et en testant son existence au début de la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Static MonTab(10) as variant
    if MonTab(1) <> "AAA" then
       ' affectation des valeurs aux éléments de MonTab
    end id
    mais c'est assez inélégant, et difficile à maintenir. existe-il une solution pour déclarer un tableau constant (ou un tableau de constantes, donc).

    merci

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    652
    Détails du profil
    Informations personnelles :
    Localisation : France, Ardèche (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 652
    Par défaut
    Bonsoir,

    Je ne sais pas si j'ai bien compris ton pb
    mais pourquoi n'écris tu pas

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    montab=array("AAA","BBB", "CCC".......)
    En espérant que...

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 88
    Par défaut
    salut michel,

    mon souci c'est de ne pas laisser VBA créer à nouveau le tableau à chaque appel de la fonction, principalement pour des raisons de rapidité.

    c'est pourquoi ca m'arrangerait qu'il soit créé une fois pour toutes. Au début, j'avais essayé dans la zone des déclarations du module, ca me paraissait un endroit idéal, mais VBA ne veut pas qu'on affecte des valeurs à des variables dans cette zone, et on ne peut pas déclarer un tableau avec Const. alors je butte...

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Et ça ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Public const Tableau = "AAA;BBB;CCC;DDD;EEE"
     
    sub Affiche()
    Dim LeTableau, i
    msgbox split(Tableau, ";")(2)
    'ou
    LeTableau = split(Tableau, ";")
    for i = 0 to Ubound(LeTableau)
         msgbox LeTableau(i)
    next
    end Sub
    A+

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 88
    Par défaut
    "split", c'est bien, ca, je ne ne connaissais pas.
    Bravo et merci pour la réponse

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

Discussions similaires

  1. tableau constant de pointeurs constants
    Par jacklafrip dans le forum Débuter
    Réponses: 3
    Dernier message: 10/10/2008, 11h25
  2. Declaration des constantes en tableau
    Par barbsbou dans le forum Débuter
    Réponses: 3
    Dernier message: 20/11/2007, 15h22
  3. [Tableau] Réinitialisation d'un tableau
    Par JPigKeud dans le forum Collection et Stream
    Réponses: 7
    Dernier message: 14/03/2005, 10h53
  4. [PHP-JS] Remplir un tableau javascript selon un tableau php
    Par jerome38000 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 24/01/2005, 14h02
  5. [CR] Entête de tableau à chaque page, et tableau...
    Par titelle dans le forum SAP Crystal Reports
    Réponses: 6
    Dernier message: 15/04/2004, 09h13

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