Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


8024 / 13644 ツリー ←次へ | 前へ→

【35467】切り取り貼り付けは×コピー貼り付けは○ こば。 06/3/5(日) 23:32 質問[未読]
【35498】Re:切り取り貼り付けは×コピー貼り付けは○ Ned 06/3/6(月) 21:08 発言[未読]
【35510】Re:切り取り貼り付けは×コピー貼り付けは○ Jaka 06/3/7(火) 9:34 発言[未読]

【35467】切り取り貼り付けは×コピー貼り付けは○
質問  こば。  - 06/3/5(日) 23:32 -

引用なし
パスワード
   右クリックしたとき

切り取り貼り付けは×
コピー貼り付けは○

を実現したいため、どのように設定すればよいでしょうか?
下のソースですとどちらも貼り付けできないので何か良い方法はありませんか?


Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
  Application.CutCopyMode = False
End Sub

【35498】Re:切り取り貼り付けは×コピー貼り付け...
発言  Ned  - 06/3/6(月) 21:08 -

引用なし
パスワード
   こんにちは。
>右クリックしたとき
・・・マウス右クリックメニューから、[切り取り]を使えないようにするという意味なら

Sub Sample()
    Application.CommandBars("cell").Controls.Item(1).Enabled = False
End Sub

CommandBars("cell")に対する変更をリセットする場合は

Sub Sample2()
  Application.CommandBars("cell").Reset
End Sub

などです。
これはBookやSheetではなく、Ecxelに対する処理ですから、特定の状況に限るのであれば
イベントマクロを使ってOnOffの切替が必要だと思いますヨ^ ^

(それにショートカットやメニューからは普通に使えますが)

【35510】Re:切り取り貼り付けは×コピー貼り付け...
発言  Jaka  - 06/3/7(火) 9:34 -

引用なし
パスワード
   こんな感に怪しそうな全てのイベントに..。
抜けているのがあったら追加して下さい。
イベントが発生しない時もあるみたいなので気休め程度ですが。

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Nocut
End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Excel.Range)
Nocut
End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Excel.Range)
Nocut
End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Excel.Window)
Nocut
End Sub

Sub Nocut()
If Application.CutCopyMode = 2 Then
  Application.CutCopyMode = False
End If
End Sub

8024 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free