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ésactiver temporairement une partie de macro


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Femme Profil pro
    Tourneur
    Inscrit en
    Mai 2018
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 73
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Tourneur

    Informations forums :
    Inscription : Mai 2018
    Messages : 39
    Par défaut Désactiver temporairement une partie de macro
    Bonjour à tous,

    Je voudrais savoir si il est possible de désactiver/activer une macro via un bouton à 2 états. Le but étant de désactiver la macro de la page pour agir sur le fichier sans les contraintes du code, pour info il n'y a pas de code présent dans ''ThisWorkbook''.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Salut,

    c'est possible, mais ca reste à manipuler avec attention (pour ne pas oublier par la suite les bouts de code mis en suspens).

    Tu peux englober les lignes en question dans une boucle If Then avec la lecture d'une variable dans une cellule par exemple, et le clic sur le bouton modifie la valeur de la cellule à chaque fois...
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Salut JP (Tu vas bien?)

    Citation Envoyé par Jean-Philippe André Voir le message
    [...]et le clic sur le bouton modifie la valeur de la cellule à chaque fois...
    Pourquoi pas utiliser directement la valeur du bouton bascule dans la condition?

    Par exemple, avec un bouton bascule sur Feuil1

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
      If Feuil1.ToggleButton1.Value Then
     
      End If
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    La désactivation des evenements ca reste plutôt violent je trouve, mais pourquoi pas
    Citation Envoyé par Pierre Fauconnier Voir le message
    Salut JP (Tu vas bien?)
    Vivement la fin de semaine
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Citation Envoyé par Jean-Philippe André Voir le message
    [...]
    Vivement la fin de semaine
    En effet

    Citation Envoyé par Jean-Philippe André Voir le message
    La désactivation des evenements ca reste plutôt violent je trouve, mais pourquoi pas
    [...]
    Oui, mais si Excel le propose, c'est pour que l'on s'en serve.

    Entourer chaque proc évènementielle d'un bloc if (ou d'un if ... exit sub, pourquoi pas. S'il faut le faire pour chaque évènement, j'accepte la solution de Patrice, plus légère que la mienne et rapide à mettre en place par copier-coller), c'est moins violent mais plus chi***... Et si t'en oublies lors de l'ajout d'une proc événementielle, ce n'est pas forcément chouette

    Encore une fois, tout dépend de ce que goku souhaite réaliser.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  6. #6
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 475
    Par défaut
    Bonjour,

    Commences chaque macro évènementielle par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      If Me.ToggleButton1.Value Then Exit Sub

  7. #7
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Perso, je préfère

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if tooglebutton1.value then
    (Je n'aime pas Exit Sub)



    S'il s'agit de désactiver toutes les macros évènementielles selon l'état du bouton, on pourrait aussi gérer la levée des évènements en fonction de l'état du bouton, car "entourer" chaque gestion d'erreurs d'une condition me semble un peu lourd à gérer. Ici, les macros évènementielles sont désactivées si le bouton est enfoncé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Application.EnableEvents = not tooglebutton1.Value
    Attention toutefois. Cette désactivation doit s'accompagner d'une bonne gestion d'erreurs et être mûrement réfléchie.

    C'est pourquoi je reste curieux de savoir ce que tu souhaites réaliser. Je ne suis pas certain que le chemin que tu empruntes soit le bon
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  8. #8
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 475
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 475
    Par défaut
    Citation Envoyé par Pierre Fauconnier Voir le message
    ...
    (Je n'aime pas Exit Sub)
    T'es pas le seul à dire j'aime pas Exit (que ce soit Exit Sub, Exit For, Exit Do, ...),
    Y aurait-il une raison particulière ?

  9. #9
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Salut,

    À cette question est plutôt liée une approche impérative du code, avec chaque ligne qui doit être exécuté avant celle qui la suite (de haut en bas donc).

    Ta fonction ou procédure a un point d'entrée (ligne de déclaration) et un point de sortie (End Function / End Sub) naturels.

    Le fait de faire un Exit Sub/Function semble une utilisation pertinente, mais si tu tombes sur un code spaghetti de 800 lignes, et que tu veux utiliser le point d'arrêt pour faire du débogage alors que tu n'as pas vu le Exit Sub en 12e ligne de code, ben c'est frustrant.

    Ca reste correct, mais selon les méthodes et nomenclatures de code auxquelles tu es confronté en entreprise, ca peut rester sacrilège


    Et on ne te parle même pas des débutants qui pensent bien faire en utilisant des syntaxes qu'ils ne comprennent pas
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  10. #10
    Membre actif
    Femme Profil pro
    Tourneur
    Inscrit en
    Mai 2018
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 73
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Tourneur

    Informations forums :
    Inscription : Mai 2018
    Messages : 39
    Par défaut
    Bonjour,

    Merci à tous pour vos réponses, je ne pensais pas en avoir autant!! Je joins le code pour vous orienter vers la meilleure solution car je ne vois pas comment associer à un bouton l'activation et la désactivation de la macro en sachant qu'une partie doit rester active pour la réactiver.

    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
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
     
    Public Tagbt1 As Long
    Private Sub CommandButton1_Click()
        CommandButton1.BackColor = 12101115
        Tagbt1 = Tagbt1 + 1
     
    For i = 0 To 50
     
        If Range("J" & i).Value = Range("K15").Value Then
        MsgBox "ok"
        End If
     
    Next
     
       If Tagbt1 > 1 Then
            'MsgBox "exit sub"
            CommandButton1.BackColor = 4210943 'recoloriser le bouton en gris
            'recoloriser les deux cases
            Exit Sub
            Else
            Test "J2:K2"
        End If
     
    End Sub
     
    Private Sub CommandButton15_Click()
     
    End Sub
     
    Private Sub CommandButton2_Click()
        Test "J3:K3"
        'Range("A10:B40") = myArray
     
        'If Ref = Range(Plage).Value Then
        'If myArray = 20 Then
             'MsgBox "Passage Then"
             'Else: MsgBox "Passage Else"
        'End If
     
    End With
     
    End Sub
    Private Sub CommandButton3_Click()
        Test "J4:K4"
    End Sub
    Private Sub CommandButton4_Click()
        Test "J5:K5"
    End Sub
    Private Sub CommandButton5_Click()
        Test "J6:K6"
    End Sub
    Private Sub CommandButton6_Click()
        Test "J7:K7"
    End Sub
    Private Sub CommandButton7_Click()
        Test "J8:K8"
    End Sub
    Private Sub CommandButton8_Click()
        Test "J9:K9"
    End Sub
    Private Sub CommandButton9_Click()
        Test "J10:K10"
    End Sub
    Private Sub CommandButton10_Click()
        Test "J11:K11"
    End Sub
    Private Sub CommandButton11_Click()
        Test "J12:K12"
    End Sub
    Private Sub CommandButton12_Click()
        Test "J13:K13"
    End Sub
    Private Sub CommandButton13_Click()
        Test "J14:K14"
    End Sub
    Private Sub CommandButton14_Click()
        Test "J15:K15"
    End Sub
    Sub Test(Plage As String)
     
        ligne = Range("B65536").End(xlUp).Row + 1
     
        Range("B" & ligne & ":C" & ligne) = Range(Plage).Value
     
        'Range(Plage).Interior.Color = RGB(255, 242, 204)
     
        Range("A1").Select
     
        [A1:A37].Borders(10).Weight = -4138
        '[C1:C37].Borders(10).Weight = -4138
     
    End Sub
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    'Dim note As Integer
     
    ligneA = Range("A65536").End(xlUp).Row
    ligneB = Range("B65536").End(xlUp).Row
    ligneC = Range("C65536").End(xlUp).Row
    ligneH = Range("H65536").End(xlUp).Row
    ligneI = Range("I65536").End(xlUp).Row
     
    If Target.Column = 2 Then
        paz = 2
    End If
     
    If Target.Column = 3 Then
        paz = 3
        If IsEmpty(Range("C" & ligneC - 1)) = True Then
               Range("C" & ligneC).ClearContents
        End If
    End If
     
    If Target.Column = 8 Then
        paz = 8
    End If
     
    If Target.Column = 9 Then
        paz = 9
        If IsEmpty(Range("I" & ligneI - 1)) = True Then
               Range("I" & ligneI).ClearContents
        End If
    End If
     
    Select Case paz
     
         Case Is = 2         'MISE EN FORME COLONNE B
     
            If IsEmpty(Range("B" & ligneB - 1)) = True Then              'test si avant dernière case colonne B est vide
               Range("B" & ligneB).ClearContents                            'si vide saisie effacée
            Else: Range("A" & ligneB).FormulaLocal = "=A" & ligneB - 1 & "+ B" & ligneB    'sinon insertion formule
            End If
     
         Case Is = 8         'MISE EN FORME COLONNE H
     
            If IsEmpty(Range("H" & ligneH - 1)) = True Then             'test si avant dernière case colonne B est vide
              Range("H" & ligneH).ClearContents                           'si vide saisie effacée
            Else: Range("G" & ligneH).FormulaLocal = "=G" & ligneH - 1 & "+ H" & ligneH    'sinon insertion formule
            End If
     
    End Select
     
     
    'Efface case Ax si Bx est vide excepté pour B1 et B2 => valable jusqu'à B100
    Application.EnableEvents = False: On Error Resume Next
    Range("B3:B100").SpecialCells(xlCellTypeBlanks).Offset(, -1).ClearContents
    Application.EnableEvents = True
     
    'Efface case Gx si Hx est vide excepté pour H1 et H2 => valable jusqu'à H100
    Application.EnableEvents = False: On Error Resume Next
    Range("H3:H100").SpecialCells(xlCellTypeBlanks).Offset(, -1).ClearContents
    Application.EnableEvents = True
     
    End Sub

  11. #11
    Membre actif
    Femme Profil pro
    Tourneur
    Inscrit en
    Mai 2018
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 73
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Tourneur

    Informations forums :
    Inscription : Mai 2018
    Messages : 39
    Par défaut
    Voilà j'ai paramétrer l'affichage du bouton suivant les appuis par contre comment faire en sorte que sur la position ''OFF'', le reste du code soit inactif et dés l'appui (le bouton passe sur ''ON'') tout le reste du code est réactivé.
    Voici le code pour ce bouton :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Private Sub CommandButton15_Click()
     
      If CommandButton15.Caption = "ON" Then
            CommandButton15.Caption = "OFF"
            Application.EnableEvents = Not CommandButton15.Value
            Else
            CommandButton15.Caption = "ON"
        End If
     
    End Sub
    J'ai essayé le bout de code : Application.EnableEvents = Not CommandButton15.Value mais visiblement il manque des choses .

  12. #12
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Salut

    Attention que la solution initialement proposée s'appuyait sur un ToggleButton dont la propriété passait à True lorsqu'il était enfoncé et à False lorsqu'il était relâché. Ici, tu as (mal) adapté le code pour un simple CommandButton, qui par ailleurs n'expose pas la propriété Value. Ton code, tel que présenté, ne saurait pas fonctionner et doit normalement s'arrêter à la compilation.

    Dans la solution que je propose, à toi de voir quand les évènements doivent être activés/désactivés (sur le ON ou sur le OFF)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub CommandButton1_Click()
      If CommandButton1.Caption = "ON" Then
        CommandButton1.Caption = "OFF"
        Application.EnableEvents = False
      Else
        CommandButton1.Caption = "ON"
        Application.EnableEvents = True
      End If
    End Sub
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  13. #13
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    bonjour Pierre
    attention a la syncronisation souhaité(caption/etat)
    veut il:
    1. "oui" quand click sur bouton avec caption "On"?
    2. "oui" apres click sur bouton avec caption qui est devenu "On"?


    un peu comme un voyant lumineux d'un apareil
    et c'est pareil pour le toggle bouton
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  14. #14
    Membre actif
    Femme Profil pro
    Tourneur
    Inscrit en
    Mai 2018
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 73
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Tourneur

    Informations forums :
    Inscription : Mai 2018
    Messages : 39
    Par défaut
    Bonjour,

    Pierre c’est exactement ce dont j’avais besoin, je n’étais pas si loin que ça non .

    Merci pour vos contributions Pierre et Patrick à ce déblocage .

    Et si je voulais étendre la fonctionnalité de ce bouton en sachant que j'ai besoin qu'il ait scrupuleusement la même fonction dans plusieurs onglets du fichier, est ce possible ?

  15. #15
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Citation Envoyé par patricktoulon Voir le message
    [...]
    Salut Patrick,

    J'ai édité mon message
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  16. #16
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Application.EnableEvents est une propriété d'application (comme le code qui l'utilise l'indique )

    Dès lors, elle s'applique à tout le classeur et même au delà, d'où certaines réserves émises sur son utilisation...

    Que veux-tu dire par ce qui suit?
    Citation Envoyé par Goku. Voir le message
    [...]
    Et si je voulais étendre la fonctionnalité de ce bouton en sachant que j'ai besoin qu'il ait scrupuleusement la même fonction dans plusieurs onglets du fichier, est ce possible ?
    Oui, en théorie, tout ou presque est possible, donc ton souhait est probablement réalisable...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

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

Discussions similaires

  1. [AC-2010] Désactiver temporaire une macro de données
    Par guen dans le forum VBA Access
    Réponses: 4
    Dernier message: 10/10/2013, 12h58
  2. abréger une parti du macro
    Par jerleswatt dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 05/03/2012, 20h53
  3. [XL-2003] J'ai une partie de macro qui marche pas
    Par Alexandra 01 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 03/10/2010, 14h29
  4. Réponses: 12
    Dernier message: 13/08/2008, 17h04
  5. Macro : Copier une partie de la cellule
    Par jeanjean0403 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 31/08/2007, 12h35

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