begin process at 2012 02 16 15:25:41
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

VBA

 > 

création de contrôle dynamiquement


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

création de contrôle dynamiquement

mardi 20 décembre 2005 à 18:44:07 | création de contrôle dynamiquement

supers03

Bonjour à tous.

 

En fait ce que j’aimerai faire c’est créer dynamiquement des Label sur ma Form, le tout dans une macro Excel (donc c’est du VBA si j’ai bien compris)

Donc pour cela j’ai cru comprendre qu’il fallait utiliser Load, méthode très bien expliquée dans une célèbre source d’Amonbofis « AJOUTER DYNAMIQUEMENT DES CONTRÔLES », source que je n’arrive malheureusement pas à trouver.

Donc j’ai essayer de trouver des petites infos par-ci par là sur le forum, pour enfin essayer (après avoir mis un contrôle Label1 sur ma form):

Load Label1(1)

Label1(1).Visible = True

Mais lorsque je lance la macro j’ai une erreur :

« Erreur de compilation : Nombre d’arguments incorrect ou affectation de propriétés incorrecte »

De plus j’ai vu qu’il fallait mettre la propriété Index à 0 pour le Label1, mais moi j’ai pas cette propriété, j’ai juste tabIndex(où j’ai mis la valeur 0)

Donc si quelqu’un pouvais m’aider je lui en serrai grandement reconnaissant 
Merci d'avance

mardi 20 décembre 2005 à 18:55:54 | Re : création de contrôle dynamiquement

jack

Administrateur CodeS-SourceS
Salut
L'indexation de controle n'est pas supporté sur VBA.
Je crois qu'il y a un autre moyen, mais je ne m'en souviens plus.
As-tu cherché sur le forum ? (car c'est une question fréquente)

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

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
mardi 20 décembre 2005 à 19:34:02 | Re : création de contrôle dynamiquement

CanisLupus

Membre Club Administrateur CodeS-SourceS
Salut,

Si mes souvenirs sont exacts, vois du côté de la collection Shapes :
TaFeuille.Shapes.AddOLEObject "Forms.Label.1", etc...

-------------------------------------------------
Dresseur de puces, .... normal pour un loup  !?
mardi 20 décembre 2005 à 23:51:01 | Re : création de contrôle dynamiquement

supers03

jack : en effet j'ai déjà vu cette question sur le forum, mais la réponse est toujours la même : "regarde la source d’Amonbofis" ou "utilise Load" avec des exemple qui marchent pas chez moi, surement parce que j'utilise VBA

CanisLupus : ta ligne en elle même ne marche pas chez moi, j'ai donc regardé du coté de "AddOLEObject" et j'ai trouvé un exemple avec un bouton à la place d'un label :

Dim objWorksheet As Worksheet
Set objWorksheet = ThisWorkbook.Worksheets(1)
objWorksheet.Shapes.AddOLEObject "Forms.CommandButton.1", , , , , , , 141, 28.5, 153, 27.75
   
Ce code marche chez moi, sauf que ça affiche le bouton sur la feuille de calcul et pas sur ma Form .
D'ailleur j'avais eu ce problème en voulant tracer un rectangle sur ma form, j'avais essayé

ActiveSheet.Shapes.addShape(msoShapeRectangle, 10, 10, 100, 20).Name = "le_nom"


mais pareil, le rectangle s'affiche sur la feuille de calcul et pas sur la Form.

Mes deux problèmes ont peut-être la même solution, sachant que mon but est pour les deux cas de dessiner et écrire dynamiquement sur ma Form

mercredi 21 décembre 2005 à 17:15:16 | Re : création de contrôle dynamiquement

supers03

Personne ne sait???
jack, CanisLupus, vous n'avez pas une petite idée qui puisse me mettre sur la voie? parce que j'ai vraiment besoin de rajouter des contrôle dynamiquement et j'ai du mal à croire que personne n'a essayé en VBA ...
mercredi 21 décembre 2005 à 20:34:59 | Re : création de contrôle dynamiquement

CanisLupus

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Pour une userform, c'est vrai c'est différent, une piste que je viens de tester :

Sub macro1()
Dim c As Control
    Set c = UserForm1.Controls.Add("Forms.Label.1", "toto", True)
    c.Top = 50
    c.Left = 50
    c.BackColor = vbWhite
    c.Caption = "coucou"
    UserForm1.Show
End Sub


-------------------------------------------------
Dresseur de puces, .... normal pour un loup  !?
mercredi 21 décembre 2005 à 21:43:47 | Re : création de contrôle dynamiquement

supers03

Merci beacoup c'est exactement ce que je voulais faire.

Je vais chercher voir si je peu trouver la liste de tout les controles que l'on peu ajouter, de la même manière que "Forms.Label.1"  (exemple : un rectangle)

Encore merci,

Sylvain


Cette discussion est classée dans : form, contrôle, création, label1, dynamiquement


Répondre à ce message

Sujets en rapport avec ce message

Création d'une source de données dynamiquement [ par PartyBoy ] BonjourJe lie une BD à un contrôle DataListBox par l'intermédiaire d'un contrôle adodc. J'associe au contrôle adodc une source de données système. Sur Comment creer dynamiquement un objet graphique [ par ioio ] je souhaiterai pouvoir créer un Label (par exemple) directement a partir du code, sans passer par l'étape de dessin sur le formulaire. J'emploi ce cod Création d'une form [ par smasher81 ] Bonjour, j'esseye de me créé un "chat" mais je chercher une solution pour que lorsque quelqun vous parles que une boite vous ouvre avec le début de c Pb de création de ListView en code [ par horko ] Bon alors je reussi a créer des objets de type boutons, listbox, label ... en faisantform.Controls.add "VB.control", control1,formmais avec une ListVi création un groupe de controle (boutton) dynamiquement [ par akhenaton ] salut,je suis vraiment dans la merde, je veux creer un groupe de controle mais je ne sais pas vraiment comment j'arrive à creer un seul boutton mais c Créer une form dynamiquement !!! [ par zoglub14 ] Bonjour à tous,Je voudrais ecrire un code source me permettant de générer automatiquement une Form !! que je remplierais d'un nombre aléatoire de bou Creer dynamiquement des controles(combo,test,button) [ par Bassman ] Est ce qqun a une soluce pour creer d controle dymamiquement ds une form, cad qd j'appelle cet form el me creer auto d controle de type combo ou text comment accéder à un contrôle depuis une autre form? [ par kenny76 ] Le problème est simple : je vaux changer la valeur d'un controle situé sur une form, depuis une fonction située dans un module de code. J'ai essayé no Créer des controls dynamiquement, mais sans groupe de contrôle [ par GlanduSchmoldu ] Voilà je me demandais si c'était possible de créer des contrôles pdt l'execution, mias sans avoir besoin d'un créer en dur avant (donc pas "Load Contr Créer un contrôle image dynamiquement [ par Fred ] Salut,je voudrais faire un gestionnaire d'albums photos. Sachant qu'un album peut contenir un nombre d'images indéfini, il me faut créer (et afficher)


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,092 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales