[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『CutCopyMode解除に関して』(chika)
あるシートの指定範囲内はコピペを禁止するコードを作成しました。
指定範囲以外でCtrl+cでコピーし指定範囲外のセルを選択するとCutCopyMode解除してしまいます。ほかの動作に関して正しく動作します。
どの部分が悪さをしているのでしょうか?
ご教授お願い致します。マクロに関しては初心者なので、至らない部分があると思いますがよろしくお願いします。
以下コードです。
Private Sub Worksheet_Deactivate()
Application.CellDragAndDrop = True Application.OnKey "^d"
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next Application.CellDragAndDrop = True Application.OnKey "^d"
'▼処理対象か判定 If Intersect(Target, Range("G26", Cells(Rows.Count, "DD"))) Is Nothing Then Exit Sub
Application.CutCopyMode = True Application.CellDragAndDrop = False Application.OnKey "^d", "" End Sub
< 使用 Excel:Excel2016、使用 OS:Windows10 >
そもそも なぜに d なんですか?
> Application.OnKey "^d"
ステップ実行してみると
Application.CellDragAndDrop = True のところで
コピー状態は解除されますね
そういう仕様なのではないでしょうか?
例えば オートフィルターを設定する際にも コピー状態は解除されてしまいますが それと同じようなものなのでは?
やりたいことが今一つわかりません
(渡辺ひかる) 2019/09/21(土) 18:32
>そもそも なぜに d なんですか?
下方向へコピーを防ぐために、ショートカットキーを無効にしました。
>そういう仕様なのではないでしょうか?
仕様ではどうしようもありませんね。
>やりたいことが今一つわかりません
チェックシートを作成しており、コピペでチェックできない体制を作るためにこのようなものを作成しています。
(chika) 2019/09/21(土) 18:53
Ctrl + D だけ 防いでも 意味がないと思いますが・・・
上のセルと同じ値を手入力するのはOKなのですか?
>チェックシートを作成しており、コピペでチェックできない体制を作るためにこのようなものを作成しています。
結局 安易に チェック済にさせたくないという事なんでしょうか?
だとしたら、あまり効果はないような気もします。
(渡辺ひかる) 2019/09/21(土) 19:34
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.