Démasquer une feuille en fonction d'une sélection

Bonjours à tous. Dans un tableau (feuille1"évolution mensuelle") j'ai plusieurs lignes, chacune étant lié à une feuille correspondante.

Exemple: ligne 1 référence "1440" est liée à la feuille intitulée 1440 sur l'onglet

ligne 2 référence "4954" est liée à la feuille intitulée 4954

A terme, ces feuilles seront masquées pour allèger le visuel du dossier car il y a beaucoup de lignes et donc beaucoup de feuilles.

Mon objectif est le suivant: le fait de se positionner sur une ligne démasque automatiquement la feuille correspondante. Exemple en se positionnant sur la ligne 1 "1440", la feuille 1440 se démasque à coté du tableau.

Comment arriver à ce résultat. D'avance merci

Bien cordialement

Elphi

Bonjour,

Essaye cette macro à placer en VBA dans la feuille "évolution mensuelle"

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Macro par Dan pour plabrousse - 28/06/08
Dim lig As Integer
On Error Resume Next
lig = ActiveCell.Row
Sheets(lig).Visible = True
End Sub

Reste à voir comment tu les remasques après..

Amicalement

Dan

Rebonjour à tous. Je viens de traiter la réponse de Dan. Il se passe des choses mais pas tout à fait orthodoxe. Quand je sélection une ligne, une feuille est "démasquer" mais ce n'est pas celle qui correspond. Comment remédier à ce problème

Pour la remasquer ensuite, on verra plus tard, procédons par étape.

Merci encore pour tout,

Elphi

rebonjour, pour faire suite:

Je pense que j'ai mal formulé la question. En effet, il est important de noter de la référence (qui engendre le démasquage de la feuille) se trouve sur la colonne 1 de la ligne. Peut-être est-ce à cause de cela que le code de Dan de fonctionne pas correctement

PS: J'ai essayé de coller un fichier exemple, mais il est trop "gros" (> 100). je vais faire en sorte de vous en faire passer un plus petit.... dès lundi(we oblige)

Merci encore à tous,

amicalement

Elfi

re,

OK; Autant pour moi là. Je pensais que le nom de ta feuille correspondait au numéro de ligne. Donc si ligne 1400, en A1400 tu avais le chiffre 1400.

Essaye ceci à la place

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Macro par Dan pour plabrousse - 28/06/08
Dim val As Integer
On Error Resume Next
val = ActiveCell
Sheets(val).Visible = True
End Sub

Amicalement

Dan

Salut le forum

Pas de gestion d'erreur Dan , Attention ! ! !

Je sais que l'on fait tous la même erreur de passer par Resume Next

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim val As Integer
On Error GoTo Erreur
val = ActiveCell
Sheets(val).Visible = True
Exit Sub
Erreur:
If Err.Number = 9 Then
MsgBox ("La feuille n'existe pas !")
Else
MsgBox ("Erreur non traiter ! Code=" & Err.Number & " " & Err.Description)
End If
End Sub

Mytå

Bonjour

Il faut gérer le fait que le nom de la feuille à ouvrir est en colonne 1

Exemple de code :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim Moi As String

Dim Feuille As Worksheet

Dim Erreur As Boolean

'La liste commence en ligne 6 colonne 1

If Target.Row > 5 And Target.Column = 1 And ActiveCell <> "" Then

Moi = ActiveSheet.Name

For Each Feuille In Worksheets 'masquer toutes les feuilles sauf la feuille active

If Feuille.Name <> Moi Then Worksheets(Feuille.Name).Visible = False

Next

Erreur = True

For Each Feuille In Worksheets ' ne rend visible que la feuille voulue

If Feuille.Name = ActiveCell Then

Worksheets(Feuille.Name).Visible = True

Erreur = False

Exit For

End If

Next

If Erreur Then ' affiche un msg d'erreur si la feuille n'existe pas

MsgBox "La feuille " & ActiveCell & " n'a pas été trouvé"

End If

End If

End Sub

re,

Demeb ok pour la colonne 1, mais pour le reste ce n'est pas ce qu'il souhaite pour le moment

-->

Pour la remasquer ensuite, on verra plus tard, procédons par étape

de plus, il ne parle pas de ligne 6 si je ne me trompe.

@+

Dan

Bonjour à tous. Comme promis, je me manifeste le lundi. J'ai parcouru vos divers code. Vous m'avez tous donné une partie de la solution. En bidouillant un peu de chacun, je suis arrivé à ce que je désirais. pour la ligne 6, il avait raison, je partai de la ligne 2. En revanche, le boulot pour la colonne 1 était bon.

Bravo à tous et merci.

Bien cordialement

Elfi

J'avais oublié de préciser "Résolu". Cet oubli est réparé.

Bien cordialement

Elfi

"Gal, amant de la Reine alla tour magnanime,

Galamment de l'arène à la tour Magne à Nimes" V. HUGO

11classeur.xlsm (36.25 Ko)
Rechercher des sujets similaires à "demasquer feuille fonction selection"