IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Ajout d'un objet dans une classe


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    95
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 95
    Points : 60
    Points
    60
    Par défaut Ajout d'un objet dans une classe
    Bonjour,

    J'ai suivi ce tutoriel :

    http://silkyroad.developpez.com/VBA/...asicEditor/#LV

    Qui fonctionne très bien. Je l'ai simplement adapté pour afficher dynamiquement un certain nombre de boutton à la place des checkbox. Cela marche également très bien. Mais lorsque j'arrive au moment ou j'ajoute les objets créés dans ma classe, j'obtiens le message d'erreur 424 : "objet requis"

    voilà mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    Private Sub CommandButton1_Click()
     
    Set con = connexion
     
    'get_nombre_de_boutton (con)
     
     
    Dim Obj As Control
    Dim Cl As Classe1
    Dim i As Integer
     
    Set Collect = New Collection
     
    For i = 1 To get_nombre_de_boutton(con) 'boucle pour la création des boutons
        Set Obj = Me.Controls.Add("forms.CommandButton.1")
        With Obj
            .Name = "monButton" & i
            .Object.Caption = "le texte" & i
            .Left = 140
            .Top = 30 * i + 10
            .Width = 60
            .Height = 20
        End With
     
        'ajout de l'objet dans la classe
        Set Cl = New Classe1
        Set C1.CButton = Obj
        Collect.Add Cl
    Next i
     
     
    End Sub
    Avec la classe qui va avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Option Explicit
     
    Public WithEvents CButton As MSForms.CommandButton
     
    'Exemple pour gérer l'évènement clic sur les objets type CheckBox
    Private Sub CButton_Click()
        'cet exemple affiche le nom et la valeur de l'objet cliqué
        MsgBox CButton.Name & ": " & CButton.Name
    End Sub

    Je ne comprend pas pourquoi j'obtiens cette erreur. Elle survient à la ligne :

    Set C1.CButton = Obj

    J'ai pourtant bien créé mon objet, alors pourquoi est ce que l'interpreteur me dit qu'il est requis...?

    Sinon comme il est dit dans le tutoriel j'ai également mit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Option Explicit
    Public Collect As Collection
    dans un module standard, et au passage je ne comprends pas pourquoi je dois déclarer ma collection dans un module à part. Pourquoi je ne peux pas déclarer ma collection en même temps que mon "Set Collect = New Collection".



    Merci pour votre aide.

  2. #2
    Membre régulier
    Avatar de wape
    Profil pro
    Inscrit en
    Février 2003
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2003
    Messages : 90
    Points : 123
    Points
    123
    Par défaut
    Bonjour,

    L'objet ne s'appelle pas C1 (C et chiffre 1), mais Cl (C et lettre l)

    wape

  3. #3
    Membre du Club
    Inscrit en
    Mars 2006
    Messages
    95
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 95
    Points : 60
    Points
    60
    Par défaut
    arg! j'ai du effacer par erreur le L et remplacer par un 1...

    Merci beaucoup !!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ajout d'objet dans une classe
    Par Zorgloub dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 02/02/2008, 21h04
  2. Méthode non acceptée : ajout d'un objet dans une collection
    Par Nzs26 dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 09/11/2007, 19h31
  3. list d'objet dans une classe
    Par wadcyr8_197 dans le forum C++
    Réponses: 10
    Dernier message: 04/07/2007, 15h34
  4. Réponses: 8
    Dernier message: 12/04/2007, 11h32
  5. [POO] import d'objet dans une classe
    Par wdionysos dans le forum Langage
    Réponses: 3
    Dernier message: 01/04/2006, 21h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo