Перед заменой поищите ячейки с помощью Find... Findnext. Другой метод - используйте событие Worksheet_Change(ByVal Target As Range), Target.Count - число измененных ячеек.
1. Код следует оформлять соответствующим тегом. Исправьте. 2. Можно попробовать циклом перебирать ячейки в выделенном диапазоне и проверять на наличие формулы и значения. При выполнении условия увеличивать значение счётчика.