• 締切済み

Excelに埋め込んだVBAのプログラムが消えた。

Excelに埋め込んだVBAのプログラムが消えてしまいました。 何か復旧する方法はありませんでしょうか? 心当たりは何もないのですが、原因はありますでしょうか?

みんなの回答

回答No.6

>保護することによって、プログラムが消えることは無いですよね? 無い筈です。 消えたとしたら、ファイルが破損して自動修復した際に、破損したVBAのプログラム部分を切り捨てたのだろうと思います。 破損により修復が行われた場合、破損した場所によっては、シートのデータが部分的に失われている可能性もありますから、データの一部が欠落していないか確認した方が良いでしょう。

miya2004
質問者

お礼

どうやら、シートだけ別ファイルに移動したときに、 プログラム部分が消えてしまったようです。 移動前のファイルが残っていたので、助かりました。

  • tsubuyuki
  • ベストアンサー率45% (699/1545)
回答No.5

実物を見ることが出来ないので、 「その他、考えられる可能性」を二点。 1)シートモジュールに書き込んだが、当該シートを削除した   ⇒復旧不可能です。 2)XLSX形式で保存した   ⇒事前にXLSM形式(あるいはXLS形式)で保存していれば残っているでしょうが・・    XLSX形式でしか保存していないのであれば、復旧は難しいです。 以上、可能性として参考まで。

回答No.4

>シートの保護をしたのですが、VBAと関係ありますか? ありますよ。 保護すると、VBAのコードにアクセス出来なくなるので、VBエディタでコードが表示されなくなります。 シート保護中は、あたかも「消えて無くなったように見える」ので、保護を解除して下さい。

miya2004
質問者

お礼

保護中は編集できなかったので、保護を解除したのですが、 すべて消えてしまいました。 保護することによって、プログラムが消えることは無いですよね?

  • logner
  • ベストアンサー率33% (540/1614)
回答No.3

間違ってモジュールを削除してしてしまったんですかね。 モジュールをエクスポートとかして保存していなければ 復元するのは無理じゃないかと。

回答No.2

>VBAを使って、コマンドボタンを配置して、コマンドボタンをクリックしたときの動作を >記述したプログラムを作ったのですが、 >今見ると、プログラム部分が消えています。 >コマンドボタンは残っています。 プログラムの作成時に「Visual Basic Editor」が開いて、そこでプログラムを打ち込んだ筈ですが、Visual Basic Editorの方で「上書き保存」は行ってますか? もし「上書き保存したのはExcelでだけで、Visual Basic Editorの方は何もしないで閉じちゃった」のであれば、プログラムは保存されずに消えます。 Visual Basic Editorの方にも「上書き保存」があるので、両方でちゃんとセーブしないと「書き換わらないで元のまま」になりますよ。

miya2004
質問者

お礼

Visual Basic Editorは保存しています。 何日間もかけて作ったので、無くなるとしても部分的だと思いますが、 何もなくなっているので、おかしな操作をしたのかなと思っています。 シートの保護をしたのですが、VBAと関係ありますか?

  • DreamyCat
  • ベストアンサー率56% (295/524)
回答No.1

>Excelに埋め込んだ <  埋め込むことはあり得ないので、何をどうしたのかが問題です。 消えることはありませんので何か勘違いしているか 保存していなかったのか、操作ミスで消したのでしょう。  具体的に どうやって埋め込んだのか それをどこに保存してあったのか 消えたことをどうやって確認したのか を書きましょう。

miya2004
質問者

お礼

VBAを使って、コマンドボタンを配置して、コマンドボタンをクリックしたときの動作を 記述したプログラムを作ったのですが、 今見ると、プログラム部分が消えています。 コマンドボタンは残っています。

関連するQ&A