アプリ版:「スタンプのみでお礼する」機能のリリースについて

以下の文をコピー先シートのセルを非アクティブのままペーストを行うにはどうしたらいいのでしょうか?PasteSpecialOperation:=xlPasteAll が問題だと思うのですがどうしたらいいかがわかりません

Sub test()
クリップ配列 = Application.ClipboardFormats
For Each クリップデータ In クリップ配列
If クリップデータ = xlClipboardFormatText Then
Range("B" & Rows.Count).End(xlUp).Offset(1,0).PasteSpecial Operation:=xlPasteAll
End If
Next
End Sub

A 回答 (2件)

Worksheets("コピー先のシート名").Range("B" & Rows.Count).End(xlUp).Offset(1,0).PasteSpecial Operation:=xlPasteAll



と言う事ではなくて?
    • good
    • 0

こんばんは。



最初に、クリップ配列 = Application.ClipboardFormats で、取得したデータが、xlClipboardFormatText だったら貼り付けするというのは、どういうデータでしょうか。通常、テキスト貼り付けすればよいのではないかと思います。

クリップボードの内容によって、種類別けするコードというのは、主に、インターネットから貼り付けたときなどに不要成分が含まれていることを指すのです。いくら、テキスト成分があっても、それ以外もあるのですから、そのまま貼り付けてしまったら、意味がありません。その場合、テキスト貼り付けするというモードにするわけです。

しかし、その場合、クリップボードから、コピー先シートのセルを非アクティブのまま直接、ペーストすることは出来ないように思います。一旦、どこかに吐き出してから、次に、非アクティブのセルに貼り付けというスタイルにしかないように思います。
    • good
    • 0
この回答へのお礼

参考になりましたありがとうございます

お礼日時:2009/11/14 13:43

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