Plusieurs macros évenementielles dans même feuille

  • Initiateur de la discussion Initiateur de la discussion JANO
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

JANO

XLDnaute Occasionnel
Bonsoir le forum,


lorsque j'en laisse une seul cela fonctionne, mais quand je mets les deux autre cela bug.
pouvez vous m'aider à condolider ces trois macros.
merci 😱



Private Sub Worksheet_Change(ByVal Target As Range)

Application.ScreenUpdating = 0
If Target.Address(0, 0) = "B3" Then
ActiveSheet.PivotTables("Tableau croisé dynamique3").PivotFields("Societe"). _
CurrentPage = Range("B3").Value
ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("Societe"). _
CurrentPage = Range("B3").Value
Range("B3").Select
ActiveWorkbook.RefreshAll
End If


End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "B4" Then
ActiveSheet.PivotTables("Tableau croisé dynamique3").PivotFields("Type"). _
CurrentPage = Range("B4").Value
ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("Type"). _
CurrentPage = Range("B4").Value
Range("B4").Select
ActiveWorkbook.RefreshAll
End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "B5" Then
ActiveSheet.PivotTables("Tableau croisé dynamique3").PivotFields("Date"). _
CurrentPage = Range("B5").Value
ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("Date"). _
CurrentPage = Range("B5").Value
Range("B5").Select
ActiveWorkbook.RefreshAll
End If
End Sub
 
Dernière édition:
Re : Plusieurs macros évenementielles dans même feuille

Bonjour à tous,

Peut-être comme ci :

VB:
Option Explicit


Private Sub Worksheet_Change(ByVal Target As Range)


    Application.ScreenUpdating = 0
    If Target.Address(0, 0) = "B3" Then
        ActiveSheet.PivotTables("Tableau croisé dynamique3").PivotFields("Lib.Societe"). _
                CurrentPage = Range("B3").Value
        ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("Lib.Societe"). _
                CurrentPage = Range("B3").Value
        Range("B3").Select
    End If


    If Target.Address(0, 0) = "B4" Then
        ActiveSheet.PivotTables("Tableau croisé dynamique3").PivotFields("Type"). _
                CurrentPage = Range("B4").Value
        ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("Type"). _
                CurrentPage = Range("B4").Value
        Range("B4").Select
    End If


    If Target.Address(0, 0) = "B5" Then
        ActiveSheet.PivotTables("Tableau croisé dynamique3").PivotFields("Date"). _
                CurrentPage = Range("B5").Value
        ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("Date"). _
                CurrentPage = Range("B5").Value
        Range("B5").Select
    End If
 ActiveWorkbook.RefreshAll
End Sub

A+ à tous
 
Re : Plusieurs macros évenementielles dans même feuille

merci JCGL, de ton aide, mais cela tourne dans le vide. comme quand je l'ai mets les une après les autres.
j'ai mis fin à la macro et mon ecran excel est tout noir
 
Dernière édition:
Re : Plusieurs macros évenementielles dans même feuille

j'ai joint le fichier,

en orange les listes qui commandent les fitres de rapport du TCD 1 et TCD 2.

merci de votre aide et bonne nuit

ATTENTION la macro tourne et ne s'arrete plus qu'avec Echap
 

Pièces jointes

Re : Plusieurs macros évenementielles dans même feuille

bonjour le forum,

Comme la macro évenementielle ne fonctionne pas.
d'après vous c'est possible de la transformer en macro "classique" que j'activerai via un bouton.

merci de votre aide




Option Explicit


Private Sub Worksheet_Change(ByVal Target As Range)


Application.ScreenUpdating = 0
If Target.Address(0, 0) = "B3" Then
ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Societe"). _
CurrentPage = Range("B3").Value
ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("Societe"). _
CurrentPage = Range("B3").Value
Range("B3").Select
End If


If Target.Address(0, 0) = "B4" Then
ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Type"). _
CurrentPage = Range("B4").Value
ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("Type"). _
CurrentPage = Range("B4").Value
Range("B4").Select
End If


If Target.Address(0, 0) = "B5" Then
ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Date"). _
CurrentPage = Range("B5").Value
ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("Date"). _
CurrentPage = Range("B5").Value
Range("B5").Select
End If
ActiveWorkbook.RefreshAll
End Sub
 

Pièces jointes

Dernière édition:
Re : Plusieurs macros évenementielles dans même feuille

Bonjour
Bise à GCJL 🙂🙂(cela faisait longtemps !)

Tu as 2010 donc pourquoi ne pas tout simplement jouer avec des segments ?

Ci-joint un classeur avec 3 segments synchronisant les 2 TCD et montrant en plus que certaines combinatoires n'existent pas.

J'ai néanmoins laissé la macro (devenu inutile) mais corrigée. Tu pourras la supprimer si tu gardes les segments plutôt que tes listes qui risquent de planter sur les dates.
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
9
Affichages
265
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
545
Réponses
4
Affichages
219
  • Question Question
Microsoft 365 Probléme VBA
Réponses
8
Affichages
334
Retour