J'ai une déclaration if
avec plusieurs conditions. Je ne peux pas les voir tous dans une seule fenêtre. Existe-t-il un moyen de les séparer sur des lignes différentes ou doivent-ils être écrits en une seule ligne?
Le caractère de continuation de ligne VBA est un trait de soulignement _
if ( _
(something) _
or (somethingelse) _
)
Vous pouvez utiliser le caractère de continuation de ligne _
Ce sont tous les mêmes:
If Something Or SomethingElse Or AnotherThing Then
If Something Or SomethingElse _
Or AnotherThing Then
If Something Or _
SomethingElse Or _
AnotherThing Then
Comme ci-dessus, vous pouvez diviser le long ensemble de conditions dans une instruction "IF" en utilisant un trait de soulignement.
S'il y a trop de conditions et que je trouve difficile de lire, j'utilise BOOLEANS pour les représenter. Il semble qu'il y ait plus de code, mais je le trouve plus facile à lire.
Si j'ai un scénario où je dois faire ce qui suit:
IF (X = something1) OR (X = something2) OR (X = something2) OR (X = something2) OR (X = something2) OR (X = something2) OR (X = something2) OR (X = something2) THEN
END IF
Je pourrais faire ça:
IF _
(X = something1) _
OR (X = something2) _
OR (X = something3) _
OR (X = something4) _
OR (X = something5) _
OR (X = something6) _
OR (X = something7) _
OR (X = something8) _
THEN
END IF
... ou je pourrais faire ça ...
blnCondition1 = (X = something1)
blnCondition2 = (X = something2)
blnCondition3 = (X = something3)
blnCondition4 = (X = something4)
blnCondition5 = (X = something5)
blnCondition6 = (X = something6)
blnCondition7 = (X = something7)
blnCondition8 = (X = something8)
IF blnCondition1 OR blnCondition2 OR blnCondition3 OR blnCondition4 OR blnCondition5 OR blnCondition6 OR blnCondition7 OR blnCondition8 THEN
END IF
Bien sûr, les exemples de variables BOOLEAN sont définis et, au lieu de noms comme blnCondition1, je vais utiliser des noms significatifs.
Encore une fois, c'est juste une préférence que j'ai.
casser les avec un score inférieur _?
depuis le lien ci-dessus
If ActiveSheet.ChartObjects(1).Chart.ChartTitle = _
ActiveSheet.Range("a2").Value Then
MsgBox "They are equal."
End If
je suis sûr que vous pouvez utiliser un trait de soulignement _
pour rompre les lignes.