faire un "et" logique avec masque (résolu)

anthony0903

XLDnaute Nouveau
bonjours,
Mon problème est le suivant:
-Je souhaite faire une opération bit a bit sur excel avec un masque (je crois que sa s'appel comme ça) mais lorsque je tape une valeur supérieur à 2147483648 il m'affiche une erreur 6 "dépassement de capacité"

le programme servira a la chose suivante :
pour le travail nous avons un enregistrement sur un PC de tout les mouvement, mesure, défaut, ect... de nos machines en temps réelle (IBA padu)
Comme nous avons beaucoup de défaut on a fait sur le pc IBA un enregistrement de tout les défaut sur une seul courbe pour avoir le chiffre décimal on doit faire le calcul suivant sur le pc "abs(valeur du signal +1)"
avec se numéro par exemple 1500 en décimal correspond 10111011100 en binaire:
donc ici on aura :
défaut 1 => pas défaut =>0
défaut 2 => pas défaut =>0
défaut 3 => en défaut =>1
défaut 4 => en défaut =>1
défaut 5 => en défaut =>1
défaut 6 => pas défaut =>0
défaut 7 => en défaut =>1
défaut 8 => en défaut =>1
défaut 9 => en défaut =>1
défaut 10 => pas défaut =>0
défaut 11 => en défaut =>1

T11 correspond au textbox ou je rentre ma valeur décimal ecrit dans une variable appeler "variable"
v1 à v31 me serve pour modifier mon listeview par la suite
cela fonctionne jusqu’à la variable "ae" après les valeurs sont pas bonne

voila le code:

Code:
a = 1
b = 2
c = 4
d = 8
e = 16
f = 32
g = 64
h = 128
ia = 256
ja = 512
k = 1024
l = 2048
m = 4096
n = 8192
o = 16384
p = 32768
q = 65536
r = 131072
t = 262144
u = 524288
v = 1048576
w = 2097152
x = 4194304
y = 8388608
Z = 16777216
aa = 33554432
ab = 67108864
ac = 134217728
ad = 268435456
ae = 536870912
af = 1073741824
ag = 2147483648#

variable = T11.Value
If variable And a Then
v1 = "1"
Else
v1 = "0"
End If
If variable And b Then
v2 = "1"
Else
v2 = "0"
End If
If variable And c Then
v3 = "1"
Else
v3 = "0"
End If
If variable And d Then
v4 = "1"
Else
v4 = "0"
End If
If variable And e Then
v5 = "1"
Else
v5 = "0"
End If
If variable And f Then
v6 = "1"
Else
v6 = "0"
End If
If variablee And g Then
v7 = "1"
Else
v7 = "0"
End If
If variable And h Then
v8 = "1"
Else
v8 = "0"
End If
If variable And ia Then
v9 = "1"
Else
v9 = "0"
End If
If variable And ja Then
v10 = "1"
Else
v10 = "0"
End If
If variable And k Then
v11 = "1"
Else
v11 = "0"
End If
If variable And l Then
v12 = "1"
Else
v12 = "0"
End If
If variable And m Then
v13 = "1"
Else
v13 = "0"
End If
If variable And n Then
v14 = "1"
Else
v14 = "0"
End If
If variable And o Then
v15 = "1"
Else
v15 = "0"
End If
If variable And p Then
v16 = "1"
Else
v16 = "0"
End If
If variable And q Then
v17 = "1"
Else
v17 = "0"
End If
If variable And r Then
v18 = "1"
Else
v18 = "0"
End If
If variable And s Then
v19 = "1"
Else
v19 = "0"
End If
If variable And t Then
v20 = "1"
Else
v20 = "0"
End If
If variable And u Then
v21 = "1"
Else
v21 = "0"
End If
If variable And v Then
v22 = "1"
Else
v22 = "0"
End If
If T11.Value And w Then
v23 = "1"
Else
v23 = "0"
End If
If variable And x Then
v24 = "1"
Else
v24 = "0"
End If
If variable And y Then
v25 = "1"
Else
v25 = "0"
End If
If variable And Z Then
v26 = "1"
Else
v26 = "0"
End If
If variable And aa Then
v27 = "1"
Else
v27 = "0"
End If
If variable And ab Then
v28 = "1"
Else
v28 = "0"
End If
If variable And ac Then
v29 = "1"
Else
v29 = "0"
End If
If variable And ad Then
v30 = "1"
Else
v30 = "0"
End If
If variable And ae Then
v31 = "1"
Else
v31 = "0"
End If
If variable And ag Then
v32 = "1"
Else
v32 = "0"
End If

Merci
j’espère que vous pourrai m'aider car je cherche maintenant depuis 2 semaine je sais déjà pas grand chose sur le binaire et la programmation excel donc sa fous un coup au moral
 
Dernière édition:

Discussions similaires