- 締切済み
ペーストすると実行されるマクロを作成したい(初心者
エクセルとは別のソフト(画像解析ソフト等)からデータを クリップボードへコピーし、それを”Sheet1”の「B2」にペーストします。 このペーストした時に「Macro01」というマクロが自動的に実行されるようにしたいのですが、 どのように記述すれば作動するでしょうか? 色んなHP等を探してみたのですが見当たりません。 考えてみたのですが私には考えつきませんでした・・・。 どなたかご教授下さい@@; また、コピーしてくるデータは毎回数値が違います。 ペーストした時に「B3」に入る値のみ変わりませんが、 内容に” ”←この記号が入っているせいか、上手く指定できないようでした。 一文の中で所々、毎回変わらない文字(単語)というのはあります。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- Wendy02
- ベストアンサー率57% (3570/6232)
こんばんは。 簡単な説明をすると、 Application.OnKey でショートカットキーや右クリックメニュー(Cell)に、マクロ名を置いて、クリップボードから、ペーストさせ、その後に続くようなコードを書けばよいです。 「^v」 (Ctrl + V)以外のほうがよいです。^v で作ると、一般の貼り付けの場合と、特殊な貼り付けの判定を、クリップボードの中で調べなくてはならなくなります。 もし、内容がテキストのみなら、DataObject(UserFormを一旦作成せいすれば、参照設定されますから、UserFormを削除しても残ります) を使って、ClipBoard からテキストを取り出して、それを加工して張り付ければできます。
- onlyrom
- ベストアンサー率59% (228/384)
>それを”Sheet1”の「B2」にペーストします >ペーストした時に「B3」に入る値のみ変わりませんが、 B2のみにペーストするのではなくて B2を起点としてペーストするのですね? Sheet1のChangeイベントにコードを書けばいいです。 以下、サンプル '------------------------------------------------ Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("B2")) Is Nothing Then Call Macro1 End If End Sub '----------------------------------------------------- 以上。