Il est toujours possible de mettre en place une restriction sur chaque activité du cours, ainsi les étudiants verraient le cours mais ne pourraient pas accéder aux différentes activités du cours, mais c'est contraignant parce qu'il faudrait créer une restriction sur chaque activité.
Sinon, pourquoi ne pas créer une cohorte avec les étudiants devant avoir accès aux cours cachés et utiliser la méthode d'inscription par cohorte à ces cours. Du coup tous les étudiants pouvant avoir accès aux cours cachés seraient inscrits à tous les cours, mais au moins les autres ne pourraient pas s'inscrire dans ces cours.
Sinon, je vois une troisième solution qui impliquerait l'utilisation d'un plugin tiers pour l'inscription des utilisateurs (il faudrait bien sûr désactiver l'auto inscription pour les cours cachés). J'ai rapidement regardé sur le site de Moodle mais je n'ai jamais utilisé ce plugin. Il semble correspondre à ce que tu souhaites faire: https://moodle.org/plugins/enrol_attributes (à moins encore que je n'ai pas compris ce que tu souhaites faire).