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 :

Suppression Labels d'un Userform


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 4
    Par défaut Suppression Labels d'un Userform
    Bonjour,

    Je cherche à supprimer x labels générés dynamiquement dans un Frame.

    Je parviens à masquer ces labels, mais pas à les supprimer.

    les labels sont créés au préalable de la façon suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Set obj = Me.F_Resultats.Controls.Add("forms.label.1")
    With obj
        .Name = "L_Result_" & ComptResults
        .Caption = Cells(Li, Col)    
    End With

    Voici le code pour masquer les labels :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For Each obj In Me.F_Resultats.Controls
        If TypeOf obj Is MSForms.Label Then obj.Visible = False
    Next

    Merci pour votre aide !

  2. #2
    Membre Expert Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Par défaut
    bonjour Eric_69 le forum essai avec Remove

    exemple suppression de 6 labels crées dynamiquement!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub CommandButton2_Click()
    Dim i As Byte
       For i = 1 To 6
         Controls.Remove "label" & i
      Next
    End Sub

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 4
    Par défaut Même problème...
    Pas moyen de supprimer ces fameux labels...

    J'obtiens ceci :

    Erreur d'exécution, argument non valide

    voici la procédure complète :

    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
    33
    34
    35
    36
    37
    38
    Private Sub Verif_BD() 'recherche de noms pouvant correspondre à la requête de l'utilisateur
        Dim Li, Col As Integer
        Dim Nom As String
        Dim obj As Control
        Li = 2
        Col = 2 'départ de la recherche cellule B2 -> 1er nom de la BD
     
        For Each obj In Me.F_Resultats.Controls
            'MsgBox obj.Name
            Controls.Remove "L_Result_" & ComptResults
        Next
     
        'ComptResults = 0
     
        Worksheets("BD").Activate
        While Not IsEmpty(Cells(Li, Col)) 'tant que 1ère cell. vide pas atteinte => il existe un enregistrement.
            'si les x 1ers caract. lus dans la cell. (x = nb de caract saisis par l'utilisateur)
            'correspondent aux x premiers caractères saisis par l'utilisateur.
            'ComptResults comptabilise les occurences trouvées -> info nécessaire pour redimensionner l'UF
            'et le frame.
            If Left(Cells(Li, Col), NbCar) = Saisie Then
                Set obj = Me.F_Resultats.Controls.Add("forms.label.1")
                With obj
                    .Name = "L_Result_" & ComptResults
                    .Caption = Cells(Li, Col)
                    .BackColor = RGB(0, 255, 0)
                    .Height = 9.75
                    .Left = 6
                    .Top = 11.25 + (11.25 * ComptResults * 2)
                End With
                'MsgBox obj.Name
                ComptResults = ComptResults + 1
                Li = Li + 1 'test ligne suivante
            Else
                Li = Li + 1 'test ligne suivante
            End If
        Wend
    End Sub

Discussions similaires

  1. [XL-2003] Comment assigner la valeur d'une cellule au label d'un UserForm?
    Par As.Plate dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 13/08/2014, 12h08
  2. [XL-2010] Suppression de données via Userform
    Par toniodeb dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 09/10/2012, 17h05
  3. [XL-2010] nommer une serie de labels dans un userform
    Par norman5 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/03/2012, 12h56
  4. [XL-2000] Renommer un Label dans un Userform
    Par Philindy26 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 28/08/2011, 12h52
  5. Format label dans un userform
    Par fmris dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/09/2007, 17h41

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