Cobj - retourne l'objet à partir d'un string

Soyez le premier à donner votre avis sur cette source.

Snippet vu 5 336 fois - Téléchargée 104 fois

Contenu du snippet

C'est une petite fonction utile surtout quand on utlise CallByName.
Ca évite de spécifier l'objet directement, on peut maintenant le spécifier en string

Ex:

CallByName Cobj(LeNomDeTaFonction), blablabla...

Source / Exemple :


Private Function CObj(ByVal Name As String) As Object
    
    Dim frm As Form, Ctrl As Control
    
    For Each frm In Forms
        If frm.Name = Name Then
            Set CObj = frm
            Exit Function
        End If
        For Each Ctrl In frm.Controls
            If Ctrl.Name = Name Then
                Set CObj = Ctrl
                Exit Function
            End If
        Next Ctrl
    Next frm
    
End Function

A voir également

Ajouter un commentaire

Commentaires

Messages postés
70
Date d'inscription
jeudi 26 juillet 2007
Statut
Membre
Dernière intervention
20 janvier 2011

Bonjour,

Je vois que ce code date un peu, mais il peut beaucoup m'aider :)
Je vois aussi que Renfield avait fait une remarque importante : cela ne gere pas la from. cela regarde partout.

Or dans mon projet c'est essentiel vu que ce sont deja des form généré, donc avec les memes nom de label / command...

Es qu'il faut mieux passer un 2eme parametre avec le nom de la form ? ou faire un "form2.command1" ?
Et surtout es possible de faire plutot un Me.label1 dans ce genre de parametre ?

Es que quelqu'un peut me guider ?

merci bien :)
Messages postés
2814
Date d'inscription
mardi 15 avril 2003
Statut
Membre
Dernière intervention
2 juin 2020
27
Renfield à raison ça oblige à nommer differament tout les controles du projet, mais sinon c'est une fonction assez utile.
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
62
Gaffe, y'a un gros soucis, dans ta source...

si tu fais

CObj ( "Command1" )

tu sais pas sur quelle form il va regarder....
faudrais que tu gères par exemple CObj ( "Form2.Command1" )
Messages postés
2226
Date d'inscription
dimanche 5 octobre 2003
Statut
Modérateur
Dernière intervention
18 novembre 2010
13
@Frank150 : dura lex sed lex, merci de suivre les regles =)
@PCPT : tu peux meme dire "VbFrance DEGORGE de tant de "petites sources..."
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
35
VbFrance regorge de tant de "petites sources" qu'il en devient presque impossible de trouver ce qu'on veut...
le fonctionnement est maintenant le suivant : on dépose ici un code (un "vrai", plus sous moins complet mais assez conséquent), et sur Codyx c'est les snippets, les fonctions, les... "sources" de peu de lignes

tu peux t'inscrire sur Codyx avec le même pseudo, ton code apparaîtra sur la page d'accueil de VbFrance et de CodeS-SourceS
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.