Accéder a un objet a partir de son nom [Résolu]

Messages postés
84
Date d'inscription
jeudi 6 juillet 2006
Statut
Membre
Dernière intervention
6 janvier 2010
- - Dernière réponse : Vianneyp
Messages postés
84
Date d'inscription
jeudi 6 juillet 2006
Statut
Membre
Dernière intervention
6 janvier 2010
- 9 juin 2008 à 10:38
Bonsoir,
Je vais devoir solliciter votre aide une fois encore :)
J'ai crée un control personnalisé et j'en ai disposé  un certain nombre une feuille. Maintenant je souhaiterai pouvoir accéder aux propriétés de l'un d'entre eux connaissant son nom (stocké dans une srting).Il faudrai donc que je puisse modifier une même propriété a l'un de mes x controls personnalisés.D'après ce que j'ai compris on ne peut pas,en vb6,convertir directement une string en object.

Je suis tombé sur la source suivante :
    Dim FrmObj As Form, TempObj As Form
    Dim StrVal As String
    Dim Find As Boolean

    Find = False
    StrVal = "Form2"
   
    For Each TempObj In Forms
        If TempObj.Name = StrVal Then
            Set FrmObj = TempObj
            Find = True
        End If
    Next
 
    If Find = True Then FrmObj.Show

Que je n'arrive pas a adapter :

    For Each TempObj In Forms
        If TempObj.Name = LNode Then
            Set FrmObj = TempObj
            FrmObj.Tag = "OK"
        End If
    Next

En faite il ne trouve même pas la propriété name de TempObj avec mon control.
Qu'est ce que je fait de travers ?
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
61
3
Merci
Salut
Le principe reste le même.
Dans l'exemple, TempObj est dimensionné comme une Form.
Toi tu cherches un autre objet, un control peronnalisé (on ne sait pas quoi) : Suffit donc de le dimensionner du même type et de faire la recherche parmi Controls
au lieu de Forms


    Dim TempObj As Object
    For Each TempObj In maForme.Controls
   ...

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 144 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_Jack
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
18
3
Merci
Bonjour,

Controls("lecontrole") se réfère au contrôle nommé lecontôle.

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 144 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jmfmarques
Messages postés
84
Date d'inscription
jeudi 6 juillet 2006
Statut
Membre
Dernière intervention
6 janvier 2010
0
Merci
Merci pour controls() je ne connaissait pas .
Commenter la réponse de Vianneyp