. 19.01.17
Buenas noches,
Considerando que una celda puede tener un número ingresado O una fórmula que lo calcule, no ambas cosas, la única solución es por una rutina de VBA basada en un evento (cambio de la celda E7), como la que te comparto a continuación.
Para que funcione, activa el editor de Visual Basic (presiona Alt+F11) y en el panel de la izquierda busca la hoja donde quieres que esto ocurra. Da doble click sobre ella. (Otra forma de llegar a este punto es hacer click derecho sobre la solapa de esta hoja y elegir la opción "Ver Código)
Allí pega el siguiente procedimiento de VBA:
Private Sub Worksheet_Change(ByVal Target As Range)
CeldaResta = "E7" 'celda donde ingresar el valor a restar
CeldaFinal = "G7" 'indica la celda donde restar lo ingresado en celdaResta
'
If UCase(Target.Address(False, False)) = UCase(CeldaResta) Then
Range(CeldaFinal).Value = Range(CeldaFinal).Value - Range(CeldaResta).Value
End If
End Sub
Nota que, al principio del código, hay unas variables para que lo adaptes a tu archivo o las cambies si es que necesitaras que fuera en otro rango.
Finalmente, aclaro que un formato condicional sólo cambia formatos de celdas según alguna condición, pero NUNCA cambian el contenido de ella.
Espero que sea lo que buscabas -y, en tal caso, agradeceré que califiques mi contribución- o escribeme de nuevo aquí, si necesitas más apoyo con esto.
Saludos
Fernando
.