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

このQ&Aのポイント
  • エクセルのsheet1のセルに入力されている文字や数値をsheet2にコピーする方法についての質問です。ただし、コピー先のsheet2のセルの値は、sheet1を参照するだけでなく文字や数値として表示できるかも知りたいです。
  • sheet1とsheet2にあるセルの値をコピーする方法についての質問です。ただし、コピー先のsheet2のセルの値は、sheet1を参照するだけでなく文字や数値として表示できるか試してみたいです。
  • エクセルのsheet1に入力されたデータをsheet2にコピーする方法についての質問です。ただし、コピー先のsheet2のセルの値は、sheet1を参照するだけでなく文字や数値として表示できるか不明です。
回答を見る
  • ベストアンサー

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

こんにちは。 エクセルのsheet1とsheet2があり、sheet1のセルに入力されている文字や数値をsheet2にコピーしたいと思っています。ただし、コピー先のsheet2のセルの値は、sheet1を参照するだけでなく文字や数値として表示できないかと悩んでいます。 図で説明すると  (sheet1)                →           (sheet2)   A    B    C     D           A     B    C     D 1あああ  10  いいい  えおう        1いいい  えおう  10    あああ 2あああ  10  いいい  かけこ       2いいい  かけこ  10    あああ 3あああ  10  いいい  みまつ       3いいい  みまつ  10    あああ  4あああ  10  いいい  さぐも        4いいい   さぐも   10    あああ また、上記のようにsheet1とsheet2の列は同じ場所ではありません。 このような作業を1回で行うことはできるのでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • mar00
  • ベストアンサー率36% (158/430)
回答No.2

Sub Macro1() Sheets("Sheet2").Select Sheets("Sheet1").Columns("A:D").Copy Columns("A:A").PasteSpecial Paste:=xlPasteValues Columns("B:B").Cut Columns("E:E").Insert Shift:=xlToRight Columns("A:A").Cut Columns("E:E").Insert Shift:=xlToRight Range("A1").Select End Sub Sheet2を開いてからSheet1のA~D列をSheet2にコピー(値)して B列、A列を右にシフトして移動させています。

marocona
質問者

お礼

有難うございました。 非常に助かりました。

その他の回答 (2)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

シート2のA1セルには次の式を入力して右横方向にオートフィルドラッグしたのちに下方向にもオートフィルドラッグします。 =IF(OR(ROW(A1)>COUNTA(Sheet1!$A:$A),COLUMN(A1)>3),"",INDEX(Sheet1!$A:$D,ROW(A1),IF(COLUMN(A1)=1,3,IF(COLUMN(A1)=2,4,2)))) 式の意味はシート1のA列に文字が入力されていますがその文字の入力されている行がシート2に下方としている行よりも多くなれば、あるいは、列の数が4以上になればセルを空白にしなさい。それ以外のばあにはシート2のA列にはシート1の3列目を、B列にはシート1の4列目をC列にはシート1の2列目を表示しなさいということになります。

marocona
質問者

お礼

有難うございました。 非常に助かりました。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

>作業を1回で行うことはできるのでしょうか?  ⇒マクロ(VBA)ならば可能です。   拘りが無ければ、関数で対応後、形式を選択して貼り付けの値でデータを   置き換える方法になります。  (1)Sheet2には関連付け先のセルを入力、下方向にコピー     仮にSheet2のA列は、=IF(Sheet1!C1<>"",Sheet1!C1,"")     B1~D1も同様に設定後、A1:D1を選択して下方向にコピー  (2)Sheet2の数式範囲を選択、コピー→形式を選択して貼り付け→値を選択→OK  

marocona
質問者

お礼

有難うございました。 非常に助かりました。

