Page 1 sur 1

Comment écrire une fonction qui renvoie plusieurs états

MessagePublié: 30 Jan 2007 à 09:35
par oguruma
En effet, vous écrivez par exemple une fonction qui doit vous renvoyer
- un code retour de bonne exécution
- et aussi une ou plusieurs valeurs de différents type (integer, string, notesdocument, etc...)

exemple

function myFunction(param as integer) as variant

dim vRetour(2) as variant

on error goto handle
...
...
...

vos traitements.....
....
...
...
vretour(0)=true
vretour(1)="exemple d'une chaine de caractères"
vretour(2)="hDocObj" ' exemple d'un notesdocument
fin:
myFunction=vretour
exit function

handle:
vretour(0)=false
vretour(1)="Erreur n° " & err & " :: " & error$
vretour(2)=""
resume fin

ici vretour renvoie 3 états mais bien entendu... on peut aller plus loin...

appel de la fonction

...
...
...

vRetour=myfunction(param)
if not vretour(0) then
msgbox "erreur runtime " & vretour(1)
exit sub
end if
'.... sinon exploitation de vretour(1) et vretour(2)
'... pour la suite des traitements....