[Visual Basic Excel] Pb de retour de paramètre dans une focntion

Pb de retour de paramètre dans une focntion [Visual Basic Excel] - Programmation

Marsh Posté le 15-11-2001 à 12:07:14    

voilà, dans mon prg j'ai plusieurs liste box mais qui doivent contenir la meme chose.
Pour les remplir j'ai créer une fonction qui rempli la liste liste avec ce qu'il faut. Ca ca marche.
 
Cette fonction que j'ai appeller  
  RechargerListe(Liste As ListBox)
prend en paramètre l'@ de la liste Box a remplir.
 
Seulement quand j'essaye de faire appelle a cette fonction
  Private Sub BtnTout_Click()
  RechargerListeResident (ListeImpression)  
  End Sub
 
ben i me dit type incompatible ???
comprend pas
 
Je debute alors  :sweat:  
merci

 

[edtdd]--Message édité par olicel--[/edtdd]


---------------
toujours un petit mot gentil:
Reply

Marsh Posté le 15-11-2001 à 12:07:14   

Reply

Marsh Posté le 15-11-2001 à 12:15:30    

en fait a l'appelle il me dit 'Objet requis' erreur 424
 
voila un peu +


---------------
toujours un petit mot gentil:
Reply

Marsh Posté le 15-11-2001 à 13:03:36    

Cette erreur te signale que le paramètre "ListeImpression" n'est pas initialisé avec un objet ListBox.
 
Si "ListeImpression" est le nom du controle ListBox sur un formulaire, c'est bizarre !  
Sinon tu dois avoir oublié de faire l'initialisation (genre: Set ListeImpression = form.ListBoxForm)
 
Difficile de t'aider plus sans avoir le code exact sous les yeux

Reply

Marsh Posté le 15-11-2001 à 13:20:30    

si a la place de l'appel de la fonction je fais ca:
 
ListeImpression.AddItem ("olivier" )
 
Ca marche .
 
Mon objet est alors correctement initialisé ?
De plus dans ma fonction RechargerListeResident jai essayé pour faire mes test d'attaquer directement la listebox comme ceci
 
Principale.MultiPage1.Impression.ListeImpression.addItems("olivier" )
 
ben la ca marche osi.
 
c vraiment le passage du paramètre qui ne marche pas.
 
I a pas un probleme de passage d'@???
 
J'ai fait avant du C++


---------------
toujours un petit mot gentil:
Reply

Marsh Posté le 15-11-2001 à 14:04:01    

En VB3 (donc pas VBA), il y avait un "type" générique qui était Control. ListBox n'est peut-être pas "connu" ?
List as Control, c'est peut-être mieux ??
 
A tout hasard, je pratique pas VBA. :D  
 
NB : quelle différence entre RechargerListe() et RechargerListeResident() ? Le Resident, c'est une "astuce" ? :)

Reply

Marsh Posté le 15-11-2001 à 14:30:46    

RechargerListe et RechargeListeResident c pareil, c en explicant sur le forum que je me suis emeler les pinceaux  :)


---------------
toujours un petit mot gentil:
Reply

Marsh Posté le 15-11-2001 à 15:08:12    

ok ca marche maintenant avec Control. Sympa merci
 
Maintenant je me rends compte qu'il i autre chose que je ne sais pas faire...
 
Creer et utiliser une fonction qui retourne un paramètre, dans mon cas une chaine String.
 
J'ai cherhé dans l'aide mais en vain


---------------
toujours un petit mot gentil:
Reply

Marsh Posté le 15-11-2001 à 15:22:03    

Sais pas. En QBasic, on fai(sai)t  
Function Toto(machin chose, .., ) as string
 
et un return A$ à la fin
End function
 
Ici, je sais pas. :D  
 
Le Sub Toto(machin chose, .., ) ne renvoie rien par définition (Sub : pas de retour, void du C).

Reply

Marsh Posté le 15-11-2001 à 15:33:21    

ouai c juste sub ne renvoi rien par definitions
Faut utiliser Function
 
et faire comme ca, (j'ia trouvé comme 1 grand)
 
function RechargerListe(...liste des arguments)
code
code.....


---------------
toujours un petit mot gentil:
Reply

Marsh Posté le 15-11-2001 à 15:33:48    

ouai c juste sub ne renvoi rien par definitions
Faut utiliser Function
 
et faire comme ca, (j'ia trouvé comme 1 grand)
 
function RechargerListe(...liste des arguments)
  code
  code.....
  RechargerListe = valeur a retourner
End function


---------------
toujours un petit mot gentil:
Reply

Sujets relatifs:

Leave a Replay

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