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 :

Zone Commentaires dans Userform


Sujet :

Macros et VBA Excel

Vue hybride

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

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut Zone Commentaires dans Userform
    Bonjour,

    Je souhaiterais savoir s'il est possible (je le pense, mais....j'ai besoin d'un petit coup de main...) de faire une zone commentaire dans un Userform....

    Je m'explique : j'ai un Userform, je souhaiterai, au passage de la souris par exemple, faire apparaitre une zone commentaire, comme on le fait dans une feuille excel....

    Dans le Userform, il y a des combobox, des listes (en référence à des plages contenues dans une feuille), des zone texte, etc....c'est assez lourd visuellement, donc je souhaiterais alléger le tout....

    Par exemple : dans une Textbox, il y a le nom/prénom d'une personne, j'aimerai qu'en passant sur un bouton (ou autre, l'idéal serait sur la textbox directement...), s'affiche ses coordonnées (téléphone, adresse, ville, code postal, etc....). En effet, ces coordonnées ne sont pas principalement prioritaires (donc "inutiles" dans l'affichage de l'Userform), mais si un collègue veut avoir des informations complémentaires, un simple passage souris lui donnerait les infos....

    Les infos contenues dans la zone commentaires (téléphone, adresse, etc...) seraient issues de la feuil2 A2:A10

    Une petite idée et/ou aide ?

    En vous remerciant,

  2. #2
    Membre Expert Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Par défaut
    Bonsoir Éric, bonsoir le forum,

    Regarde la propriété [ControlTipText]. Avec un code du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim I As Byte
    Dim CMT As String
     
    For I = 2 To 10
         CMT = IIF(CMT = "", Sheets("Feuil2").Cells(I, 1).Value, CMT & " - " & Sheets("Feuil2").Cells(I, 1).Value)
    Next I
    Me.TextBox1.ControlTipText = CMT

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Merci Thautheme,

    Toujours là pour rendre service, merci

    Oui, ça correspond "presque" au résultat recherché....en fait, j'ai les données séparées par "-", il faudrait que je puisse avoir en liste....j'ai essayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Dim I As Byte
    Dim j As Byte
    Dim CMT(10)
     
    For j = 1 To 10
    For I = 1 To 10
         CMT(j) = IIf(CMT(j) = "", Sheets("Feuil2").Cells(I, 1).Value, CMT(j))
    Next I
     
    Me.TextBox1.ControlTipText = CMT(j)
    Next j
    mais je n'ai que "adresse" qui s'affiche....
    Bon, tu me diras, normal, vu que la variable J reste toujours la même (= 1), mais aurais-tu une autre solution ?

    En te remerciant,

  4. #4
    Membre Expert Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Par défaut
    Re,

    En liste ?! Si tu veux dire sur plusieurs lignes j'ai essayé ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim I As Byte
    Dim CMT As String
     
    For I = 2 To 10
         CMT = IIf(CMT = "", Sheets("Feuil2").Cells(I, 1).Value, CMT & Chr(13) & Sheets("Feuil2").Cells(I, 1).Value)
    Next I
    Me.TextBox1.ControlTipText = CMT
    Avec aussi Chr(10) (saut de ligne) mais c'est toujours sur une seule ligne. J'ai l'impression que la propriété [ControlTipText] n'accepte qu'une seule et unique ligne. L'aide VBA ne dit rien à ce sujet. Ne te reste plus qu'à attendre le passage d'un balèze de ce forum... Et ils sont nombreux !
    Sinon il te faut rajouter une ComboBox avec la suite des données que l'utilisateur pourras faire défiler si besoin...

  5. #5
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    À vrai dire, je n'ai pas testé. J'ai juste regardé.

    Thauteme a quelques concaténations (opérateur & ) que toi tu n'as pas mis. Si je ne dis pas de connerie ton j va te donner une valeur unique et pas un "assemblage" de valeurs.

    Ceci dit, je n'ai pas fait de recherche, mais je me demande s'il n'y a pas une limite au nombre de caractères que l'on peut mettre dans un ControlTipText.

    Ajout

    Tautheme, désolé pour le télescopage.

    Je viens de penser à une chose. Tu pourrais essayer un Textbox (invisible/visible et locked = true, si tu veux) pour afficher tes informations complémentaires.

  6. #6
    Membre Expert Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Par défaut
    Re,

    Citation Envoyé par clementmarcotte Voir le message
    Si je ne dis pas de connerie

    Arf ! Trop tard... C'est dit !

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Merci clementmarcotte (la connerie du "J", c'est moi qui l'ai faite... ),
    Merci Thautheme,

    J'ai essayé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.TextBox1.ControlTipText = Sheets("Feuil2").Range(Cells(2, 1), Cells(10, 1))
    mais cela ne fonctionne pas....

    Oui, c'est sous forme de liste que ce serait l'idéal...
    A2 = Téléphone
    A3 = Adresse
    A4 = Ville
    etc....
    ce n'est QUE de la consultation....

    J'ai essayé ton code Thautheme, cela commence à ressembler à ce que je cherche (je "vois" bien téléphone, adresse, ville, etc....sous forme de ligne), mais pour une meilleure lecture, il faudrait que dans le commentaire cela apparaisse sous format :

    Téléphone : 06.......
    Adresse : le bonheur sur terre
    Ville : Saint mandrier
    etc jusqu'à la ligne 10

    (j'habite Saint Mandrier, donc.....)

    (et sans passer par une combobox, le survol souris que tu m'as présenté est trop top !!!!, il faudrait juste qu'il puisse apparaitre sous forme de liste.....
    En colonne A, on pourrait mettre les entêtes (Téléphone, Adresse, etc....) et en colonne B, les valeurs (06.....,Le bonheur etc....)

    Après plusieurs essais, j'ai fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub UserForm_Initialize()
     
    Dim I As Byte
    Dim CMT As String
     
    For I = 2 To 10
         CMT = IIf(CMT = "", Sheets("Feuil2").Cells(I, 1).Value & Sheets("Feuil2").Cells(I, 2).Value, CMT & Chr(13))
    Next I
    Me.TextBox1.ControlTipText = CMT
    End Sub
    et j'arrive à avoir :
    Adresse : Saint Mandrier
    mais je n'ai pas les autres lignes......

    En vous remerciant pour votre aide,

  8. #8
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Ayé, j'ai trouvé ..... :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Private Sub UserForm_Initialize()
     
    Dim I As Byte
    Dim CMT As String
     
    For I = 2 To 10
         CMT = IIf(CMT = "", Sheets("Feuil2").Cells(I, 1).Value & Sheets("Feuil2").Cells(I, 2).Value, CMT & Chr(13) & Sheets("Feuil2").Cells(I, 1).Value & Sheets("Feuil2").Cells(I, 2).Value)
    Next I
    Me.TextBox1.ControlTipText = CMT
    End Sub
    cela fonctionne nickel !!!!!

    Merci Thautheme, tu m'as ouvert la voie.....
    Merci,

    A+ pour de prochaines aventures....

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

Discussions similaires

  1. zone de liste dans userform
    Par orcinus dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 10/09/2013, 21h41
  2. Des commentaires dans le fichier Boot.ini
    Par Furius dans le forum Windows
    Réponses: 6
    Dernier message: 27/10/2005, 10h41
  3. Comment créer un commentaire dans une cellule d'Excel ?
    Par WebPac dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 26/04/2005, 09h23
  4. [CR]Comment faire de longs commentaires dans le code
    Par liberio dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 07/06/2004, 20h45
  5. [VBA-E]modifier les attributs d'un commentaire dans une cellule
    Par Olivier vb dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 15/03/2004, 10h26

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