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 :

affichage d'informations autrement que par msgbox


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2007
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 95
    Points : 99
    Points
    99
    Par défaut affichage d'informations autrement que par msgbox
    Bonjour à tous.

    Encore un problème simple à vous soumettre.
    Dans une feuille excel, j'ai plein de données et je voudrais que lorsque l'utilisateur sélectionne une case, un message d'info (spécifique à la case)s'affiche.
    Mais je ne veux pas utiliser une msgbox car cela oblige l'utilisateur à cliquer dedans pour la fermer (ce qui va finir par être long et gonflant). Est-ce que quelqu'un aurait une idée sublime??

    Merci à tous

    Grrimag

  2. #2
    Membre chevronné Avatar de wilfried_42
    Homme Profil pro
    Auto-entrepreneur
    Inscrit en
    Novembre 2006
    Messages
    1 427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Auto-entrepreneur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 427
    Points : 1 900
    Points
    1 900
    Par défaut
    Bonjour

    Regarde les commentaires, associé avec une macro evennementielle, Worksheet_selectionchange

    Salutations

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Août 2007
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 95
    Points : 99
    Points
    99
    Par défaut
    Oui, ça c'est pas le problème. J'arrive sans problème à afficher ce que je veux quand l'utilisateur bouge.
    Je veux juste l'afficher autrement que par msgbox. Ci-dessous le code en question (un peu simplifié):
    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
     
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim activer As Boolean
    activer = (Feuil2.Cells(2, 1).Value = 1)
    If activer = True Then
        If Target.Column < 3 Then
            Select Case Feuil9.Cells(Target.Row, 2).Value
                Case Is = "A"
                    MsgBox "A"
                Case Else
                    MsgBox "pas K"
            End Select
        End If
    End If
    End Sub
    Merci

  4. #4
    Membre chevronné Avatar de wilfried_42
    Homme Profil pro
    Auto-entrepreneur
    Inscrit en
    Novembre 2006
    Messages
    1 427
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Auto-entrepreneur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 427
    Points : 1 900
    Points
    1 900
    Par défaut
    re:

    Tu mets dans un module, tout en haut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Public mem_select as range
    Cela permettra de supprimer le commentaire qui à été créer

    ensuite :
    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
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
          Dim activer As Boolean, comm as comment, travail as string
    ' detruit le commentaire de l'ancienne cellule si elle a fait l'objet d'un commentaire par cette procedure
          if non mem_select is nothin then mem_select.comment.delete 
          activer = (Feuil2.Cells(2, 1).Value = 1)
          If activer = True Then
    ' Met en memoire la cellule pour destruction future du commentaire
                set mem_select = target
                If Target.Column < 3 Then
                       Select Case Feuil9.Cells(Target.Row, 2).Value
                             Case Is = "A"
                                    travail =  "A"
                             Case Else
                                    travail =  "pas K"
                       End Select
                       Set comm = target.AddComment
                       comm.Text travail
                       comm.visible = true
                End If
          End If
    End Sub
    @ te lire

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Ou tu peux simplement mettre tes commentaires dans le code, dans Worksheet_SelectionChange
    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
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim Blabla
        For Each Blabla In ActiveSheet.Comments
            Blabla.Delete
        Next
        Select Case Target.Address(False, False)
            Case "D6"
                Range("D6").AddComment
                Range("D6").Comment.Text Text:="L'auteur" & Chr(10) & "blabla pour la cellule D6"
            Case "E8"
                Range("E8").AddComment
                Range("E8").Comment.Text Text:="L'auteur" & Chr(10) & "blabla pour la cellule E8"
        End Select
        Application.DisplayCommentIndicator = xlCommentAndIndicator
    End Sub
    Tu peux tester en sélectionnant les deux cellules mensionnées D6 ou E8
    A+

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Août 2007
    Messages
    95
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 95
    Points : 99
    Points
    99
    Par défaut
    Merci Wilfried, ça marche nickel!!
    dsl ousk', j'ai vu ta solution trop tard. Mais elle marche aussi, je l'ai testée.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 11/05/2010, 11h12
  2. Chemin vers clef USB autrement que par lettre de lecteur (Id ?)
    Par zax-tfh dans le forum Windows Forms
    Réponses: 2
    Dernier message: 10/03/2009, 16h16
  3. Ordonner autrement que par asc et desc
    Par phibu dans le forum Langage SQL
    Réponses: 2
    Dernier message: 20/01/2009, 17h48
  4. Accès à une propriété autrement que par .
    Par ChtiGeeX dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 12/09/2007, 01h02
  5. fileName autrement que par split ?
    Par SpaceFrog dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/06/2006, 23h48

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