With : EndWith
DescriptionWith <expression> ... EndWith
Le bloc With : EndWith permet de réduire la quantité de code à saisir et améliore sa lisibilité quand beaucoup de champs d'une structure doivent être renseignés. L'<expression> spécifiée sera automatiquement insérée avant chaque caractère anti-slash '\' qui suit un espace ou un opérateur. C'est une directive de compilateur qui fonctionne de la même manière qu'une macro: la ligne complète est recréée lors de la compilation, puis elle est traitée. Les blocs With : EndWith ne peuvent pas être imbriqués, car cela pourrait générer des bugs difficiles à résoudre.
Exemple
Structure Personne Nom$ Age.l Taille.l EndStructure Ami.Personne With Ami \Nom$ = "Yann" \Age = 30 \Taille = 196 Debug \Taille+\Taille EndWith
Exemple
Structure Corps Poids.l Couleur.l Texture.l EndStructure Structure Personne Nom$ Age.l Corps.Corps[10] EndStructure Ami.Personne For k = 0 To 9 With Ami\Corps[k] \Poids = 50 \Couleur = 30 \Texture = \Couleur*k Debug \Texture EndWith Next