XL 2013 Scroll sur toutes les feuilles

claude-cbs

XLDnaute Nouveau
Bonjour,

J'ai environ 50 feuilles de tournois différentes, je voudrais qu'à chaque changement de feuille, je soit positionné en haut à gauche, sans créer une procédure de code VBA à chaque feuille.
Merci pour vos solutions.
 

claude-cbs

XLDnaute Nouveau
Re : Scroll sur toutes les feuilles

Merci Chris,

Cela fonctionne parfaitement.

est-ce que je peux ajouter ce code dans thisworbook?
Ce code est actuellement sur 40 feuilles de ces feuilles, je pense que ça alourdi le programme.

"Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Range("C6:C200")) Is Nothing Then
With Target.Interior

userform1.Show ' ouverture de l'userform
End With
Cancel = True
'les 2 if suivants pour interdire les doublons
If Application.CountIf(Range("C6:C205"), Target) > 1 Then MsgBox "ATTENTION Doublon !!!!", vbCritical, "Oups !!!!"
If Application.CountIf(Range("C6:C205"), Target) > 1 Then Target = ""

End If
End Sub
"

Merci pour ton conseil.
 

Chris401

XLDnaute Accro
Re : Scroll sur toutes les feuilles

Re

Bien sûr ; remplace
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
par
Code:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)

Edit : Attention ! le code en l'état s'appliquera dans toutes les feuilles.

Chris
 

claude-cbs

XLDnaute Nouveau
Re : Scroll sur toutes les feuilles

Le problème c'est que je ne veux pas l'affecter à toutes les feuilles, mais seulement aux feuilles nommées de "Tournoi 1" à "Tournoi 50",
j'ai dans mon programme d'autres feuilles de récapitulatif de points, de position etc.. (Et je ne veux pas le code sur ces pages)

Merci quand meme pour ton aide..

Claude
 

Chris401

XLDnaute Accro
Re : Scroll sur toutes les feuilles

Re

Tu peux exécuter le code uniquement si tu te trouves dans une feuille dont le nom commence par TOURNOI
Code:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If Not Left(ActiveSheet.Name, 7) = "TOURNOI" Then End
If Not Application.Intersect(Target, Range("C6:C200")) Is Nothing Then
....
Chris
 

Discussions similaires

Statistiques des forums

Discussions
312 321
Messages
2 087 266
Membres
103 502
dernier inscrit
talebafia