le_nain27
Messages postés13Date d'inscriptionmercredi 8 septembre 2004StatutMembreDernière intervention19 octobre 2006
-
18 janv. 2005 à 11:32
le_nain27
Messages postés13Date d'inscriptionmercredi 8 septembre 2004StatutMembreDernière intervention19 octobre 2006
-
18 janv. 2005 à 12:45
Bonjour,
Voila j'ai un fonction comme ca:
Function GetControlFromName( ControlName as String) as Control
dim cControl as Control
For Each cControl in Form1.Controls
If CStr(cControl.Name) = ControlName Then
GetControlFromName = cControl
End If
Next cControl
End Function
Bien evidement cela ne marche pas, sinon je serais pas ici
L'appel de cette fonction donne une erreur car on essai d'attribuer la valeur
par defaut du cControl (le .Text d'un textBox, par exemple) a une variable de
type inadapté.
Quelqu'un sait comment on peut faire pour passer le controle en entier à cette
variable ?
A voir également:
Avoir un objet de type controle en sortie de fonction
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013129 18 janv. 2005 à 12:15
Ben tout dépend de quel type de control il te renvoie : c'est sûr que
si tu essaie de modifier la propriété Text d'un commandButton par
exemple, il va te signaler une erreur ! A ce moment là :
Dim oControl as Control
On Error Resume Next
Set oControl = GetControlFromName("Command1")
Let oControl.Text = "Salut !" ' ca ne provoque pas d'erreur mais ca ne modifie pas la propriété Text !
DarK Sidious
Administrateur et reponsable VB/API du site www.ProgOtoP.com
le_nain27
Messages postés13Date d'inscriptionmercredi 8 septembre 2004StatutMembreDernière intervention19 octobre 2006 18 janv. 2005 à 12:32
Pour Darksidious
Bien evidement que ton Let oControl.Text="Salut !" marche puisque il y a le On Error Resume Next ...
Mais moi ca m'interesse pas de "passer" sur cette erreur.
Pour CanisLupus
Merci !!!
Peut tu m'expliquer pourquoi le Set est, dans ce cas la, obligatoire ? On passe pas par référence par defaut en déclarant les types ?
Vous n’avez pas trouvé la réponse que vous recherchez ?