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 :

Reproduire via VBA l'action d'une sélection sur un segment [XL-2013]


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier Avatar de meolimo
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2011
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Août 2011
    Messages : 141
    Points : 98
    Points
    98
    Par défaut Reproduire via VBA l'action d'une sélection sur un segment
    Bonjour

    Sur un chiffrier qui comporte un tableau (˝tabCoord˝) ($A1 :$G900) stockant des coordonnées géographique
    Nom : entetes.jpg
Affichages : 590
Taille : 8,3 Ko

    J’ai incorporé un TCD lié à ce tableau ainsi qu’un segment sur le champ Division
    J’ai également incrusté une image (carte géographique illustrant le territoire couvert) sur cette image j’ai dessiné une première formes (8)

    Nom : Map3.jpg
Affichages : 587
Taille : 80,8 Ko

    Mon objectif est de permettre par VBA par le clique sur le formes (8) de reproduire ce que produit la sélection du secteur sur le segment (filtrer le TCD)
    Je cherche comment récupérer le chiffre contenu sur la formes intégrer sur l’image
    Pour interagir sur le code vba
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    With ActiveWorkbook.SlicerCaches("Segment_Secteur")
                     .SlicerItems("6").Selected = True
                     .SlicerItems("1").Selected = False
                     .SlicerItems("2").Selected = False
                     .SlicerItems("3").Selected = False
                     .SlicerItems("4").Selected = False
                     .SlicerItems("5").Selected = False
                     .SlicerItems("7").Selected = False
                     .SlicerItems("8").Selected = False
                     .SlicerItems("9").Selected = False
                     .SlicerItems("10").Selected = False
                     .SlicerItems("11").Selected = False
                     .SlicerItems("12").Selected = False
        End With
    je bute sur la façon de faire ... quelqu'un aurait une idée

    Merci à l'avance et bonne journée

  2. #2
    Membre régulier Avatar de meolimo
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2011
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Août 2011
    Messages : 141
    Points : 98
    Points
    98
    Par défaut Bingo ! :-)
    J'ai trouvé une solution qui fais bien le travail,
    Nom : MapFin.jpg
Affichages : 533
Taille : 111,7 Ko

    J'ai incorporé 12 Cases à cocher par dessus l'image aux endroits précis masquant les numéros de zones et au clique de ces cases

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub CheckBox1_Click()
    Call MaProcedure
    End Sub
    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    Public Sub MaProcedure()
     
    ActiveWorkbook.SlicerCaches("Segment_Secteur").ClearManualFilter
     
    With ActiveWorkbook.SlicerCaches("Segment_Secteur")
        If ActiveSheet.CheckBox1.Value = True Then
            .SlicerItems("1").Selected = True
        Else
            .SlicerItems("1").Selected = False
        End If
        If ActiveSheet.CheckBox2.Value = True Then
            .SlicerItems("2").Selected = True
        Else
            .SlicerItems("2").Selected = False
        End If
        If ActiveSheet.CheckBox3.Value = True Then
            .SlicerItems("3").Selected = True
        Else
            .SlicerItems("3").Selected = False
        End If
        If ActiveSheet.CheckBox4.Value = True Then
            .SlicerItems("4").Selected = True
        Else
            .SlicerItems("4").Selected = False
        End If
        If ActiveSheet.CheckBox5.Value = True Then
            .SlicerItems("5").Selected = True
        Else
            .SlicerItems("5").Selected = False
        End If
        If ActiveSheet.CheckBox6.Value = True Then
            .SlicerItems("6").Selected = True
        Else
            .SlicerItems("6").Selected = False
        End If
        If ActiveSheet.CheckBox7.Value = True Then
            .SlicerItems("7").Selected = True
        Else
            .SlicerItems("7").Selected = False
        End If
        If ActiveSheet.CheckBox8.Value = True Then
            .SlicerItems("8").Selected = True
        Else
            .SlicerItems("8").Selected = False
        End If
        If ActiveSheet.CheckBox9.Value = True Then
            .SlicerItems("9").Selected = True
        Else
            .SlicerItems("9").Selected = False
        End If
        If ActiveSheet.CheckBox10.Value = True Then
            .SlicerItems("10").Selected = True
        Else
            .SlicerItems("10").Selected = False
        End If
        If ActiveSheet.CheckBox11.Value = True Then
            .SlicerItems("11").Selected = True
        Else
            .SlicerItems("11").Selected = False
        End If
        If ActiveSheet.CheckBox12.Value = True Then
            .SlicerItems("12").Selected = True
        Else
            .SlicerItems("12").Selected = False
        End If
     
    End With
    End Sub
    finalement j'ai masqué le segment derrière l'image .... Bingo le tour est joué

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 26/03/2014, 10h52
  2. Réponses: 3
    Dernier message: 23/11/2011, 12h25
  3. [XL-2007] VBA et TCD : Lire une sélection
    Par Macao35 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 12/05/2011, 16h59
  4. [VBA-E] agrandissement d'une celulle sur clic
    Par mavean dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 24/11/2005, 23h24
  5. Faire une sélection sur une image?
    Par sybilla dans le forum MFC
    Réponses: 3
    Dernier message: 29/08/2005, 14h34

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