Module
Contenu
Index 🔎︎

# 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 (":").

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