[VBA Excel] Input en option

Input en option [VBA Excel] - VB/VBA/VBS - Programmation

Marsh Posté le 03-05-2006 à 21:29:11    

Bonjour,
je voudrai savoir si c'est possible de déclarer des variables optionnelles en entrée dans une macro ou fonction. Par exemple cas classique:
sub coucou (toto as string)
cas optionel
sub coucou (toto as string, option tata as integer)
 
Rajouter des paramètres optionnels donne des précisions sur la macro sans en créer des variantes.
sub coucou1 (toto as string)
sub coucou2 (toto as string, tata as integer)
 
Merci d'avance

Reply

Marsh Posté le 03-05-2006 à 21:29:11   

Reply

Marsh Posté le 03-05-2006 à 23:17:54    

je ne mis connait pas trop en VBA mais teste ca
 

Code :
  1. Private Sub e(Optional ByVal e As String, Optional ByVal a As String)
  2. End Sub


 
Par contre je pense que si un argument est optionel, les autres doivent l'etre aussi.

Reply

Marsh Posté le 04-05-2006 à 09:18:52    

Si un argument est optionnel, les suivants doivent l'être aussi mais tu peux avoir

Function MaFonctionAMoiQuelleEstBelle(sParam1 As String, lParam2 As Long, Optional wParam3 As String, Optional wParam4 As String = "ValeurDefautSiPasRempli" ) As Boolean


 
edit: j'ajoute une info importante. Dans le cas des paramètres optionnels, on a la fonction IsMissing() pour savoir si un paramètre optionnel a été renseigné ou non. MAIS cela ne fonctionne que pour les paramètres non typés !


Message édité par tegu le 04-05-2006 à 09:22:17
Reply

Marsh Posté le 04-05-2006 à 10:28:41    

Merci pour votre aide.
Il suffisait simplement de déclarer optional devant un argument.
Drakins le passage par valeur dans mon cas n'est pas utile, puisque je veux  initialiser les valeurs optionelles.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed