Bonjour,
Il te faut tester si elles contiennent une valeur ou pas mais pour ça tu ne peux pas le faire directement comme ça, il te faut soit parcourir la plage et utiliser un drapeau que tu mais à "True" dès qu'une cellule rencontrée contient une valeur puis en fin de boucle, tu teste sa valeur et agit en conséquence soit utiliser une fonction comme CountIf() en Français NB.SI() pour savoir si toutes les cellules sont vides ou non :
Rows("121:223").EntireRow.Hidden = Application.CountIf(Range("H121:J220"), "*") = 0
si la comparaison de "Application.CountIf(Range("H121:J220"), "*") = 0" retourne Vrai (True) aucune cellule contient une valeur donc on cache. Si tu avais voulu le contraire, il suffisait d'utiliser l'opérateur Not de cette façon :
Rows("121:223").EntireRow.Hidden = Not Application.CountIf(Range("H121:J220"), "*") = 0
en utilisant la seconde ligne de code, tu affiche à nouveau tes lignes à condition qu'elles soient toutes vides