Instruction GoSub...Return

Appelle une sous-routine indiquée par une étiquette provenant d'une sous-routine ou d'une fonction. Les instructions suivant l'étiquette sont exécutées jusqu'à l'instruction Return suivante. Ensuite, l'exécution du programme se poursuit par l'instruction suivant l'instruction GoSub.

Syntaxe :

voir Paramètres

Paramètres :

Sub/Function

bloc d'instructions

Étiquette

bloc d'instructions

Étiquette GoSub

Exit Sub/Function

Étiquette :

bloc d'instructions

Return

End Sub/Function

L'instruction GoSub appelle une sous-routine locale de l'intérieur d'une sous-routine ou d'une fonction, indiquée par une étiquette. Le nom de l'étiquette doit se terminer par un signe deux-points (":").

Icône Avertissement

Si le programme rencontre une instruction Return qui n'est pas précédée de GoSub, LibreOffice Basic renvoie un message d'erreur. Utilisez Exit Sub ou Exit Fonction pour vous assurer que le programme quitte une instruction Sub ou Function avant d'atteindre l'instruction Return suivante.


L'exemple suivant montre l'utilisation des instructions GoSub et Return. En exécutant deux fois la section de programme suivante, le programme calcule la racine carrée de deux nombres saisis par l'utilisateur.

Exemple :

Sub ExampleGoSub

Dim iInputa As Single

Dim iInputb As Single

Dim iInputc As Single

    iInputa = Int(InputBox("Saisissez le premier nombre : ","EntréeNombre"))

    iInputb = Int(InputBox("Saisissez le second nombre : ","EntréeNombre"))

    iInputc=iInputa

    GoSub SquareRoot

    Print "La racine carrée de";iInputa;" est";iInputc

    iInputc=iInputb

    GoSub SquareRoot

    Print "La racine carrée de";iInputb;" est";iInputc

    Exit Sub

SquareRoot:

    iInputc=sqr(iInputc)

    Return

End Sub