Bonjour à tous,
Je sèche complètement sur cette erreur car il me semble que tout est bien déclaré et que la macro marchait il y a quelques jours encore... La ligne qui plante est la première du bloc With, avec le r = (Je l'ai mise en avant avec ***)
A noter que sCalc et sAllRefs sont déclarées en tant que Worksheet à l'ouverture du fichier en Global et sont Set dans un Public Sub. Si je saisi un Msgbox(.Name) dans le With, il me sort bien le nom de ma feuille, donc le problème ne vient pas de là...
De plus, "cat" est lui aussi bien capté puisqu'il me sort exactement la valeur de deux cellule au-dessus de ce que je saisi et cette valeur existe bien dans la colonne B de sCalc (à la ligne 20)
Merci d'avance de votre aide.
Cordialement
Je sèche complètement sur cette erreur car il me semble que tout est bien déclaré et que la macro marchait il y a quelques jours encore... La ligne qui plante est la première du bloc With, avec le r = (Je l'ai mise en avant avec ***)
Code:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Integer
Dim r As Integer
Dim cat As String
Dim fil As String
Dim sli As String
'Declare all variables
cat = Target.Offset(-2, 0).Value 'Get category (current cell -2 up)
With sCalc
*** r = .Range("B:B").Find(cat).Row 'Get category row in Calc ***
sli = .Cells(r, 4).Value 'Get slicer name
fil = .Cells(r, 5).Value 'Get filter name
End With
c = sAllRefs.Range("1:1").Find(fil).Column 'Get filter column in AllRefs
Set sc = ThisWorkbook.SlicerCaches(sli)
'Macro starts here
A noter que sCalc et sAllRefs sont déclarées en tant que Worksheet à l'ouverture du fichier en Global et sont Set dans un Public Sub. Si je saisi un Msgbox(.Name) dans le With, il me sort bien le nom de ma feuille, donc le problème ne vient pas de là...
De plus, "cat" est lui aussi bien capté puisqu'il me sort exactement la valeur de deux cellule au-dessus de ce que je saisi et cette valeur existe bien dans la colonne B de sCalc (à la ligne 20)
Merci d'avance de votre aide.
Cordialement