• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBA ファイルの保存方法)

VBAファイルの保存方法

このQ&Aのポイント
  • VBAファイルの保存方法について知りたいです。Excel Aファイルを「名前を付けて保存」で、別名のBというファイル名で保存したいですが、Aファイルは開かれたままにしたいです。
  • 保存したVBAファイルを別の名前でファイルBとして開きっぱなしにする方法を教えてください。Aファイルにはマクロやセル関数が含まれており、Bファイルではマクロを削除し、セル関数の情報を保持したいです。
  • ExcelのVBAファイル保存時に、ファイルAは閉じずに保存し、別名のBファイルとして開きっぱなしにする方法について教えてください。Aファイルにはマクロとセル関数があり、Bファイルではマクロを削除してセル関数を保持したいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • Sinogi
  • ベストアンサー率27% (72/260)
回答No.2

セル関数とはエクセル標準のワークシート関数だけでしょうか? 標準モジュール等が不要なら、必要なシートを新しいブックにコピーして名前をつけて保存する操作をマクロ記録することで基本的なコードを入手できます。 若干様子が違うかもしれませんが「自ファイルの分割保存」に関する質問した経験があるので参考URLとしますね。

参考URL:
http://okwave.jp/qa/q5602398.html
hiro300
質問者

お礼

参考URL見ました。 必要なシートを新ブックにコピーという方法を考えましたが、 確認したところ、大きな勘違いをしていたことに気づきました。 Bファイルにシートコピーしたとき、 セル関数が =[Aファイル]Sheet1!$A$1 になると勘違いしていました。 =Sheet1!$A$1という風になるんですね。 シートコピーで対応できそうです。 ありがとうございます。

その他の回答 (2)

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.3

>  → シートのコピーはセル関数がA側になってしまうので、使用できない この意味がわからないのですが 以下のページの方法では駄目でしょうか マクロを除いた配布用ブックを作成する。 http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_800_200.html

hiro300
質問者

お礼

回答ありがとうございます。 Bファイルにシートコピーしたとき、 セル関数が =[Aファイル]Sheet1!$A$1 になると勘違いしていました。 シートのコピーはセル関数がA側になってしまうというのは 上記の意味です。言葉足らずですみません。 シートコピーとマクロ削除で、対応できそうです。 ありがとうございます。

  • kokorone
  • ベストアンサー率38% (417/1093)
回答No.1

名前を付けて保存は、現在のファイルを別のファイルとして保存する(リネーム)です。 閉じるのではなく、別のファイルになるのです。 シートのコピーができないのなら、 最初から、ファイルAをファイルBにコピーしておいて、ファイルBでマクロを実行。 実行後、マクロを削除する これでいかがですか?

hiro300
質問者

お礼

早速の回答ありがとうございます。 ファイルBを実行後、マクロを削除すると、 また、再度、マクロが実行できないため、Aを開きなおす必要があります。 ロジック的にはできそうですが、ちょっと複雑になりそうです。 でも、こういった方法は思いつきませんでした。