- ベストアンサー
エクセルVBAでsheet1!B2:B10までの値をsheet2!B2
エクセルVBAでsheet1!B2:B10までの値をsheet2!B2:K2にコピーする方法を教えて下さい。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>sheet1!B2:B10までの値をsheet2!B2:K2にコピーする そもそもセルの個数が合ってませんが,何がしたいのですか? 基本:値の転送 worksheets("Sheet2").range("B2:J2").value = _ application.transpose(worksheets("Sheet1").range("B2:B10")) 個数を数えるところからやりたいならその通り数を拾って,resize等してください。 応用: dim h as range set h = worksheets("Sheet1").転送元のセル範囲縦一列 worksheets("Sheet2").range("B2").resize(1, h.rows.count),value = application.transpose(h)
その他の回答 (3)
- hige_082
- ベストアンサー率50% (379/747)
一例です Worksheets("sheet2").Range("b2:k2").Value =WorksheetFunction.Transpose(Worksheets("sheet1").Range("b2:b10").Value) 参考まで
お礼
ありがとうございました。お蔭様でやりたいこと出来ました。 感謝感謝です。
- gootara555
- ベストアンサー率62% (5/8)
Transpose:=True で「形式を選択して貼り付け」の「行列を入替える」になります。 Range("B2:B10").Select Selection.Copy Sheets("Sheet2").Select Range("B2").Select Selection.PasteSpecial Paste:=xlPasteAll, _ Operation:= xlNone, SkipBlanks:= False, Transpose:=True
- kmetu
- ベストアンサー率41% (562/1346)
Sheets("sheet1").Range("B2:B10").Copy Sheets("sheet2").Range("B2").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=True です。
お礼
ありがとうございました。大変助かりました。 また勉強になりました。
補足
回答ありがとうございます。 ご指摘の通りB2:K2はB2:J2の誤りでした。