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 :

Restitution valeur de l'index d'un tableau


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 17
    Par défaut Restitution valeur de l'index d'un tableau
    Bonjour,

    Tout d'abord merci pour les FAQ, Tuto qui m'ont permis de passer du niveau zéro au niveau 1.

    Je cherche à créer une variable tableau qui en fonction du moi restitue les semaines de ce moi. Ci dessus l'exemple avec Janvier.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim JANVIER(5) As Integer
    JANVIER(0) = 1
    JANVIER(1) = 2
    JANVIER(2) = 3
    JANVIER(3) = 4
    JANVIER(4) = 5
    MsgBox JANVIER(LBound(JANVIER)) 'restitue 1
    MsgBox JANVIER(UBound(JANVIER)) 'restitue 0 ??

    Je ne comprend pas pourquoi avec Ubound il restitue zéro.
    Moi je m'attendais à ça :
    Ubound(janvier) = 4 et Janvier(4)=5

    Est ce que vous pourriez me donner une piste ?
    Merci à tous

  2. #2
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Bonjour,

    LBound(JANVIER) = l'indice le plus bas = l'indice 0 ===>> = JANVIER(0) = 1

    UBound(JANVIER) = l'indice le plus grand = l'indice 5 ===>> = JANVIER(5) = 0 puisque tu ne lui as affecté aucune valeur !!! (tu t'es arrêté à l'indice 4 ...)

    Je te rapelle qu'à moins d'en décider autrement explicitement, le 1er indice d'un tableau est 0

    En d'autres termes : si tu n'as besoin que de 5 éléments, d'indices, 0,1,2,3 et 4, dimensionne ton tableau à 4 et non à 5 (qui te donne 6 éléments)

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 17
    Par défaut
    Bonjour, ucfoutu

    En d'autres termes : si tu n'as besoin que de 5 éléments, d'indices, 0,1,2,3 et 4, dimensionne ton tableau à 4 et non à 5 (qui te donne 6 éléments)

    Je pensais de c'est ce que j'avais fait :
    Dim JANVIER(5) As Integer -> je déclare un tableau à 5 éléments
    et ils prennent les valeurs : 1.2.3.4 puis 5
    Le dernier indice est 4 et il devrait prendre la valeur 5

    est ce que c'est ça ?

  4. #4
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    est ce que c'est ça ?
    1) Je crois avoir répondu.
    2) un test (un simple test) suffira à connaitre la réponse à ta question ! (pourquoi ne le fais-tu pas ?)

  5. #5
    Membre chevronné
    Inscrit en
    Janvier 2008
    Messages
    483
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 483
    Par défaut
    Bonsoir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Option Base 1 'déclare la limite inférieure par défaut des indices d'un tableau.
    Sub testArr()
    Janvier = Array(1, 2, 3, 4, 5)
    MsgBox Janvier(5)
    End Sub
    Abed_H

Discussions similaires

  1. Réponses: 1
    Dernier message: 20/07/2011, 08h29
  2. Réponses: 2
    Dernier message: 08/02/2011, 13h59
  3. Réponses: 10
    Dernier message: 07/12/2006, 20h52
  4. [VBA] Obtenir l'index dans un tableau à partir de sa valeur.
    Par Julien Dufour dans le forum Access
    Réponses: 2
    Dernier message: 28/07/2006, 11h03
  5. [sgbd] Recuperer valeurs d'un Select dans un tableau
    Par Mu_Belier dans le forum SGBD
    Réponses: 16
    Dernier message: 27/05/2005, 15h46

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