OVH Cloud OVH Cloud

If or

5 réponses
Avatar
Nick
Bonjour à vous
petite question bête mais je n'arrive pas à coder cela en VB6:

if MaChaine="titi" or MaChaine="toto" then
le code
end if

j'ai une erreur de types imcompatibles.
J'ai essayé avec des parenthèses et rien dans le MSDN...

5 réponses

Avatar
Francois Muller
Bonsoir

"Nick" a écrit dans le message de news:
ON$
petite question bête mais je n'arrive pas à coder cela en VB6:

if MaChaine="titi" or MaChaine="toto" then
le code
end if

j'ai une erreur de types imcompatibles.



A la compile, à l'exécution ? de quel type est MaChaine ? soyez plus précis
(c'est valable pour beaucoup , pas seulement pour vous)

F.
Avatar
TroXsA - [VB.NET-2005]
Avec des parrentezes :) non ? (j'ai pas d'erreur !!!)

Dim MaChaine As String = "tata"
If (MaChaine = "titi") Or (MaChaine = "toto") Then
End If



"Nick" a écrit dans le message de news:
ON$
Bonjour à vous
petite question bête mais je n'arrive pas à coder cela en VB6:

if MaChaine="titi" or MaChaine="toto" then
le code
end if

j'ai une erreur de types imcompatibles.
J'ai essayé avec des parenthèses et rien dans le MSDN...


Avatar
Nick
TroXsA - [VB.NET-2005] a écrit :
Avec des parrentezes :) non ? (j'ai pas d'erreur !!!)

Dim MaChaine As String = "tata"
If (MaChaine = "titi") Or (MaChaine = "toto") Then
End If



"Nick" a écrit dans le message de news:
ON$

Bonjour à vous
petite question bête mais je n'arrive pas à coder cela en VB6:

if MaChaine="titi" or MaChaine="toto" then
le code
end if

j'ai une erreur de types imcompatibles.
J'ai essayé avec des parenthèses et rien dans le MSDN...







merci, effectivement les pararenthèz n'étaient pas au bon endroit.
Il est temps d'aller se coucher je crois. :))
merci.
Avatar
Kawaman
Petit detail en passant, je conseillerai d'utiliser OrElse plutot que Or.

Ca evite de faire une comparaison qui sert a rien, et dans certains cas,
ca peut vous sauver, surtout le AndAlso
if ((not objet is Nothing) AndAlso (objet.champ=valeur))then

Comme ca, la comparaison est courtcircuitée au premier sans faire de
NullreferenceException sur le 2eme (vu qu'il est pas fait) et ca evite
d'imbriquer des ifs...

En fait je comprends pas vraiment pourquoi ce n'est pas le comportement
de base, ce qui est le casdans d'autres languages


Nick a écrit :
TroXsA - [VB.NET-2005] a écrit :

Avec des parrentezes :) non ? (j'ai pas d'erreur !!!)

Dim MaChaine As String = "tata"
If (MaChaine = "titi") Or (MaChaine = "toto") Then
End If



"Nick" a écrit dans le message de news:
ON$

Bonjour à vous
petite question bête mais je n'arrive pas à coder cela en VB6:

if MaChaine="titi" or MaChaine="toto" then
le code
end if

j'ai une erreur de types imcompatibles.
J'ai essayé avec des parenthèses et rien dans le MSDN...








merci, effectivement les pararenthèz n'étaient pas au bon endroit.
Il est temps d'aller se coucher je crois. :))
merci.


Avatar
Patrice
Sans garantie mais je crois me souvenir que c'est pour "compatibilité" avec
l'ancien code...

MS avait proposé pas mal de changement par rapport à "VB Classic" mais est -
à mon avis malheureusement - revenus sur certaines de ses propositions sous
la pression des "conservateurs"...

--
Patrice

"Kawaman" a écrit dans le message de
news:43297492$0$15659$
Petit detail en passant, je conseillerai d'utiliser OrElse plutot que Or.

Ca evite de faire une comparaison qui sert a rien, et dans certains cas,
ca peut vous sauver, surtout le AndAlso
if ((not objet is Nothing) AndAlso (objet.champ=valeur))then

Comme ca, la comparaison est courtcircuitée au premier sans faire de
NullreferenceException sur le 2eme (vu qu'il est pas fait) et ca evite
d'imbriquer des ifs...

En fait je comprends pas vraiment pourquoi ce n'est pas le comportement
de base, ce qui est le casdans d'autres languages


Nick a écrit :
> TroXsA - [VB.NET-2005] a écrit :
>
>> Avec des parrentezes :) non ? (j'ai pas d'erreur !!!)
>>
>> Dim MaChaine As String = "tata"
>> If (MaChaine = "titi") Or (MaChaine = "toto") Then
>> End If
>>
>>
>>
>> "Nick" a écrit dans le message de news:
>> ON$
>>
>>> Bonjour à vous
>>> petite question bête mais je n'arrive pas à coder cela en VB6:
>>>
>>> if MaChaine="titi" or MaChaine="toto" then
>>> le code
>>> end if
>>>
>>> j'ai une erreur de types imcompatibles.
>>> J'ai essayé avec des parenthèses et rien dans le MSDN...
>>
>>
>>
>>
> merci, effectivement les pararenthèz n'étaient pas au bon endroit.
> Il est temps d'aller se coucher je crois. :))
> merci.