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