- ベストアンサー
マクロ記述を教えてください。
エクセル2010を使用しています。貼り付けのオプションで 「値のみ」しか選択できないマクロ記述を教えてください。 セル上で右クリックし「コピー」選択後、貼り付け先セルで右クリックした時、「値のみ」しか選択できないファイル設定をしたいと思います。 要するに起動後、すべての「貼り付け」の作業が「値のみ」に限定したいと思います。よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ThisWorkBookに下記コード Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean) If Application.CutCopyMode Then UserForm1.Show Cancel = True End If Application.CutCopyMode = False End Sub 添付のようなフォームを作って、下記コード Private Sub CommandButton1_Click() UserForm1.Hide End Sub Private Sub CommandButton2_Click() Selection.PasteSpecial Paste:=xlPasteValues UserForm1.Hide End Sub これで、質問の内容は実現できるが、貼り付けは右クリックメニューだけでなく、ホームのボタンやCtrl+Vでもできるので、こりれらをなんとかしないと質問の内容実現だけでは意味がないと思うけど、どうなんだろう。
その他の回答 (2)
- okormazd
- ベストアンサー率50% (1224/2412)
- ForestRain
- ベストアンサー率63% (14/22)
貼り付けのオプションの表示、非表示の切り替えはできますが、 「値のみ」しか選択できないようにするのは無理じゃないでしょうか。 貼り付けた後に、書式をクリアするのではダメなのかな。 たとえば、Workbookの_SheetChangeイベントで、 If Application.CutCopyMode Then Target.ClearFormats というのはどうですか? 貼り付け先の書式もクリアされてしまうので、 これを残しておきたい場合は、あらかじめどこかに書式を保持しておく必要があります。
お礼
ありがとうございました。万年スケジュール表を作成しています。罫線もコピーされてしまい困っておりました。参考になりました。
お礼
早速、ご回答いただきありがとうございました。目的を達成できました。完璧です。CTRL+Vについては、ポップアップウィンドウを開かせエラー案内する予定です。