Re,
C'est une procédure événementielle qui s'exécute à l’activation de la feuille.
Tu peux recopier ce code dans une nouvelle feuille sur le même principe.
Elle est placée dans son module dans l'éditeur VBE (ALT F11 pour le visualiser).
Quelques commentaires :
Option Explicit
'Module Feuil1 (Fiche détaillée)
Private Sub Worksheet_Activate()
'Déclaration des variables
Const lRow As Long = 15
Dim lastrow As Long
Dim Cell As Range, Rng As Range
'Optimisation procédure
Application.ScreenUpdating = False
With Me
'Dernière ligne non vide colonne B (2)
lastrow = .Cells(.Rows.Count, 2).End(xlUp).Row
'Plage de données à vérifier
Set Rng = .Cells(lRow, 2).Resize(lastrow - lRow + 1)
For Each Cell In Rng
'Si la formule retourne une chaîne de longueur nulle (vide)
Cell.EntireRow.Hidden = IIf(Len(Cell) = 0, True, False)
Next
End With
End Sub