Si vous regardez votre fichier vous avez fait des copier-coller. Du coup, les formules font référence à un fichier inconnu.
1. défusionnez les cellules concernées par le 0 (donc D17, D44, .....)
2. Placez ce code dans la feuille EMyx
Private Sub Worksheet_Activate()
Dim i As Integer 'définition de variable - i va correspondre a une ligne
For i = 17 To 71 Step 27 'on boucle de la ligne 17 a la ligne 71 par pas de 27
If Left(Range("D" & i), 1) = 0 Then 'on verifie que le premier caractere en colonne D de la ligne i est nul
Range("D" & i - 1 & ":D" & i + 7).EntireRow.Hidden = True 'si oui on masque les lignes
Else: Range("D" & i - 1 & ":D" & i + 7).EntireRow.Hidden = False 'si non on affiche les lignes
End If
Next i 'on passe a la ligne suivante - donc ligne i + 27
For i = 80 To 98 Step 9 'on boucle de la ligne 80 a la ligne 98 par pas de 9
If Left(Range("D" & i), 1) = 0 Then
Range("D" & i - 1 & ":D" & i + 7).EntireRow.Hidden = True
Else: Range("D" & i - 1 & ":D" & i + 7).EntireRow.Hidden = False
End If
Next i
End Sub
Pour le placer :
- click droite sur l"onglet Emyx
- Choisir "Visualiser le code"
- Coller le code dans la fenêtre
- enregistrer votre fichier au format XLSM (pour accepter les macros)
Le code va agir chaque fois que vous activez la feuille Emyx en venant d'une autre feuille.
3. faites un test comme ceci :
- allez sur la feuille "Cost-Ecobrick"
- supprimez les données dans les cellules V17 à V19
- cliquez sur l'onglet Emyx
Si ok -->
Cordialement
edit : modifié ligne For i = 80 to 90 step 9 en For i = 80 to 98 step 9