![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
セル番地は指定せず、どのセルでも、
すでにコピーした情報を貼り付けたらイベントを発生する
ってことはできないでしょうか?
ワークシートのイベントの一覧を見てみましたが
ないようです。
イベントの一覧はこちらです。
Activate
BeforeDoubleClick
BeforeRightClick
Calculate
Change
Deactivate
FollowHyperlink
PivotTableAfterValueChange
PivotTableBeforeAllocateChanges
PivotTableBeforeCommitChanges
PivotTableBeforeDiscardChanges
PivotTableChangeSync
PivotTableUpdate
SelectionChange
この中に、Pasteと言うイベントがないことから、
そのような動作は無理なのでしょうか?
No.2ベストアンサー
- 回答日時:
#1、cjです。
すみません、編集ミスしました。
コードまるごと
差し換えでお願いします。
' ' ==============================
Private Sub Worksheet_Change(ByVal Target As Range) ' Re8101870_AfterPaste
' ' 条件分岐
With Application
If .CutCopyMode = xlCopy Then
.EnableEvents = False ' 処理内容によっては必要■
' '-----------「_AfterPaste イベント」 ?での処理―――---------
MsgBox "_AfterPaste"
' '-------------------------------------------------------
.EnableEvents = True ' ■
End If
End With
End Sub
' ' //////////↓Toggle↑////////
Private Sub Worksheet_Change(ByVal Target As Range) ' Re8101870_BeforePaste
' ' 条件分岐
With Application
If .CutCopyMode = xlCopy Then
.EnableEvents = False ' 必須
.Undo ' 一旦、貼付けをキャンセル([元に戻す])
' '-----------「_BeforePaste イベント」?での処理------------
MsgBox "_BeforePaste"
' '-------------------------------------------------------
Target.PasteSpecial ' あらためて貼付け
.EnableEvents = True
End If
End With
End Sub
' ' ==============================
No.1
- 回答日時:
こんにちは。
Paste イベントが無いことはご承知の通りです。
疑似的な対応例を2例挙げておきます。
使えるかどうかは、用途次第ですね。
ただ、コピーモードには対応していますが。
カットモードには対応できません。
# 何か↑方法あった気がしますがテーマと関係ないですし思い出せません。
///
「シート上でセルの値に関する設定に変更が加えられた時∧コピーモード」
つまり(≒)
「ペーストされた時」
という考え方です。
' ' ==============================
Private Sub Worksheet_Change(ByVal Target As Range) ' Re8101870_AfterPaste
' ' If Target.... Then Exit Sub ' その他の条件分岐
With Application
If .CutCopyMode = xlCopy Then
.EnableEvents = False ' 処理内容によっては必要■
' '――「_AfterPaste イベント」 ?での処理―――
MsgBox "_AfterPaste"
' '――――――――――――――――――――――
Target.PasteSpecial
.EnableEvents = True ' ■
End If
End With
End Sub
' ' //////////↓Toggle↑////////
Private Sub Worksheet_Change(ByVal Target As Range) ' Re8101870_BeforePaste
' ' If Target.... Then Exit Sub ' その他の条件分岐
With Application
If .CutCopyMode = xlCopy Then
.EnableEvents = False ' 必須
.Undo ' 一旦、貼付けをキャンセル([元に戻す])
' '――――「_BeforePaste イベント」?での処理――――
MsgBox "_BeforePaste"
' '―――――――――――――――――――――――――
Target.PasteSpecial ' あらためて貼付け
.EnableEvents = True
End If
End With
End Sub
' ' ==============================
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのマクロについて教えてください。 3 2023/02/07 14:47
- イヤホン・ヘッドホン・補聴器 ダイソーの300円の有線イヤホンと、ダイソーの1000円のワイヤレスイヤホンでは、 3 2022/10/15 21:21
- Excel(エクセル) エクセルのマクロでコピー後の貼り付け先を毎回指定したところにしたい 5 2022/08/12 10:47
- 数学 三角関数の和 4 2023/06/17 18:33
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- 政治 辻元清美さんや蓮舫さんが何かにつけて炎上するのは、人間としてモラルがないからじゃないですか? 14 2022/09/11 11:45
- 政治 橋下徹氏、松井VS太田対談に「2対1では卑怯反則負け」……めっちゃ腹黒い提案ですね? 1 2023/05/03 17:03
- その他(学校・勉強) 増幅器の利得(電力利得)の出し方について 4 2022/07/01 16:40
- 政治 福島の処理水について中国や韓国がいちゃもんをつけてくる問題って…… 9 2023/07/11 17:18
- 一眼レフカメラ カメラケースの衝撃対策 3 2023/03/21 03:36
このQ&Aを見た人はこんなQ&Aも見ています
-
「環境が人を育てる」って本当?環境によって人格や生き方は本当に変わるのか
環境が人生に与える影響は実際どれほどのものなのか、専門家の田宮由美さんに伺った。
-
エクセルVBA/イベント発生でコピペ不能はなぜ?
Excel(エクセル)
-
Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる
Visual Basic(VBA)
-
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
-
4
VBAで、貼り付け禁止命令を実現したい(エクセル)
Visual Basic(VBA)
-
5
Excel コピーしたセルの範囲を取得するには?
Excel(エクセル)
-
6
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
7
worksheet_changeがループする
PowerPoint(パワーポイント)
-
8
VBAでセルがコピーされているか判定したい
Excel(エクセル)
-
9
Access サブフォームでの選択行の取得
その他(データベース)
-
10
Excelのシート上のShapeにイベントは設定できる?
Excel(エクセル)
-
11
Access VBA でデータペーストをする
その他(Microsoft Office)
-
12
エクセルファイルを値でのみしか貼り付けできないようにする
Excel(エクセル)
-
13
textboxユーザーコントロールのコピー&ペースト制御
Visual Basic(VBA)
-
14
ExcelのVBA。public変数の値が消える
Visual Basic(VBA)
-
15
VBAでActiveDirectoryのユーザ一覧の取得の仕方
Visual Basic(VBA)
-
16
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
17
VBAのテキストボックスに文字列を貼り付ける方法
Access(アクセス)
-
18
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
19
フォームを開くときに、コンボボックスの値を選択(アクセスVBA)
Visual Basic(VBA)
-
20
エクセルvba (ByVal Target As Range)について
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
8月までっていつまでのことでし...
-
10月をもって辞めるって、10...
-
「6月まで」というのは6月以内...
-
月の最後の週の呼び名は?
-
カレンダーの日付 5/Bの意味に...
-
昔の愛称?「~の字」
-
満何歳の意味
-
入社が2月1日とした場合、3ヶ月...
-
エクセルのフィルターを複数シ...
-
昔は何歳くらいからお酒を飲ん...
-
一ヶ月前、一ヶ月後
-
自分の兄弟姉妹と従兄弟従姉妹...
-
自治会の通常総会の年度について
-
「おじろく」は長男が死んだら...
-
今は何年度ですか?
-
VBA ユーザーフォームのChange...
-
董卓の酒池肉林って、具体的に...
-
10周年というのは丸10年間終え...
-
エクセルの折れ線グラフ、デー...
-
VBAで先月、先々月を求める方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
8月までっていつまでのことでし...
-
「6月まで」というのは6月以内...
-
月の最後の週の呼び名は?
-
カレンダーの日付 5/Bの意味に...
-
10月をもって辞めるって、10...
-
エクセルのフィルターを複数シ...
-
満何歳の意味
-
入社が2月1日とした場合、3ヶ月...
-
「1年以上」の定義について
-
昔の愛称?「~の字」
-
VBAで先月、先々月を求める方法
-
定年になる年度を関数で算出したい
-
自治会の通常総会の年度について
-
「おじろく」は長男が死んだら...
-
今は何年度ですか?
-
VBA ユーザーフォームのChange...
-
総会の年度表記について
-
○年後の3月末日を関数で出したい
-
例文「7月までは、このままで」と...
-
「なんで付き合おうと思ったか...
おすすめ情報