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 :

Rendre visible une textbox dans une fonction (Utilisation incorrecte de null)


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2015
    Messages : 51
    Par défaut Rendre visible une textbox dans une fonction (Utilisation incorrecte de null)
    Bonjour,

    Je n'arrive pas a modifier la visibilité d'une textbox dans une fonction, la textbox dans la fonction étant une variable.

    En fait il n'arrive pas à detecter la textbox, il renvoie utilisation incorrecte de null.
    Ma fonction est :

    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
    Function Add_line(Case_précédente As Integer, case_1_ligne As Integer, case_2_ligne As Integer, case_3_ligne As Integer, case_4_ligne As Integer)
     
     
    If Not IsNull(Case_précédente) And Case_précédente.Visible = True Then
     
    case_1_ligne.Visible = True
    case_2_ligne.Visible = True
    case_3_ligne.Visible = True
    case_4_ligne.Visible = True
     
    Else
     
    case_1_ligne.Visible = False
    case_2_ligne.Visible = False
    case_3_ligne.Visible = False
    case_4_ligne.Visible = False
     
    End If
     
     
    End Function
    Et son appel dans le 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
     
     
    '######################################################DECLARATION DES VARIABLES######################################################################
     
    Dim Case_précédente As Integer
    Dim case_1_ligne As Integer
    Dim case_2_ligne As Integer
    Dim case_3_ligne As Integer
    Dim case_4_ligne As Integer
     
     
    '######################################################AJOUT DE LIGNE######################################################################
     
    '######################################################Ligne 2#############################################################################
     
    Case_précédente = Txt_à_diam_1
    case_1_ligne = Txt_De_diam_2
    case_2_ligne = Txt_à_diam_2
    case_3_ligne = Txt_diam_mm_diam_2
    case_4_ligne = Txt_diam_pouces_diam_2
     
    Call Add_line(Case_précédente, case_1_ligne, case_2_ligne, case_3_ligne, case_4_ligne)
    Sachant que textbox.value fonctionne très bien dans une autre fonction, il prend bien la valeur de la textbox défini comme variable, c'est juste pour afficher ou masquer la textbox qu'il n'y arrive pas.

    Merci d'avance.

  2. #2
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 849
    Par défaut
    Bonjour,

    La propriété Visible est applicable à un contrôle d'un formulaire ou d'un état.
    Toi, tu définis tes case_X_ligne comme étant du Numérique. Essaie :

    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
    Function Add_line(Case_précédente As Control, case_1_ligne As Control, case_2_ligne As Control, case_3_ligne As Control, case_4_ligne As Control)
     
    If Not IsNull(Case_précédente) And Case_précédente.Visible = True Then
     
    case_1_ligne.Visible = True
    case_2_ligne.Visible = True
    case_3_ligne.Visible = True
    case_4_ligne.Visible = True
     
    Else
     
    case_1_ligne.Visible = False
    case_2_ligne.Visible = False
    case_3_ligne.Visible = False
    case_4_ligne.Visible = False
     
    End If
    End Function


    Cordialement,
    EDIT : Code modifié, un END FUNCTION qui faisait désordre, n'étant pas dans les balises

  3. #3
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2015
    Messages : 51
    Par défaut
    Bonjour,

    Il me renvoie Variable objet ou variable de bloc with non définie en me surlignant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
     
    Case_précédente = Txt_à_diam_1
    case_1_ligne = Txt_De_diam_2
    case_2_ligne = Txt_à_diam_2
    case_3_ligne = Txt_diam_mm_diam_2
    case_4_ligne = Txt_diam_pouces_diam_2
    dans mon appel de la fonction.
    J'ai essayer avec variant également à la place de control et il me dit que l'objet est introuvable

  4. #4
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 849
    Par défaut
    Il faut aussi modifier les types des variables dans la déclaration des variables :

    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
    '######################################################DECLARATION DES VARIABLES######################################################################
     
    Dim Case_précédente As Control
    Dim case_1_ligne As Control
    Dim case_2_ligne As Control
    Dim case_3_ligne As Control
    Dim case_4_ligne As Control
     
     
    '######################################################AJOUT DE LIGNE######################################################################
     
    '######################################################Ligne 2#############################################################################
     
    Case_précédente = Txt_à_diam_1
    case_1_ligne = Txt_De_diam_2
    case_2_ligne = Txt_à_diam_2
    case_3_ligne = Txt_diam_mm_diam_2
    case_4_ligne = Txt_diam_pouces_diam_2
     
    Call Add_line(Case_précédente, case_1_ligne, case_2_ligne, case_3_ligne, case_4_ligne)
    Cordialement,

  5. #5
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Mai 2015
    Messages : 51
    Par défaut
    Bien sur, je l'avais fait, et ca a renvoyé l'erreur que j'ai énoncé au dessus.

  6. #6
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 849
    Par défaut
    Bonsoir,

    Tu appelles ta fonction sur quel évènement de quel contrôle parce qu'on ne le voit pas dans ton code initial ?

    Cordialement,

Discussions similaires

  1. Réponses: 7
    Dernier message: 25/03/2011, 10h52
  2. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  3. [XL-2007] Afficher une checkbox dans une feuille si une checkbox d'une autre feuille est cochée
    Par JessieCoutas dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/08/2009, 13h35
  4. Envoyer une formulaire dans une page dans une Frame
    Par zooffy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/06/2007, 10h13
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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