Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/12/2011, 16h07   #1
Invité régulier
 
Inscription : février 2011
Messages : 50
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 50
Points : 7
Points : 7
Par défaut Récupérer valeur du label cliqué

Bonjour,

Comment récupérer la valeur d'un label sur lequel on a cliqué ?

Pour l'instant je fonctionne avec ça :
Mais je suis obligé de recopier le code dans chaque label et c'est chiant.

Mes labels sont numérotés de 1 à 30.

Merci
AidezMoiSvp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2011, 16h27   #2
Expert Confirmé
 
Avatar de patricktoulon
 
patrick
Inscription : avril 2009
Messages : 1 829
Détails du profil
Informations personnelles :
Nom : patrick
Âge : 42
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Secteur : Bâtiment

Informations forums :
Inscription : avril 2009
Messages : 1 829
Points : 2 857
Points : 2 857
Envoyer un message via MSN à patricktoulon
Par défaut heu...!!!

bonjour

il va te falloir utiliser un classe gérant les évènement des controls

dans cette classe tu intégrera tout tes controls labels

ainsi la classe se substituera au évènement classique dans le module du userform

regarde dans ma signature en bas de mes messages il y a le lien sur l'effet mouse in out sur les boutons dans un userform
tu pourrais t'en inspirer

au plaisir
__________________
mes fichiers dans les contributions:
mon formulaire mail avec CDO en vba et mon formulaire mail avec CDO en vbs dans un HTA
mon nouveau mouse in out pour les boutons dans un userform
mon addin pour prendre un cliché de selection de cellules

si ton problème est résolu n'oublie pas de pointer :résolu:ça peut servir aux autres
et n'oublie pas de voter
patricktoulon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2011, 17h17   #3
Expert Confirmé
 
Avatar de patricktoulon
 
patrick
Inscription : avril 2009
Messages : 1 829
Détails du profil
Informations personnelles :
Nom : patrick
Âge : 42
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Secteur : Bâtiment

Informations forums :
Inscription : avril 2009
Messages : 1 829
Points : 2 857
Points : 2 857
Envoyer un message via MSN à patricktoulon
Par défaut re

maintenant en faisant une classe comme ceci:

dans un module standard

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Option Explicit
Public labelo() As New EFFET_label
Public ctrls As Variant    'variable qui va servir a memoriser tout les bouton
Public maform As Object    'variable qui va servir a memoriser l'userform
Public e As Long
Sub integration_des_labels_dans_la_classe()
    For Each ctrls In maform.Controls
        'on teste si le type de control est un bouton
        If TypeName(ctrls) = "Label" Then
            e = e + 1    'on incremente la variablee
            'on regroupe tout les bouton dans la classe
            ReDim Preserve labelo(1 To e)
            Set labelo(e).GroupeLabel = ctrls
        End If
    Next
End Sub
maintenant dans un module classe nommé EFFET_label

Code :
1
2
3
4
Public WithEvents GroupeLabel As MSForms.Label
Public Sub GroupeLabel_Click()
MsgBox GroupeLabel.Caption
End Sub
maintenant dans le activate de l'userform
Code :
1
2
3
4
Private Sub UserForm_Activate()
Set maform = Me
integration_des_labels_dans_la_classe
End Sub
maintenant a chaque click sur un label il aura le msgbox


au plaisir
__________________
mes fichiers dans les contributions:
mon formulaire mail avec CDO en vba et mon formulaire mail avec CDO en vbs dans un HTA
mon nouveau mouse in out pour les boutons dans un userform
mon addin pour prendre un cliché de selection de cellules

si ton problème est résolu n'oublie pas de pointer :résolu:ça peut servir aux autres
et n'oublie pas de voter
patricktoulon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2011, 17h20   #4
Invité régulier
 
Inscription : février 2011
Messages : 50
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 50
Points : 7
Points : 7
Service de lux avec tous les codes fournis.

Merci beaucoup.
Répond parfaitement à ma demande.
AidezMoiSvp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2011, 17h24   #5
Expert Confirmé
 
Avatar de patricktoulon
 
patrick
Inscription : avril 2009
Messages : 1 829
Détails du profil
Informations personnelles :
Nom : patrick
Âge : 42
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Secteur : Bâtiment

