Excelでコピー&ペーストするとき、コピー先領域の内容を全て削除してからコピーしてくれるような
機能はないでしょうか?
<理由>
マクロ実行ボタン付きのシートがあり、セルの内容を毎回書き換えてから、別のブックのシートにコピーしています。
しかし、コピー時、前回のボタンはそのまま残るため、ボタンが沢山溜まっていきます。
コピー先でもマクロを使用したいため、ボタンはコピーしたいです。
以前は、初回コピー時のみ、ボタンをコピーし、以降はオプションでコピーしないように設定していました。しかし、Excelのオプションはブックごとに指定できないため、別のブックを開くときは、オプションを戻さなければなりません。
そこで、コピー時にコピー先領域を削除してからコピーするようにしましたが、毎回削除を行うのは面倒です。
コピー先シートの内容を全て削除してからペーストするような機能はないのでしょうか。
あるいは、ブック毎にオプション指定をする方法でも良いのですが・・・
よろしくお願い申し上げます。
No.1
- 回答日時:
「切り取り」して「貼り付け」してはいかがでしょう。
私はショートカットで行っています。
Ctrl+X 切り取り
Ctrl+V 貼り付け
http://www2.odn.ne.jp/excel/xlshortcut.html
No.2
- 回答日時:
示されていないのでお手元のコードがどのようなものなのか分かりませんが、ボタンがたまるということは恐らく、シート上の全ての内容をコピペするマクロなのではないかと思います。
そうだとすれば、既存シート上の「内容」を別の既存シート上に貼り付けるというのではなくて、コピー元のシートそのものを丸ごとマクロでコピーすればいいのではありませんか?そうして複製されたシートをコピー先のブックに(貼り付けではなく)挿入し、コピー先のブック内にある前回のシートはやはりマクロで削除すればいいですね。ここまでの作業を全て一つのプロシージャとして記述すれば、削除などの手作業は何もしなくて済みますね。
そうではなくてシート上の一部のセル範囲とボタンを選択してそれらをどこかにコピペしているという場合であっても、せめてマクロに古いボタンの削除という操作も混ぜておけば、どんどんたまるということは起こり得なくなるのではありませんか?
マクロで削除するんだから、機能とかではなくて、単に削除すればいいだけですね。
いずれにしても、折角マクロを使っているのに、削除など毎回手作業で行っている操作が何か残っている状況でしたら、それらもマクロ化することを検討してみてください。そこまでを一つのプロシージャで完結させるんですよ。
なおシートを丸ごとコピーするのは Worksheet.Copy メソッド(ブック間でもできます)、シートの削除は Worksheet.Delete メソッド、シートの削除時に警告を出させなくさせるには Application.DisplayAlerts プロパティの切り替え、ボタンの削除はボタンの種類にもよりますが Worksheet.Buttons(1).Delete メソッドなどです。ヘルプなどでそれぞれ調べてみてください。
この回答への補足
ご回答ありがとうございました。
コピーペーストをマクロで実行するならおっしゃる通りなのですが、
コピー作業はマクロではなく、CTRL+C,CTRL+Vで行っています。
諸事情がありコピー元ファイル名が異なるので、マクロ化が難しい状態です。
No.3ベストアンサー
- 回答日時:
No.2 です。
>諸事情がありコピー元ファイル名が異なるので、マクロ化が難しい状態です。
本当ですか?ファイル名には何の規則性もないのですか?仮にないとしても、ユーザーが出現するダイアログボックスからファイルを指定するようなマクロにすればいいのではありませんか?それともコピー元のファイルの中身も内容がバラバラで、何の規則性もないのでしょうか?
全くその通りで、今まで突貫工事的な対応をしてきたのが、ここにきて様々な問題を引き起こしています。
社内にはシステム全体を管理している人がおらず、その都度その都度、いいかげんに対応してきたのが原因です。本当ならシステム全体を見直さなければならないのですが、それができない環境があることもご理解ください。最後は愚痴になってしまい申し訳ございません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/05/24 08:33
- Visual Basic(VBA) Excelのマクロについて教えてください。 1 2023/03/12 12:16
- Excel(エクセル) エクセルのマクロについて教えてください。 3 2023/02/07 14:47
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Excel(エクセル) マクロVBA別Excelブックにデータ転記 2 2022/07/10 23:35
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 12:30
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/04 17:58
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/01/26 09:50
- Visual Basic(VBA) VBAマクロでシートコピーした新シートにコピー元シートとの計算式の入れ方を教えて下さい。 5 2022/11/20 09:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel 関数を使ってデータと一...
-
エクセルの選択範囲以外を削除...
-
【Excel VBA】シートコピー時、...
-
VBAにて複数フォルダのエクセル...
-
【Excel】数式をそのまま他のシ...
-
EXCELのVBAでシートコピーをし...
-
エクセルVBA 1行飛ばしで転記す...
-
エクセルのシートコピーした際...
-
excel表のコピー時、列・行幅も...
-
エクセルのワークシートをUSBメ...
-
シートが保護されていないのに...
-
エクセルの1シートの内容を複...
-
Excel シートに別のExcelシート...
-
Excel シートのコピーの際、ペ...
-
Excelのシ-トを別Bookへ貼り付...
-
【エクセル】プルダウン設定の...
-
WSHで、EXCELにワーク...
-
【Excel】シート全体から一部を...
-
ExcelのVBAで、application.inp...
-
コピー後に値のみ貼り付け エ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの選択範囲以外を削除...
-
Excel 関数を使ってデータと一...
-
EXCELのVBAでシートコピーをし...
-
EXCELで別のブックから式をコピ...
-
【Excel】数式をそのまま他のシ...
-
【VBA】コピー&複数個所のペー...
-
Excelの行をコピーして貼り付け...
-
【エクセル】プルダウン設定の...
-
エクセルのワークシートをUSBメ...
-
Excel シートのコピーの際、ペ...
-
エクセルの1シートの内容を複...
-
エクセルVBA 1行飛ばしで転記す...
-
【Excel VBA】シートコピー時、...
-
エクセルシートを別のエクセル...
-
ExcelVBAで、ユーザーフォーム...
-
エクセルでシートを「移動また...
-
Excel シートに別のExcelシート...
-
Excel 数式の保護をしたセルを...
-
EXCEL2007でシートをコピーする...
-
シートが保護されていないのに...
おすすめ情報