XL 2010 discordance entre 2 codes

Lipadec

XLDnaute Occasionnel
Bonjour le Forum, Bonjour tout le monde et bonne fin de semaine

Y a-t-il une discordance ou disharmonie entre les deux codes suivants.
Le 2ème code fonctionne bien quand le 1er code est désactivé.
Dès que le 1er code est activé, le 2ème code me donne "Erreur d'exécution '1004'; la méthode Select de la classe Worksheet a échoué"
Pouvez-vous m'aider?
Pour information, le 1er code est dans la feuille "MENU", quand au 2ème code ; c'est une macro

Merci d'avance pour votre participation
Voici les deux codes

1er code -----------------------------------

Private Sub Worksheet_Activate()
Dim Ws As Worksheet
Dim Sh As Worksheet
For Each Ws In Worksheets
If Ws.Name <> "MENU" Then
Ws.Visible = False
End If
Next Ws
End Sub

2ème code ---------------------------------------

Sub bulletin()
n = Replace(ActiveSheet.Name, "SAL", "")
Sheets("BULLETIN").[B7] = Val(n)
Sheets("BULLETIN").Select
End Sub
---------------------------------------

Lipadec
 

Lipadec

XLDnaute Occasionnel
Re
Merci Bebere
Effectivement, la feuille bulletin est cachée, d'ailleurs toutes les feuilles sont cachées sauf "MENU".
Et quand je remplace 'select' par 'activate', au lieu d'avoir la feuille "BULLETIN" j'ai la feuille "MENU" comme au début
 

Bebere

XLDnaute Barbatruc
bonjour
Lipadec
il n' y a que menu qui est visible
ligne fautive n = Replace(ActiveSheet.Name, "SAL", "")
essaye ce qui suit

Code:
Option Explicit'oblige de déclarer les variables
Option Compare Text

Sub bulletin()
Dim n As Long
Application.EnableEvents = False
n = Replace("Sal11", "Sal", "")
Sheets("Bulletin").Visible = True
Sheets("Bulletin").[B7] = n ' Val(n)
Sheets("Bulletin").Activate 'Select
Application.EnableEvents = True
End Sub
ps:avec un fichier c'est plus facile
 

Lipadec

XLDnaute Occasionnel
Bonjour le Forum et bon Dimanche

Merci Bebere pour ta réponse. Ton nouveau code ne donne plus l'erreur mais le bulletin s'ouvre tjs sur le 11 à la cellule B7
Pour que le module me donne la réponse que je veux, j'ai remplacé :

n = Replace("Sal11", "Sal", "") par
n = Replace(ActiveSheet.Name, "SAL", "") et le tour est joué.

Donc le nouveau code devient :
Option Explicit 'oblige de déclarer les variables
Option Compare Text

Sub bulletin()
Dim n As Long
Application.EnableEvents = False
n = Replace(ActiveSheet.Name, "SAL", "")
Sheets("BULLETIN").Visible = True
Sheets("BULLETIN").[B7] = n ' Val(n)
Sheets("BULLETIN").Activate 'Select
Application.EnableEvents = True
End Sub

Maintenant le module fonctionne bien et je te dis merci beaucoup car il n'y a plus d'erreur.

Lipadec
 

Membres actuellement en ligne

Statistiques des forums

Discussions
312 106
Messages
2 085 352
Membres
102 871
dernier inscrit
Maïmanko