Como você disse, você pode usar outra célula M1, por exemplo:
=If(M173=True,"Fine","No")
Eu usei o Fine apenas no caso de você precisar do Yes em outro lugar.
Selecione as opções da sua lista suspensa e defina o nome Fine
No K72, crie Data Validation
, escolha List
Na gravação de origem:
=Indirect(M1)
Nesse caso, quando M1 é diferente de Fine
, o menu suspenso está vazio, quando você tiver Fine em M1, K72 mostrará os valores que você deseja escolher na lista
A atualização da lista suspensa torna-se em branco
Defina o nome de uma célula em branco No
para torná-lo em um lugar especial para que você não o use para nenhum valor (próximo à lista Fina ou à lista de sim)
Mantenha a fonte de validação de dados como antes = Indireto (M1)
Se M1="Não" a lista ficará em branco (você tem que escolher o espaço em branco para limpar a célula se tiver algum valor)
Se M1="Sim" ou "Fino" o que você escolher, a Lista terá as opções que você precisa.
Apenas use palavra normal para Definir nome, não use TRUE
, False
...
Para limpar automaticamente, você precisará do VBA