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 :

Détection d'un double-clic dans un tableau croisé dynamique [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juin 2006
    Messages
    622
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 622
    Points : 156
    Points
    156
    Par défaut Détection d'un double-clic dans un tableau croisé dynamique
    Bonjour,


    Avec l'évenement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
     
    End Sub

    Comment savoir si le double clic a été fait dans une cellule normale ou dans une cellule d'un tableau croisé dynamique ?


    Comment savoir cela ?

    Merci


    Dams'

  2. #2
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Une proposition
    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
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Dim Pt As PivotTable
    Dim i As Integer
     
    i = ActiveSheet.PivotTables.Count
    If i > 0 Then
        Set Pt = ActiveSheet.PivotTables(1)
        If Not Intersect(Target, Pt.TableRange2) Is Nothing Then
            Cancel = True
            MsgBox "appartient au TCD"
        Else
            MsgBox "n'appartient pas au TCD"
        End If
        Set Pt = Nothing
    Else
        MsgBox "aucun TCD sur la feuille"
    End If
    End Sub

    [Edit]
    Une autre proposition qui utilise la gestion des erreur
    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_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Dim Pt As PivotTable
     
    On Error Resume Next
    Set Pt = Target.PivotTable
    On Error GoTo 0
     
    If Not Pt Is Nothing Then
        Cancel = True
        MsgBox "appartient au TCD"
        Set Pt = Nothing
    Else
        MsgBox "N'appartient pas au TCD"
    End If
    End Sub

  3. #3
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juin 2006
    Messages
    622
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 622
    Points : 156
    Points
    156
    Par défaut
    merci beaucoup c'est parfait.


    peux tu juste m'expliquer à quoi sert la ligne :

  4. #4
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juin 2006
    Messages
    622
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 622
    Points : 156
    Points
    156
    Par défaut
    c'est bon j'ai trouvé, je me réponds :


    Le paramètre Cancel désactive l'action associée à une macro évènementielle.
    Le double clic vous permet d'éditer la cellule (Le curseur clignote dans la cellule). Spécifiez Cancel = True pour empêcher l'édition.

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

Discussions similaires

  1. Coordonnées d'un double clic dans un tableau croisé dynamique
    Par tantrika dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/05/2012, 16h24
  2. Réponses: 1
    Dernier message: 05/07/2007, 18h28
  3. VBA Excel :séparation dans un tableau croisé dynamique
    Par hiline6 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 28/11/2006, 08h52
  4. Réponses: 4
    Dernier message: 27/11/2006, 23h20
  5. [VBA-Excel] Faire un filtre dans un tableau croisé dynamique
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 27/11/2006, 15h05

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