Bonjour,

Je souhaiterai connaitre les risques d'utiliser des paramètres optionnels dans une fonction ou une procédure pour retourner des variables au code appelant.
C'est comme une fonction dont on n'utilise pas le résultat dans certains cas...

Pour illustrer cela, voici l'exemple d'une fonction permettant d'ouvrir un fichier EXCEL :
Cette procédure a pour paramètre obligatoire le chemin du fichier EXCEL à ouvrir et comme paramètres optionnels une variable Excel.Workbook et une variable Excel.Worksheet.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
Sub OpenMyWkb(FullName As String, Optional WkbToOpen As Excel.Workbook, Optional WksToSet As Excel.Worksheet)
...
Set WkbToOpen = ActiveWorkbook
Set WksToSet  = ActiveSheet
...
End Sub
Le code appelant peut donc demande de récupérer uniquement l'objet classeur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Call OpenMyWkb(chemin, myWkb)
Uniquement l'objet feuille :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Call OpenMyWkb(chemin, myWks)
Que devient dans ces 2 cas la variable qui n'est pas spécifiée dans le code appelant ?
L'espace mémoire est-il purgé correctement ?

D'avance merci pour vos réponses.