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

VBA Access Discussion :

Property Set ignoré


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Le Sage
    Homme Profil pro
    Formateur Conseil en Bureautique et CMS, Développeur VBA, Power Query, Power Pivot
    Inscrit en
    Novembre 2009
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Formateur Conseil en Bureautique et CMS, Développeur VBA, Power Query, Power Pivot
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2009
    Messages : 218
    Par défaut Property Set ignoré
    Bonjour à toutes et tous !

    Comme indiqué dans le sujet...

    Code dans un module de Classe nommé Zoom : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    ...
    ...
    Private objControle As Control
    ...
    ...
     
    ' Propriete Controle
    Property Set Controle(objControleSet As Object)
        Set objControle = objControleSet
    End Property
     
    Property Get Controle() As Object
        Controle = objControle
    End Property

    Code dans un module standard : 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
    Option Compare Database
     
    Public objZoom As Zoom
     
    Public Sub ZoomerContenu(ByRef ObjetControle As Object, _
                             Optional ByVal Modifiable As Boolean = False)
     
        Dim objZoomTemp As New Zoom
     
        With objZoomTemp
            .Controle = ObjetControle
            .ContenuOriginal = ObjetControle.Value
            .Modifiable = Modifiable
        End With
     
        Set objZoom = objZoomTemp
     
        DoCmd.OpenForm "F_ZOOM"
     
        With Forms("F_ZOOM")
            .Controls("txtZoom").Value = objZoom.ContenuOriginal
        End With
     
        Set objZoomTemp = Nothing
    End Sub


    Code d'un événement de TextBox dans un formulaire : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub txtConsignes_DblClick(Cancel As Integer)
        Dim objControle As Object
     
        Set objControle = Forms("F_LOG_BOOK_EN_TETE").Form("SF_LOG_BOOK_NIVEAU").Form("SSF_LOG_BOOK_CORPS").Controls("txtConsignes")
     
        ZoomerContenu objControle
    End Sub
    La chose étrange qui se produit est qu'arrivé à la ligne 11 de ma procédure ZoomerContenu (second bloc de code ci-dessus), une erreur se produit (objet non défini), et lorsque j'exécute en pas à pas, cette ligne censée affecter la propriété Controle de l'objet objZoomTemp active Property Get au lieu de Property Set

    Effectivement, s'il essaie de lire la propriété au lieu de la définir...

    Merci d'avance pour vos réponses !
    Eric

  2. #2
    Membre éclairé Avatar de Le Sage
    Homme Profil pro
    Formateur Conseil en Bureautique et CMS, Développeur VBA, Power Query, Power Pivot
    Inscrit en
    Novembre 2009
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Formateur Conseil en Bureautique et CMS, Développeur VBA, Power Query, Power Pivot
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2009
    Messages : 218
    Par défaut
    Re-bonjour.

    N'ayant pas réussi à supprimer ce sujet, je reviens lui apporter une réponse pour le clore :

    S'agissant d'une propriété de type objet, il faut la valoriser avec le mot clef Set :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        With objZoomTemp
            .Controle = ObjetControle        ' Syntaxe erronnée causant mon erreur... et ma honte !
            Set .Controle = ObjetControle  ' Syntaxe correcte et fonctionnelle
            .ContenuOriginal = ObjetControle.Value
            .Modifiable = Modifiable
        End With
    Ceci dit, mon erreur pourrait bien servir à d'autres, alors profitez-en !

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

Discussions similaires

  1. Properties setting problème
    Par Panaméen dans le forum Windows Forms
    Réponses: 5
    Dernier message: 29/10/2009, 16h49
  2. Les Property settings
    Par Gregory.M dans le forum Windows Presentation Foundation
    Réponses: 8
    Dernier message: 24/06/2009, 23h30
  3. Acces à app.Properties.Settings
    Par olibara dans le forum C#
    Réponses: 4
    Dernier message: 28/10/2008, 20h52
  4. Comment modifier Properties.Settings ?
    Par Sunsawe dans le forum C#
    Réponses: 3
    Dernier message: 02/08/2007, 14h37
  5. setting ignorés lors du changement de lnf
    Par komando dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 16/02/2006, 09h01

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