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

Excel Discussion :

Creer des classes en vba-E


Sujet :

Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Par défaut Creer des classes en vba-E
    Bonjour

    je souhaite me mettre a l'objet car j'ai un projet VBA a faire.
    J'ai donc créé une classe CLicencie qui me permettrait d'ajouter dans une feuille excel les données d'un userform d'ajout des licencies.

    Dans mon userform:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub CommandButton1_Click()
    
    Dim obj_Licencie As CLicencie
    
    Set obj_Licencie = New CLicencie
    obj_Licencie.str_Nom = Me.TextBox1.Value
    obj_Licencie.Creer_Licence
    
    End Sub
    Dans ma classe CLicencie

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Public str_Nom As String
     
    Sub Creer_Licence()
     
    Application.ThisWorkbook.Sheets("Liste salarie").Range("A1") = str_Nom
    'MsgBox (str_Nom)
     
    End Sub
    mais quand je met toto dans ma textbox et que je valide il me marque

    Erreur d'execution 9

    L'indice n'appartient pas a la selection.
    et me surligne la ligne écrite en gras

    Mais quand je remplace dans ma classe le application.thisworkbook... par le msgbox il m'affiche bien la valeur de ma textbox soit "toto"

    Est ce que quelqu'un pourrait m'aider dans mon probleme

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    393
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 393
    Par défaut
    Je pense :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ThisWorkbook.Sheets("Liste salarie").Range("A1") = Me.str_Nom

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 53
    Par défaut
    Bonjour

    J'ai essayé en mettant me.str_nom mais j'ai toujours le meme message d'erreur

    L'indice n'appartient pas a la selection

    Cordialement

  4. #4
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    et la feuille excel "Liste salarie" ..est bien dans le même classeur que ton code ..?

Discussions similaires

  1. [Débutant] Creer des classes à partir d'une matrice.
    Par seboututou dans le forum MATLAB
    Réponses: 1
    Dernier message: 05/10/2011, 20h49
  2. Creer des classe d'age
    Par ratatam25 dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 23/12/2008, 22h05
  3. penser objet (creer des classes )
    Par elmcherqui dans le forum C++
    Réponses: 3
    Dernier message: 10/05/2008, 22h34
  4. Importer des classes en VBA?
    Par ViPers dans le forum Access
    Réponses: 11
    Dernier message: 17/09/2006, 13h33
  5. [VBA-E] Est il possible de creer dynamiquement des controles en VBA
    Par bbkenny dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 13/08/2004, 20h04

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