Traiter deux tableaux indépendamment

Bonjour,

je voudrais vérifier deux tableaux distincts puis de voir s'il sont tous vides

voici le petit code qui ne tourne pas :

vide1 = True

For i = 0 To UBound(gantt_m1)
        If gantt_m1(i) <> "" Then

            vide1 = False
  Else: vide1 = True

        End If
Next i

vide2 = True

For i = 0 To UBound(gantt_m2)
        If gantt_m2(i) <> "" Then

            vide2 = False
           Else: vide2 = True
        End If
Next i

If vide1 & vide2  Then

MsgBox "tous les tableaux sont vides"

End If

merci de votre aide

c'est bon je viens de réussir à le faire tourner mais il y a toujours un point problématique :

lorsque que je rempli la première cellule de mes tableaux comme ceci

gantt_m1(0) = M1

gantt_m2(0) = M2

les tableaux deviennent donc non complétement vide

et que j’exécute le code suivant pour vérifier s'il le comprends bien:

gantt_m1(0) = M1

vide1 = True

For i = 0 To UBound(gantt_m1)
        If gantt_m1(i) <> "" Then

            vide1 = False

        End If
Next i

gantt_m2(0) = M2
vide2 = True

For i = 0 To UBound(gantt_m2)
        If gantt_m2(i) <> "" Then

            vide2 = False

        End If
Next i

If vide1 And vide2 Then

MsgBox "tous les tableaux sont vides"

End If

résultat : il m'affiche "tous les tableaux sont vides" or ce n'est pas le cas car je leur ai affecté une valeur à chacun des tableaux

comment cela se fait-il?

merci!

Ca me parait bizarre que tu ne précises pas le contenu :

If vide1 And vide2 Then

If vide1=false and vide 2 = false then

ou alors peut être mettre une variable intermédiaire pour faire le and et le tester.

oui vous avez raison , je pense que je devrais écrire le code suivant:

    gantt_m1(0) = M1

    vide1 = True

    For i = 0 To UBound(gantt_m1)
            If gantt_m1(i) <> "" Then

                vide1 = False

            End If
    Next i

    gantt_m2(0) = M2
    vide2 = True

    For i = 0 To UBound(gantt_m2)
            If gantt_m2(i) <> "" Then

                vide2 = False

            End If
    Next i

    If vide1=True And vide2=True  Then

    MsgBox "tous les tableaux sont vides"

    End If

mais quand je fais le test il m'affiche toujours "tous les tableaux sont vides" alors qu'en toute logique vide1 et vide2 deviennent égale à False car je leur ai affecté un contenu (gantt_m1(0) = M1 et gantt_m2(0) = M2)

comment faire donc pour qu'il comprenne que le tableau et non vide et en conséquence il ne faut pas qu'il m'affiche la message-box...

merci

If gantt_m1(i) <> "" Then vide1 = False

donc vide_1 = false idem pour vide_2 = false chaque fois qu'il y a une valeur

donc je mettrais l'inverse

If vide1=false And vide2=false Then MsgBox "tous les tableaux sont vides"

quand la condition "vide1=false And vide2=false " est vrai Then MsgBox "tous les tableaux sont vides".


zut j'ai mal raisonné mais vous ne pouvez pas nous faire suivre le fichier qu'on fasse des essais?.

c'est bon je viens de trouver, en fait il manquait les guillemets , j'aurai du écrire comme cela gantt_m1(0) = "M1" à la place de gantt_m1(0) = M1

merci quand même

Rechercher des sujets similaires à "traiter deux tableaux independamment"