ou logique

Le
karamel
Bonjour

je desire faire un ou logique entre deux valeurs, qui prennent 0 ou 1 mais
elles sont importantes.
Comment réaliser cette opération ?

dois-je déclarer la variable d'une certaine facon ??

code1 = "000000000001000000000000000000000000000000000000000000000000"
code2 = "000000000000000000100000000000000100000000000000000000000000"

result = "000000000001000000100000000000000100000000000000000000000000"


j'ai dépassement de capacité si je fait result = code1 or code2

merci de votre aide
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
jero
Le #21551671
Salut,
Par exemple ceci (à adapter)
Function fctLogiqueOu() As String
Dim Result As String, I As Byte, Lng As Byte
Const code1 = "000000000001000000000000000000000000000000000000000000000000"
Const code2 = "000000000000000000100000000000000100000000000000000000000000"
Lng = Len(code1)
For I = 1 To Lng
Result = Result & CStr(CByte(Mid(code1, I, 1)) + CByte(Mid(code2, I,
1)))
Next I
fctLogiqueOu = Result
End Function
A+
"karamel" 4bc495f3$0$2979$
Bonjour

je desire faire un ou logique entre deux valeurs, qui prennent 0 ou 1 mais
elles sont importantes.
Comment réaliser cette opération ?

dois-je déclarer la variable d'une certaine facon ??

code1 = "000000000001000000000000000000000000000000000000000000000000"
code2 = "000000000000000000100000000000000100000000000000000000000000"

result = "000000000001000000100000000000000100000000000000000000000000"


j'ai dépassement de capacité si je fait result = code1 or code2

merci de votre aide


karamel
Le #21555991
Merci je vais essayer des que possible

MERCI


"jero"
Salut,
Par exemple ceci (à adapter)
Function fctLogiqueOu() As String
Dim Result As String, I As Byte, Lng As Byte
Const code1 =
"000000000001000000000000000000000000000000000000000000000000"
Const code2 =
"000000000000000000100000000000000100000000000000000000000000"
Lng = Len(code1)
For I = 1 To Lng
Result = Result & CStr(CByte(Mid(code1, I, 1)) + CByte(Mid(code2, I,
1)))
Next I
fctLogiqueOu = Result
End Function
A+
"karamel" 4bc495f3$0$2979$
Bonjour

je desire faire un ou logique entre deux valeurs, qui prennent 0 ou 1
mais elles sont importantes.
Comment réaliser cette opération ?

dois-je déclarer la variable d'une certaine facon ??

code1 = "000000000001000000000000000000000000000000000000000000000000"
code2 = "000000000000000000100000000000000100000000000000000000000000"

result = "000000000001000000100000000000000100000000000000000000000000"


j'ai dépassement de capacité si je fait result = code1 or code2

merci de votre aide






db
Le #21557621
jero a écrit :
Salut,
Par exemple ceci (à adapter)
Function fctLogiqueOu() As String
Dim Result As String, I As Byte, Lng As Byte
Const code1 = "000000000001000000000000000000000000000000000000000000000000"
Const code2 = "000000000000000000100000000000000100000000000000000000000000"
Lng = Len(code1)
For I = 1 To Lng
Result = Result & CStr(CByte(Mid(code1, I, 1)) + CByte(Mid(code2, I,
1)))
Next I
fctLogiqueOu = Result
End Function



Bonsoir,

Si je peux me permettre, je suggérerais une petite modification :
à la place de
Result = Result & CStr(CByte(Mid(code1, I, 1)) + CByte(Mid(code2,
I, 1))
je propose de mettre
Result = Result & CStr(CByte(Mid(code1, I, 1)) or CByte(Mid(code2,
I, 1))

pour faire en sorte que, pour code1="1111" et code2="0010", on obtienne
"1111" et non "1121"

On peut d'ailleurs simplifier en :
Result = Result & CStr(Mid(code1, I, 1) or Mid(code2, I, 1))

db
jero
Le #21558951
Salut,
Si je peux me permettre... permission totalement accordée ;>)


A+
"db"
jero a écrit :
Salut,
Par exemple ceci (à adapter)
Function fctLogiqueOu() As String
Dim Result As String, I As Byte, Lng As Byte
Const code1 =
"000000000001000000000000000000000000000000000000000000000000"
Const code2 =
"000000000000000000100000000000000100000000000000000000000000"
Lng = Len(code1)
For I = 1 To Lng
Result = Result & CStr(CByte(Mid(code1, I, 1)) + CByte(Mid(code2, I,
1)))
Next I
fctLogiqueOu = Result
End Function



Bonsoir,

Si je peux me permettre, je suggérerais une petite modification :
à la place de
Result = Result & CStr(CByte(Mid(code1, I, 1)) + CByte(Mid(code2, I,
1))
je propose de mettre
Result = Result & CStr(CByte(Mid(code1, I, 1)) or CByte(Mid(code2, I,
1))

pour faire en sorte que, pour code1="1111" et code2="0010", on obtienne
"1111" et non "1121"

On peut d'ailleurs simplifier en :
Result = Result & CStr(Mid(code1, I, 1) or Mid(code2, I, 1))

db


Publicité
Poster une réponse
Anonyme