Excel VBA 質問スレッド №2003 (解決済)

数式入ったシートのコピー

投稿者 : 初心者     投稿日時 : 2024/08/27(Tue) 21:49:10     OS : 未指定     EXCEL : 未指定
excelで数式の入ったシートを別ブックにコピーすると、数式が元ブックとリンクした状態でコピーされてしまいます。
原本であるコピー元ブックにはシート1と2があり、シート2にはシート1のセルから参照する数式がいくつも入っています。
このシート1と2を毎月の入力処理をして、○月分としてマクロでコピーして別ブックとして保存できるようにしました。
ただ、数式がコピー元ブックとリンクするようになっていて、リンクをしない形でコピーする方法をご存知なり、方法がありましたら教えていただけないでしょうか?
よろしくお願いします。

スポンサーリンク
[返信 1] Re : 数式入ったシートのコピー
投稿者 : さんこう     投稿日時 : 2024/08/27(Tue) 22:00:35
参考になれば。

<vba リンクをしない形でコピーする方法>
https://www.google.com/search?q=vba+%E3%83%AA%E3%83%B3%E3%82%AF%E3%82%92%E3%81%97%E3%81%AA%E3%81%84%E5%BD%A2%E3%81%A7%E3%82%B3%E3%83%94%E3%83%BC%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95

[返信 2] Re : 数式入ったシートのコピー
投稿者 : てらてら     投稿日時 : 2024/08/28(Wed) 06:04:12
こんにちは。

 コピーした後で、"シート2"の数式の入っているセルを検索して、[ ] を削除すればそれらしくなると思います。
 コピー先に参照元となるシート名(今回なら"シート1") があるとシート名が改名されるのでおかしくなるでしょう。

 参考にしてみてください。

Sub macro()
    ThisWorkbook.Worksheets("シート1").Copy after:=Workbooks("別ブック.xlsm").Sheets(Sheets.Count)
    ThisWorkbook.Worksheets("シート2").Copy after:=Workbooks("別ブック.xlsm").Sheets("シート1")
    
    Workbooks("別ブック.xlsm").Sheets("シート2").UsedRange.SpecialCells(xlCellTypeFormulas).Replace "[*]", ""
End Sub

[返信 3] Re : 数式入ったシートのコピー
投稿者 : 初心者     投稿日時 : 2024/08/28(Wed) 07:05:13
てらてら様、ありがとうございます!
試してみます!

[返信 4] Re : 数式入ったシートのコピー
投稿者 : 初心者     投稿日時 : 2024/08/28(Wed) 11:44:37
解決しました。
ありがとうございました。

当掲示板について
  • Excel VBA に関する掲示板です。Excel VBA に関する質問や疑問、それに対する解決方法など気軽に投稿してください。
  • 記事内ではHTMLのタグは使用できません。
  • 記事は一度投稿すると修正できません。内容を訂正したい場合は返信で対応してください。
  • Sub〜End Sub、Function〜End Function は自動的にプログラムコードとみなし、枠で囲って見やすくします。
  • Excel VBA とは関係ないことや、他人が不快に思うようなことなど、管理人が適当でないと判断した記事は削除する場合があります。
スポンサーリンク
返信入力フォーム
お 名 前  :
内  容   :

ステータス  :

認証コード  : キャプチャ画像 




( 処理日時 : 2025-07-05 05:34:59 )
タイトルとURLをコピーしました