Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comparer deux tableaux de booléens

2 réponses
Avatar
Archampi
Est-il possible de comparer deux tableaux de bool=E9ens sans comparer chacu=
n de leurs =E9l=E9ments.

Au lieu de faire ceci:

For i =3D 1 to Ubound(TableauR=E9sultat)
TableauR=E9sultat(i) =3D Tableau1(i) And Tableau2(i)
Next i

Faire ceci: (mais la syntaxe ne fonctionne pas!)

TableauR=E9sultat() =3D Tableau1() And Tableau2()

Merci de vos lumi=E8res

2 réponses

Avatar
LSteph
Bonjour,

Dire que quelquechose soit impossible est hasardeux car dans bien des cas
vient un jour où cela s'avère réalisable.

En l'état deux tableaux booléeens si une seule valeur diffère ne sont plus
identiques , ce qui d'emblée impliquerait cette comparaison par valeur.

Toutefois tu pourrais peut être concatener chacun des deux ensembles pour
comparer deux longues chaines.

Cordialement.

--
LSteph

"Archampi" a écrit dans le message de
news:
Est-il possible de comparer deux tableaux de booléens sans comparer chacun
de leurs éléments.

Au lieu de faire ceci:

For i = 1 to Ubound(TableauRésultat)
TableauRésultat(i) = Tableau1(i) And Tableau2(i)
Next i

Faire ceci: (mais la syntaxe ne fonctionne pas!)

TableauRésultat() = Tableau1() And Tableau2()

Merci de vos lumières
Avatar
isabelle
bonjour,

je ne voie pas d'autre possibilité que de passer par une feuille de calcul.

Sub test()
Dim t1(3)
Dim t2(3)
Application.ScreenUpdating = False
t1(1) = True
t1(2) = True
t1(3) = True
t2(1) = False
t2(2) = True
t2(3) = True

Sheets.Add
Range("A1").Resize(UBound(t1, 1) + 1, 1) = Application.Transpose(t1)
Range("B1").Resize(UBound(t2, 1) + 1, 1) = Application.Transpose(t2)
tt1 = Range("A1").Resize(UBound(t1, 1) + 1, 1).Address
tt2 = Range("B1").Resize(UBound(t2, 1) + 1, 1).Address

MsgBox Evaluate("SUMPRODUCT((" & tt1 & ")*(" & tt2 & "))")

Application.DisplayAlerts = False
ActiveSheet.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

--
isabelle



Le 2012-03-20 18:38, Archampi a écrit :
Est-il possible de comparer deux tableaux de booléens sans comparer chacun de leurs éléments.

Au lieu de faire ceci:

For i = 1 to Ubound(TableauRésultat)
TableauRésultat(i) = Tableau1(i) And Tableau2(i)
Next i

Faire ceci: (mais la syntaxe ne fonctionne pas!)

TableauRésultat() = Tableau1() And Tableau2()

Merci de vos lumières