Premier appelle Deuxieme
Sub Premier()
MsgBox "Je suis dans Premier"
Deuxieme
End Sub
Sub Deuxieme()
MsgBox "Je suis dans Deuxieme"
End Sub
Utilisation d'Exit Sub
Sub Troisieme()
MsgBox "Premiere phrase"
Exit Sub
MsgBox "Deuxième Phrase phrase"
End Sub
Quatrieme Appelle cinquieme, et Exit Sub
Sub Quatrieme()
MsgBox "Phrase 1, Quatrieme"
Cinquieme
MsgBox "Phrase 2, Quatrieme"
End Sub
Sub Cinquieme()
MsgBox "Phrase 1, Cinquieme"
Exit Sub
MsgBox "Phrase 2, Cinquieme"
End Sub
Utilisation d'un paramètre
Sub Sixieme()
Septieme 44
End Sub
Sub Septieme(LeParametre)
MsgBox "Sixieme vient de m'envoyer " & LeParametre
End Sub
Utilisation de 2 paramètres
Sub Huitieme()
Neuvieme 32, "Chat"
End Sub
Sub Neuvieme(Nombre As Integer, Animal
As String)
MsgBox "Huitieme m'envoie l'animal " & Animal
MsgBox "Huitieme m'envoie le nombre " & Nombre
End Sub
Envoi d'un tableau en paramètre
Sub Proc1()
Dim Armoire(2)
Armoire(1) = "Bidule"
Armoire(2) = "machin"
Proc2 Armoire
MsgBox Armoire(2) ' Coucou et pas machin !
End Sub
Sub Proc2(MonTab())
MsgBox MonTab(1) ' Bidule
MonTab(2) = "Coucou"
End Sub
Appel simple à une fonction
Sub Dixieme()
MsgBox Onzieme
End Sub
Function Onzieme()
Onzieme = 32
End Function
Appel à une fonction avec un paramètre
Sub Douzieme()
MsgBox LeDouble(34)
End Sub
Function LeDouble(QuelNombre)
LeDouble = QuelNombre * 2
End Function
Appel d'une fonction avec 2 paramètres
Sub Treizieme()
MsgBox Additionne(4, 6)
End Sub
Function Additionne(Nombre1 As Integer,
Nombre2 As Integer)
Additionne = Nombre1 + Nombre2
End Function
Appel à une fonction plus élaborée
Sub Quatorzieme()
MsgBox ChiffreEnLettre(3)
End Sub
Function ChiffreEnLettre(QuelChiffre)
Select Case QuelChiffre
Case 1: ChiffreEnLettre = "Un"
Case 2: ChiffreEnLettre = "Deux"
Case 3: ChiffreEnLettre = "Trois"
Case Else: ChiffreEnLettre = "##ERREUR##"
End Select
End Function
Appel à une fonction nettement plus élaborée, qui renvoie le chiffre en anglais ou en français
Sub Quinzieme()
MsgBox ChiffreEnLettreAnglaisFrancais(3, "Anglais")
MsgBox ChiffreEnLettreAnglaisFrancais(2, "Français")
MsgBox ChiffreEnLettreAnglaisFrancais(66, "Français")
MsgBox ChiffreEnLettreAnglaisFrancais(66, "Anglais")
MsgBox ChiffreEnLettreAnglaisFrancais(2, "Italien")
End Sub
Function ChiffreEnLettreAnglaisFrancais(QuelChiffre,
Langue)
Select Case Langue
Case "Français":
Select Case QuelChiffre
Case 1: ChiffreEnLettreAnglaisFrancais
= "Un"
Case 2: ChiffreEnLettreAnglaisFrancais
= "Deux"
Case 3: ChiffreEnLettreAnglaisFrancais
= "Trois"
Case 4: ChiffreEnLettreAnglaisFrancais
= "Quatre"
Case Else: ChiffreEnLettreAnglaisFrancais
= "NOMBRE INCONNU"
End Select
Case "Anglais"
Select Case QuelChiffre
Case 1: ChiffreEnLettreAnglaisFrancais
= "One"
Case 2: ChiffreEnLettreAnglaisFrancais
= "Two"
Case 3: ChiffreEnLettreAnglaisFrancais
= "Three"
Case 4: ChiffreEnLettreAnglaisFrancais
= "Four"
Case Else: ChiffreEnLettreAnglaisFrancais
= "NUMBER UNKNOWN"
End Select
Case Else
ChiffreEnLettreAnglaisFrancais = "LANGUE INCONNUE"
End Select
ChiffreEnLettreAnglaisFrancais = ChiffreEnLettreAnglaisFrancais
End Function