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 :

Aide création macro


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2021
    Messages : 6
    Par défaut Aide création macro
    Bonjour,

    J'ai besoin de créer un tableau un peut particulier mais je n'y arriva pas, mes connaissances en VBA sont trop limitées.

    Je vous ai mis un exemple du tableau en pièces jointe.

    Ce que je souhaite faire, c'est lorsque l'on clique dans la case à droite de la lettre A les colonnes B - C - D et E se remplissent en noir mais pas la A, si je clique sur B c'est la deuxième colonne qui reste apparente et les autres qui se remplissent en noir, si je clique A et C c'est les colonnes A et C qui reste apparente et ainsi de suite.

    Et si j'enlève toute les coches le tableau se réinitialise (certain case doivent resté en noir)

    Ma Marco ne fonctionne que si je clique sur une coche, dès que je clique sur plusieurs coche il se rempli de noir (ce que je ne souhaite pas)

    Pourriez-vous m'aider à créer cette macro ?

    Merci d'avance pour votre aide
    Fichiers attachés Fichiers attachés

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Jos68 Voir le message
    Bonjour,

    Fichier à tester.

  3. #3
    Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2021
    Messages : 6
    Par défaut
    Citation Envoyé par Eric KERGRESSE Voir le message
    Bonjour,

    Fichier à tester.
    Bonjour,

    J'ai testé votre fichier, mais il ne fonctionne pas chez moi, je n'arrive pas à cliquer sur les cases

  4. #4
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Jos68 Voir le message
    A la différence de votre solution, les cases à cocher sont des contrôles ActiveX. Regardez dans vos options de protection, si les contrôles ActiveX sont permis.

  5. #5
    Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2021
    Messages : 6
    Par défaut
    Citation Envoyé par Eric KERGRESSE Voir le message
    A la différence de votre solution, les cases à cocher sont des contrôles ActiveX. Regardez dans vos options de protection, si les contrôles ActiveX sont permis.
    Merci pour votre aide, effectivement une fois les contrôles ActiveX autorisé ça fonctionne.

    Petite question, est ce qu'il est possible de copier le même tableau dans d'autres feuil de ce classeur, en gardant les cases à cocher sur la feuil 1 ? j'ai remis le fichier avec le même tableau en feuil1 et feuil2, et je souhaite avoir les cases à cocher en feuil1, et si je clique sur la case A en feuil1 c'est la colonne A en feuil1 et 2 qui se noircissent
    Fichiers attachés Fichiers attachés

  6. #6
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Jos68 Voir le message
    Soit un onglet Paramètres qui contiendrait un tableau structuré nommé "TabledesOnglets" et dont le titre de la colonne serait "Table des onglets". Ce tableau contiendrait le nom des onglets concernés par la mise à jour.


    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
     
    Public AireTableau As Range, PL As Range 'déclare la variable PL (PLage)
    Public C As XlColorIndex 'déclare la variable C (Couleur)
    Public AireOnglets As Range
     
     
    Public CbA As OLEObject, CbB As OLEObject, CbC As OLEObject, CbD As OLEObject, CbE As OLEObject
     
    Sub TestCheckBox()
     
    Dim I As Integer
    Dim Sh As Worksheet
     
        Set AireOnglets = Sheets("Paramètres").ListObjects("TabledesOnglets").ListColumns("Table des onglets").DataBodyRange
     
        With Sheets("Feuil1")
             Set CbA = .OLEObjects("CheckBoxA"): Set CbB = .OLEObjects("CheckBoxB")
             Set CbC = .OLEObjects("CheckBoxC"): Set CbD = .OLEObjects("CheckBoxD")
             Set CbE = .OLEObjects("CheckBoxE")
        End With
        C = 1
     
        For I = 1 To AireOnglets.Count
     
            Set Sh = Sheets(AireOnglets(I).Value)
     
            With Sh
                 Set AireTableau = .Range("B5:F14")
                 Set PL = .Range("B8,C7,C13,D11,E6,F5,F10")
            End With
     
            AireTableau.Interior.ColorIndex = xlNone
            If CbA.Object.Value = True Then AireTableau.Columns(1).Cells.Interior.Color = C
            If CbB.Object.Value = True Then AireTableau.Columns(2).Cells.Interior.Color = C
            If CbC.Object.Value = True Then AireTableau.Columns(3).Cells.Interior.Color = C
            If CbD.Object.Value = True Then AireTableau.Columns(4).Cells.Interior.Color = C
            If CbE.Object.Value = True Then AireTableau.Columns(5).Cells.Interior.Color = C
     
            PL.Interior.ColorIndex = C
            Set PL = Nothing
            Set Sh = Nothing
     
        Next I
     
        Set CbA = Nothing: Set CbB = Nothing: Set CbC = Nothing: Set CbD = Nothing: Set CbE = Nothing
        Set AireOnglets = Nothing
     
    End Sub

Discussions similaires

  1. [Toutes versions] Création macro ouverture fichier solidwork aide macro
    Par sebastien1230 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 06/01/2021, 08h52
  2. [XL-2013] Aide création macro
    Par kassarasta dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 25/02/2016, 15h29
  3. [XL-2010] Aide création macro
    Par Alex74330 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 17/04/2015, 10h49

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