- ベストアンサー
VBA:Offsetから値が貼付けれない
はじめまして。 VBAを利用してマクロを作っているのですが、 Range("a6:l6").Copy Worksheets("結果シート").Range("A65536").End(xlUp).Offset(1) というのは動くのですが、結果シートへの貼付けを「値」で行いたいと思い、 以下の通りValueを指定しても動きません。 Range("a6:l6").Copy Worksheets("結果シート") .Range("A65536").End(xlUp).Offset(1).value PasteSpecialを使うと良いのかと思い、 Range("a6:l6").Copy Worksheets("結果シート") .Range("A65536").End(xlUp).Offset(1).PasteSpecial Paste:=xlPasteValues としてもエラーが出ます。 数式の結果を取得して、別のシートの空白セルを探し、「値」として張付ける。 というのがしたいのですが、なにか上手い方法があれば、ご教授お願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Sheets("Sheet1").Range("a6:l6").Copy Worksheets("sheet2").Range("A65536").End(xlUp).Offset(1).PasteSpecial Paste:=xlPasteValues 他のシートにコピーする場合、2行にして下さい。
その他の回答 (2)
- GreatDragon
- ベストアンサー率46% (186/402)
値のコピー・貼り付けなら下記のような記述も出来ます。 ご参考にしてください。 With Worksheets("結果シート").Range("A65536").End(xlUp) Range(.Offset(1, 0), .Offset(1, 11)).Value = Range("A6:L6").Value End With
お礼
現在VBA勉強中なので、別記述は参考になります。 ありがとうございました。
- merlionXX
- ベストアンサー率48% (1930/4007)
Range("a6:l6").Copy Worksheets("結果シート").Range("A65536").End(xlUp).Offset(1).PasteSpecial Paste:=xlPasteValues では?
お礼
完璧な回答ありがとうございます。hana-hana3さんと時間差以外の違いが無かったので、心苦しいのですが、次点良回答にさせて貰いました。ありがとうございました。
お礼
記述を2行に分けないとエラーが出て悩んでいたのですが、2行に分けた所、問題が解決しました。本当にありがとうございました。