dポイントプレゼントキャンペーン実施中!

Application.CutCopyMode=True時の対象セル範囲を取得したく思っています。

対象セルが記憶されているオブジェクト、または、
CutCopyMode=True時のイベントがわかればよいのですが見つかりません。

只今、SelectionChangeにて一時保管して使用していますが、Mode対象セル範囲を次から次へと変更していくと、この方法では上手く取得できません。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Application.CutCopyMode <> xlCopy And _
Application.CutCopyMode <> xlCut Then
Set 一時保管 = Selection
End If

End Sub

イベントまたはオブジェクトご存知の方宜しくお願い致します。

A 回答 (2件)

#1 のWendy02です。

補足です。
今自分の書いたものを読んでいて、ミスを発見したのですが、CutCopyMode の点線枠とSelection とは、一致しませんね。ClipBoard に入っているか入っていないかですね。ClipBoard には、Excel用のものと、Windows用のものと、ActiveX コントロールのDataObject の三つがあって、ユーザーが一番使いやすいのは、DataObjectですが、これは、テキストオンリーです。
    • good
    • 0
この回答へのお礼

ご回答ありがとう御座います。
参考にさせて頂きます。

お礼日時:2006/02/02 08:35

こんばんは。

Wendy02です。

最初に、

Application.CutCopyMode <> xlCopy And _
Application.CutCopyMode <> xlCut Then

ロジックとしては、And じゃなくて、Or じゃないのかなって思いますが、イベント自体が、SelectionChange で、Set 一時保管 = Selection としても、 Dim 一時保管 As Range として、モジュールレベルの変数か、Public としてグローバル変数にしなければ、End Sub でお終いになってしまいますね。

その溜めたものを吐き出す時に、どういうことになるのかっていうことで、入れる方には、イベントは、あまり手順はいらないと思います。あえて必要になるのは、吐き出し時に、Selection 自体をどのように加工するか、ということが重要鍵になるのか、と思います。つまり、同じシート内なら、再び SelectionChange イベントが働いてしまうので、それを回避することも考えなくてはなりません。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!