problème de déclaration de variable: nom ambigüe
Bonjour,
dans un classeur j'ai plusieurs feuilles dont une nommée "SC" et une autre nommée "metric". La feuille "SC", dès qu'elle est sélectionnée, fait apparaitre un UserForm. La feuille "metric" sert pour synthétiser les données pour un tableau de bord. Pour cela les données sont traitées avec une macro. La macro allant chercher les données dans "SC" j'ai mis en place une variable 'macrobloc' boolean. Si elle a la valeur true alors lors de l'activation de "SC" le UserForm ne s'affiche pas.
Tout fonctionnait bien durant plusieurs mois et depuis hier:
_ soit j'ai droit au message "erreur de compilation. Nom ambigüe détecté" lorsque je vire "Public macrobloc as boolean";
_ soit 'macrobloc' prend la bonne la bonne valeur dans ma macro de tableau de bord mais dès que la feuille "SC" est selectionné ma variable n'est pas prise en compte.
pour la feuille "SC" j'ai cela comme code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| 'Option Explicit
Public macrobloc As Boolean
Private Sub Worksheet_Activate()
If macrobloc = True Then
Exit Sub
End If
On Error Resume Next
Sheets("SupplyChain").Select
Selection.End(xlUp).Select
ActiveSheet.ShowAllData
FormRecherche.Show
End Sub |
et dans la macro pour le tableau de bord, dans le module "certif" j'ai cela:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| Option Explicit
Public macrobloc As Boolean
Sub metrix_certif()
' macro pour préparer les données afin de faire un metric sur les certificats disponibles par client
' déclaration
' nettoyage de la feuille
Sheets("metrix certif").Select
Cells.Select
Selection.Delete Shift:=xlUp
' on bloque l userform
macrobloc = True
' suppression des filtre sur la feuille SupplyChain si besoin
On Error Resume Next
Sheets("SupplyChain").Select
...
... |
Au niveau des Variables Locales je vois bien 'macrobloc' qui passe à True puis lors de la sélection de "SC" la variable n'existe plus.
A quel niveau ai-je fais une boulette s'il vous plait?
Merci pour votre aide.