Puoi sfruttare gli eventi CellBeginEdit e CellEndEdit, con il primo ottieni il valore della cella e lo assegni ad una variabile mentre nel secondo confronti il valore attuale della cella con quello "salvato" nella variabile.
Volendo...puoi aggiungere le celle modificate ad una Dictionary in modo da avere tutte le celle modificate e il loro valore precedente, esempio:
Di meglio non mi viene in mente altro....
Ciao