AW: Datenschnitt automatisch filtern per doppelklick
20.12.2012 09:25:27
Klaus
Hi,
in das Blatt "Artikelliste"
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim sOne As String
Dim sTwo As String
If Target.Column = 3 Then
sOne = Cells(Target.Row, 1)
sTwo = Cells(Target.Row, 2)
Debug.Print sOne & sTwo
Sheet2.Activate
With ActiveWorkbook.SlicerCaches("Datenschnitt_Warengruppe")
.SlicerItems("Gruppe1").Selected = (.SlicerItems("Gruppe1").Value = sOne)
.SlicerItems("Gruppe2").Selected = (.SlicerItems("Gruppe2").Value = sOne)
.SlicerItems("Gruppe3").Selected = (.SlicerItems("Gruppe3").Value = sOne)
.SlicerItems("Gruppe4").Selected = (.SlicerItems("Gruppe4").Value = sOne)
.SlicerItems("Gruppe5").Selected = (.SlicerItems("Gruppe5").Value = sOne)
.SlicerItems("Gruppe6").Selected = (.SlicerItems("Gruppe6").Value = sOne)
.SlicerItems("Gruppe7").Selected = (.SlicerItems("Gruppe7").Value = sOne)
.SlicerItems("Gruppe8").Selected = (.SlicerItems("Gruppe8").Value = sOne)
.SlicerItems("Gruppe9").Selected = (.SlicerItems("Gruppe9").Value = sOne)
.SlicerItems("Gruppe10").Selected = (.SlicerItems("Gruppe10").Value = sOne)
.SlicerItems("Gruppe11").Selected = (.SlicerItems("Gruppe11").Value = sOne)
.SlicerItems("Gruppe12").Selected = (.SlicerItems("Gruppe12").Value = sOne)
.SlicerItems("Gruppe13").Selected = (.SlicerItems("Gruppe13").Value = sOne)
.SlicerItems("Gruppe14").Selected = (.SlicerItems("Gruppe14").Value = sOne)
.SlicerItems("Gruppe15").Selected = (.SlicerItems("Gruppe15").Value = sOne)
.SlicerItems("Gruppe16").Selected = (.SlicerItems("Gruppe16").Value = sOne)
.SlicerItems("Gruppe17").Selected = (.SlicerItems("Gruppe17").Value = sOne)
.SlicerItems("Gruppe18").Selected = (.SlicerItems("Gruppe18").Value = sOne)
.SlicerItems("Gruppe19").Selected = (.SlicerItems("Gruppe19").Value = sOne)
End With
With ActiveWorkbook.SlicerCaches("Datenschnitt_Artikel")
.SlicerItems("Artikel1").Selected = (.SlicerItems("Artikel1").Value = sTwo)
.SlicerItems("Artikel2").Selected = (.SlicerItems("Artikel2").Value = sTwo)
.SlicerItems("Artikel3").Selected = (.SlicerItems("Artikel3").Value = sTwo)
.SlicerItems("Artikel4").Selected = (.SlicerItems("Artikel4").Value = sTwo)
.SlicerItems("Artikel5").Selected = (.SlicerItems("Artikel5").Value = sTwo)
End With
Else
'do nothing
End If
End Sub
Die endlose Codewiederholung für SlicerItems 1 bis 99 kann man bestimmt auch in eine übersichtliche for-each Schleife packen.
Grüße,
Klaus M.vdT.