Informations forums :
Inscription : avril 2009
Messages : 1 829
Points : 2 857
Points : 2 857
Envoyer un message via MSN à patricktoulon
Par défaut re

bonjour ya pas de quoi

seulement j'ose espéré que tu te contentera pas de copier coller

je l'ai fait le plus simple possible pour que tu puisse en comprendre le fonctionnement de base

au plaisir
__________________
mes fichiers dans les contributions:
mon formulaire mail avec CDO en vba et mon formulaire mail avec CDO en vbs dans un HTA
mon nouveau mouse in out pour les boutons dans un userform
mon addin pour prendre un cliché de selection de cellules

si ton problème est résolu n'oublie pas de pointer :résolu:ça peut servir aux autres
et n'oublie pas de voter
patricktoulon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2011, 17h31   #6
Invité régulier
 
Inscription : février 2011
Messages : 50
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 50
Points : 7
Points : 7
C'est ce que je faisais au début dans l'empressement. Mais maintenant j'essaie de comprendre C'est mieux pour avancer !

Je vais essayer de la comprendre et de le modifier pour y intégrer d'autres éléments.

Encore merci.
AidezMoiSvp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/12/2011, 17h57   #7
Expert Confirmé
 
Avatar de patricktoulon
 
patrick
Inscription : avril 2009
Messages : 1 829
Détails du profil
Informations personnelles :
Nom : patrick
Âge : 42
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Secteur : Bâtiment

Informations forums :
Inscription : avril 2009
Messages : 1 829
Points : 2 857
Points : 2 857
Envoyer un message via MSN à patricktoulon
Par défaut re

re

quel autre éléments veux tu ajouter

si tu parle d'autre type de controls il te suffit de répéter l'opération en changeant le type et les noms(variables)voir meme dans le meme modules

si tu a besoins d'aide n'hésite pas
au plaisir
__________________
mes fichiers dans les contributions:
mon formulaire mail avec CDO en vba et mon formulaire mail avec CDO en vbs dans un HTA
mon nouveau mouse in out pour les boutons dans un userform
mon addin pour prendre un cliché de selection de cellules

si ton problème est résolu n'oublie pas de pointer :résolu:ça peut servir aux autres
et n'oublie pas de voter
patricktoulon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/01/2012, 16h12   #8
Invité régulier
 
Inscription : février 2011
Messages : 50
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 50
Points : 7
Points : 7
Bonjour,

J'ai regardé un peu plus en détail le code.
Je l'ai modifié pour que quand on clique sur les boutons de USF1, USF2 s'affiche avec des valeurs différentes dans ses labels. Sans doute facile pour vous mais pour moi... Cela m'a permis de mieux appréhender le code.

Par contre, je n'arrive pas à boucler que sur certains boutons de USF1.
En effet, tous mes boutons génèrent USF2.

je voudrais que seuls les boutons 2 à 8 génèrent USF2.

Comment faire ?

Je comprends la logique des modules de classe mais j'avoue que le code du module standard m'interroge notamment cette partie

Code :
1
2
3
4
            e = e + 1    'on incremente la variablee
            'on regroupe tout les bouton dans la classe
            ReDim Preserve labelo(1 To e)
            Set labelo(e).GroupeLabel = ctrls
Merci
AidezMoiSvp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/01/2012, 17h20   #9
Expert Confirmé
 
Avatar de patricktoulon
 
patrick
Inscription : avril 2009
Messages : 1 829
Détails du profil
Informations personnelles :
Nom : patrick
Âge : 42
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Secteur : Bâtiment

Informations forums :
Inscription : avril 2009
Messages : 1 829
Points : 2 857
Points : 2 857
Envoyer un message via MSN à patricktoulon
Par défaut re

bonjour

dans le module classe et dans la fonction tu met une condit io "if " tout simplement


au plaisir
__________________
mes fichiers dans les contributions:
mon formulaire mail avec CDO en vba et mon formulaire mail avec CDO en vbs dans un HTA
mon nouveau mouse in out pour les boutons dans un userform
mon addin pour prendre un cliché de selection de cellules

si ton problème est résolu n'oublie pas de pointer :résolu:ça peut servir aux autres
et n'oublie pas de voter
patricktoulon est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h51.


 
 
 
 
Partenaires

Hébergement Web