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 :

comment demander si le tableau est vide?


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2012
    Messages
    353
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2012
    Messages : 353
    Points : 184
    Points
    184
    Par défaut comment demander si le tableau est vide?
    Bonjour,

    je cherche à savoir si mon tableau à une dimension est vide ou pas?
    pour cela j'ai fais le test suivant:

    j'ai créer un petit tableau gantt_m1( )
    de dimension 50 : redim gantt_m1(50)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
        gantt_m1(1) = 1
          ' je lui affecte la valeur 1 à la première case de mon tableau virtuel
        'et la je fais le test pour savoir s'il confirme bien que mon tableau est non complétement vide
        For i = 0 To UBound(gantt_m1)
     
            If gantt_m1(i) = "" Then
                MsgBox "le tableau est vide"
            End If
     
        Next i
    Hélas , il m'affiche bien que mon taleau est vide , or ce n'est pas le cas !

    deuxième petite question :

    j'ai vu qu'on pouvait parcourir un tableau sur les lignes comme l'exemple suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        For i = 0 To 10
            tab_exemple(i) = Range("A" & i + 2)
        Next
    mais comment parcourir les colonne sur une même ligne?

    merci beaucoup

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 609
    Points : 5 901
    Points
    5 901
    Par défaut
    Bonjour,

    Dans ton 1er exemple, tu affectes une valeur à l'item 1 de ton tableau. Ta boucle commence à 0 donc elle trouve le 1er item vide...

    Pour lire une ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        For i = 0 To 10
            tab_exemple(i) = Cells( 1, i+1)  'lecture le ligne 1
        Next

  3. #3
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 674
    Points
    18 674
    Par défaut
    Bonjour, bonjour !
    Citation Envoyé par awa123 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
        For i = 0 To UBound(gantt_m1)
     
            If gantt_m1(i) = "" Then
                MsgBox "le tableau est vide"
            End If
     
        Next i
    Hélas , il m'affiche bien que mon taleau est vide , or ce n'est pas le cas !
    En fait il affiche ce qui lui est demandé ! Et si ce n'est pas bon, la logique de programmation est donc à revoir ‼
    La condition teste uniquement si un indice de la variable tableau est vide, rien à voir donc avec l'intégralité du contenu ! …

    Pour une variable tableau de valeurs numériques, pour savoir si elle est vide, rien qu'en effectuant la somme, non ?‼
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub Demo()
        ReDim gantt_m1%(50)
     
        gantt_m1(0) = 1
        If Application.Sum(gantt_m1) = 0 Then MsgBox "Tableau vide !"
    End Sub
    Tel quel, il n'y aura pas de message; par contre en mettant en commentaire la ligne n°4 …


    Quant à la seconde question, c'est plus simple d'utiliser la propriété Cells, consulter son aide … (B-A-BA)

    __________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …

Discussions similaires

  1. comment tester si un tableau est vide
    Par huître dans le forum Débuter
    Réponses: 5
    Dernier message: 11/05/2015, 22h15
  2. Comment savoir si un tableau est vide ?
    Par ram-0000 dans le forum Langage
    Réponses: 2
    Dernier message: 14/02/2014, 09h14
  3. [PHP 5.0] Comment faire quand un tableau est vide
    Par pierrot10 dans le forum Langage
    Réponses: 2
    Dernier message: 29/08/2010, 01h17
  4. Comment verifier si un tableau est vide
    Par Ceubex dans le forum Windows Forms
    Réponses: 2
    Dernier message: 23/01/2010, 16h12
  5. Comment détecter si un tableau est vide ?
    Par ErPi dans le forum Langage
    Réponses: 6
    Dernier message: 27/06/2005, 18h50

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