関連するQ&A

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

    こんにちは。 エクセルのsheet1とsheet2があり、sheet1のセルに入力されている文字や数値をsheet2にコピーしたいと思っています。(sheet2には値として張り付けたい) <条件> sheet1の3行目から下(3000行目まで)をコピーしてsheet2の2行目から下(3000行目まで)に張り付けたい。 しかし、下記のように列も入れ替えたい。下記以外はコピーしない。 sheet1   sheet2  A  →  A  G  →  B  H  →  I  M  →  G  Q  →  K R+S  →  L  (sheet1のR列とS列の文字を結合したもをsheet2のL列に)  T  →  M  U  →  N このような作業を1回で行うことはできるのでしょうか? よろしくお願いします。

  • Excel 別シートのセル参照

    Excel で、二つのシート間でセル参照したいのですが、シートに書き込んでおくコマンドの書き方を教えてください。 (操作) Sheet2 でA列のどこかのセルをダブルクリックしたとき、B列およびC列の該当行の値を、Sheet1 の二つの固定セルにそれぞれ表示させる。 よろしくお願いします。

  • 別シートへのセル参照について

    別シートへのセル参照についての質問です。 例えばSheet1のA1,B3,C6,G9に値が入っているとします。 その値を順にSheet2のB2,C4,D9,E17に参照したいのですが、 それぞれにセル参照しないとダメなんでしょうか? Sheet1,Sheet2に違う種類の表があって、それぞれに同じ値を入力するんですが、Sheet1に入力すれば自動的に入るようにしたいです。 実際はSheetや、値を入力するセルがかなり多いので、ひとつひとつセル参照するのが大変なので・・・よろしくお願いします。

  • Excelセルの参照

    Excelにdataとnという2シートがあります。dataシートのA列3行目~22行目にデータが縦入力されており、以降B列、C列とデータ入力が繰り返されます。 nシートでdataシートの入力値参照のため、あらかじめdataシートの参照リンクを貼っておきたいのですが、nシートのデータは横並びであるせいか、参照リンクをうまくコピーすることができません。 dataセルのA3セルの値をnシートのD1に=data!A3と貼り付けて、W1(=data!A22)まで数式を自動コピーできないでしょうか。また、D2~W2まで=data!B3~=data!B22など参照リンクをコピーで作成できないでしょうか。 よろしくお願いいたします。 横並びに参照する必要があるのですが、

  • Excelで別sheetの参照について

    エクセルで別sheetの参照についての質問です。 画像のようにsheet1の値を参照してsheet2表示させたいのですが、これを約100件分作成したいのですがコピー&ペーストをすると参照セルがずれてしまいます。 sheet2のA1をコピーしてA4に張り付け=Sheet1!A2&Sheet1!B2&Sheet1!C2としたいのですが、A4に張り付けを行うと=Sheet1!A4&Sheet1!B4&Sheet1!C4となってしまいます。 複数行あけてペーストする場合に参照セルを1行ずつずらして参照する方法はありますでしょうか?

  • Excelで別のシート内のセルを参照するとき

    例えば、シートsheet1内において シートsheet2内のセルA1を参照したいとき  =sheet2!A1 のように記述しますが、 文字列"sheet2"がsheet1!B2入っており、それを 使いたいときは、どのように記述したらいいのでしょうか?  ='B2'!A1 と書くと、B2というシートになってしまい、sheet2を 見にいってくれません。

  • Excelで飛び飛びのセル(列)を参照したいのですが…その2

     ある「sheet1」で、G1="A",H1="B",I1="C",J1="D",K1="E",L1="F",M1="G",N1="H",O1="I",P1="J",Q1="K",・・というように文字が入力されているとすると、5列飛びの値A,F,K・・・(G1,L1,Q1・・・)が欲しいのです。そして、その値が「sheet2」に、C5=A,D5=F,E5=K,F5=P・・・となるようにしたいのです。ただ数値が5ずつ増加するのではなく、そのセルに入力されている文字列を参照したいのです。  それをまた、「sheet1」の、G2="A",H2="B",I2="C",J2="D"・・・の値でも同じ事をしたいのですが・・・。  よろしくお願いします。

  • エクセルのセル参照、一つずつ参照セルをずらしていきたい

    エクセルのセル参照の方法について教えてください。 2つのシートがあって、 ひとつのシートにはC4,D5,E6…というように行と列がひとつずつ増えていくところに値が入力されています。 このシートから、C4,D5,E6…のセルの値を取り出して 別のシートのA1,A2,A3…に縦に並んで表示させたいのですが、どのようにセルを参照させればC4,D5,E6…という 行と列がひとつずつ増えていくセルを参照できるでしょうか? よろしくお願いいたします。

  • 別シートの参照値を反映したい

    別シートの参照値を反映したい book内にSheet1~4まであります。 Sheet1のA1には、Sheet2~4という文字列が入ります。 Sheet1のB1には、Sheet2~4のセルの番地のみ入力されています。 Sheet1のA5に「="="&A1&"!B1"」と入力した際に文字列ではなく参照先の数字が反映される ようにしたいのですが、可能でしょうか? ちなみにコピーして値のみ貼り付け、F2を押せば数字が反映されるのですが、関数を残して おきたいと考えています。 ご教示お願いいたします。

  • エクセルで参照する別シート名をセルに入力したい

    エクセルで参照する別シート名をセルに入力したいです。 (1) sheet2とsheet3にそれぞれA1:B10の表があります。    A列には氏名がB列には数値が入力してあります。    (同じ表で月度が違います。) (2) vlookup関数を使ってsheet1のA列に氏名を入力して対応する数値を    B列に求めたいです。 (3) この時、sheet1のC1に「sheet2」「sheet3」と入力することで    参照するシートを変えたいのですが、方法が解りません。 そもそも可能かどうかも解らず、悩んでいます。 ご教授お願いいたします。   

専門家に質問してみよう