質問者のされている操作は、回答No.2「skp026」さんが質問さけているように「もしかすると、数式内に値をじかに入れてないでしょうか。」ということでないでしょうか。
小生も、複雑な計算式を入れたセルに、ついうっかりキー入力をしてしまい、計算式を消してしまうことがしょっちゅうあります。
それを防止するには、計算式が入っているようなセルには、ロックをかけ、キーボード入力を認めるセルにはロックをしないように設定し、シートの保護をするのが良いです。
その方法は、インターネットでキーワード「セルのロック」といれて検索すれば、いくらでも出てきます。
ただ、計算式の入っているセルのみにロックをかけ、それ以外のセルに非ロックとする作業は、計算式の入っているセルが多数あると、かなり大変です。
それを、容易に行うには、マクロでやるのが一番良い方法です。
具体的には、マクロのみのファイル、例えば、「セルのロックと保護」という名のファイルを作り、そのファイルに以下のサンプルのようなマクロを組み込みます。
そして、計算式のあるセルにロックをかけたいファイル(ファイル数は、何ファイルでも可)を開いた状態で、マクロを実行します。
瞬時にセルのロックが完了しますので、そのファイルを保存すれば、以後は、計算式を消してしまうことは、ありません。
もし、計算式を変更したい場合は、シートの保護を解除し、計算式の変更を行ってから、再びシートの保護を行います。
【マクロのサンプル】
Sub セルのロックと保護()
If Workbooks.Count = 1 Then
ret = MsgBox("操作対象となるEXcelファイルが開かれていません !!" & Chr(13) & "開いてからプログラムを実行してください", vbExclamation, "警告")
Exit Sub
End If
Msg = "計算式のあるセルのロック&保護を行います。" & Chr(13) & "続行しますか。" ' メッセージを定義します。
Style = vbYesNo + vbExclamation + vbDefaultButton2 ' ボタンを定義します。
Title = "確認" ' タイトルを定義します。
ret = MsgBox(Msg, Style, Title)
If ret = vbNo Then
ret = MsgBox("セルのロックと保護を中止します", vbOKOnly, "中止")
Exit Sub
End If
For Each bk In Workbooks
If InStr(bk.Name, "セルのロックと保護") = 0 Then
bk.Activate: ct = ct + 1
For Each sht In Worksheets
sht.Select
sht.Unprotect
Cells.Select
Selection.Locked = False
Selection.FormulaHidden = False
With Cells
On Error Resume Next
.SpecialCells(xlCellTypeFormulas).Locked = True
End With
sht.Protect Contents:=True
Range("A1").Select
Next sht
Sheets(1).Select
End If
Next bk
Workbooks("セルのロックと保護e.xls").Activate
ret = MsgBox("計算式のあるセルのロックと保護が終了しました。", vbOKOnly, "お知らせ")
End Sub