Non credo sia risolvibile, cambiare colore ad una cella non avvia il ricalcolo, infatti basta che nella cella richiamata dalla funzione tu scriva qualcosa ed il risultato si aggiorna.
Però puoi migliorare la situazione inserendo la riga
Application.Volatile
che forza il ricalcolo qualunque cella tu modifichi dopo aver cambiato il colore