[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『マクロを設定しているシートからのコピー』(黒猫)
あるシートからデータをコピーし、他のシートへ貼り付けようとしたところ、 貼り付け先のシートで貼り付けができません。
元のシートに Worksheet_Deactivate() のマクロが設定してあり、どうやら他のシートへ 移るときにこのマクロが実行され、その瞬間にクリップボードがクリアーされるような 感じです。
マクロが実行されると、クリップボードがクリアーされる、というのは仕様でしょうか。
Worksheet_Deactivate() をコメントにしてしまえば、シート間のコピー貼り付けが できるのですが、それ以外に方法はないのでしょうか。
Worksheet_Deactivate() にどのような記述がされているのか、わかりませんが。
If Application.CutCopyMode Then Exit Sub
を Worksheet_Deactivate() に入れておけば、よいのでは? (seiya)
If Application.CutCopyMode Then Exit Sub
を入れることで、シート間のコピー貼り付けができることを確認しました。
>どのような記述がされているのか、わかりませんが。
入力後のセル移動の向きを、右向き・下向きの切り替える記述がしてあります。
元のシートでは右向きに移動するように設定してあり、Deactive イベントで
Application.MoveAfterReturnDirection = xlDown
として、コピー先のシートでは下向きに移動したいのです。
今回の変更をすると、コピー先のシートであらためてセル移動の向きを下向きにしなくては なりません。まあ、非常に手間取る、というほどのことではないのですが。
それにしても、 Application.MoveAfterReturnDirection = xlDown を実行することで、 なぜクリップボードがクリアーされる様な仕様になっているのか、よくわかりません。
(黒猫)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.