• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルのセルを参照して別シートに張り付ける2)

エクセルシートのセルを参照して別シートに張り付ける方法

このQ&Aのポイント
  • エクセルのsheet1に入力されている文字や数値をsheet2にコピーする方法について説明します。
  • 特定の条件に基づいてコピーする範囲や列の入れ替えを行います。
  • これにより、短い手順で一括でコピーおよび変換を行うことが可能です。

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

>sheet1の3行目から下(3000行目まで)をコピーしてsheet2の2行目から下(3000行目まで)に張り付けたい。 「3行目」と「2行目」が誤記のようですので,適切にマクロを修正してください。 sub macro1()  dim r as long  r = 3000  worksheets("Sheet2").select  with worksheets("Sheet1")   range("A3:A" & r).value = .range("A3:A" & r).value   range("B3:B" & r).value = .range("G3:G" & r).value   range("I3:I" & r).value = .range("H3:H" & r).value   range("G3:G" & r).value = .range("M3:M" & r).value   range("K3:K" & r).value = .range("Q3:Q" & r).value   range("M3:M" & r).value = .range("T3:T" & r).value   range("N3:N" & r).value = .range("U3:U" & r).value   range("L3:L" & r).formula = "=Sheet1!R3&Sheet1!S3"   range("L3:L" & r).value = range("L3:L" & r).value  end with end sub

marocona
質問者

お礼

3行目と2行目は誤記ではありませんが、上記マクロを修正して試してみます。 早々に回答いただき、ありがとうございました。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

同じような質問を先ほどして、回答を受けたのではないか。 同じことを繰返して聞いても、このことはVBAを出来ないと、すっきりは出来ない。 質問者はそのことは何にも書いてないが、質問振りから推定して出来ないのだろう。だから貼り付けるときエクセルの操作では、列の対応関係を聞いてくる、ダイアロウグが出ない以上は、出来ない。 ーー 列の配置 ただ、形式を選択して貼り付けー値でSheet1とそっくり同じ列順にSheet2に一旦貼り付け 1行の行を上の方に挿入し、そこに並べたい順に適当な数字(よく考えて決めること)を入れて、並べ替えで、その入れた数字の順に列単位でソートするのはどうかな。例えば、A列1,B列3,C列2と数字を入れて、列でソートすると1,2,3の順になるであろう。 ーー 2列データを加えた列 足した列を作るのは1つの方法として A、B,C列(B列は下記の操作後変わってしまうので、C列にコピーしておく、確認用で、C列は参考) 1 23 23 2 36 36 3 19 19 今A列A2:A4を範囲指定してコピー B2:B4を範囲指定して 形式を選択して貼り付けー加算 で B2:B4は 24 38 22 となる。本番では、これの行数の多いも(列全体)のをやれば。 ーー 24 38 22 ==== VBAをコツコツとはじめるなら マクロに記録というのを取る状態にして 少数行(10行程度)のデータで、したいことを、シート上で、1歩1歩質問者が操作し(コピーー貼り付けが中心)て、その操作がコード化されるから、どういうコードになるかを勉強したら。 そして本番では何処をどう変えるべきか考える。

marocona
質問者

お礼

アドバイスありがとうございました。 参考にさせて頂きます。

関連するQ&A