• 締切済み

エクセルのシート間の情報のやりとりについて教えて下さい。

エクセルのシート間の情報のやりとりについて教えて下さい。 シート1で、以下のように配置し、 B列:年齢 C列:名前 D列:身長 E列:体重 これを30人分(30行)作成して、それぞれの値を記入しました。 シート2で、例えばA1に「20」と記入すると、B1にシート1の20行目のデータが「B1・C1・D1・E1」に記入されるようにしたいのです。 また、シート2のA2やA3も同様に「12」とか「10」とか、任意の値を入れると、シート1のその行数からデータを取得したいと考えています。 更にそのシート2で取得した情報を、シート3の任意のセルで文字列の中に埋め込みたいです。 もし、詳しい方がいましたら教えていただけないでしょうか。 お願いいたします。

みんなの回答

  • conanthe
  • ベストアンサー率65% (114/175)
回答No.2

こんにちは。ハンドルネームconantheです。 すでに回答の半分は出ていますが、参考までに別の数式を使ってみました。 シート2のB1 → =OFFSET(Sheet1!$A$1,Sheet2!$A1-1,COLUMN()-1) これを右と下へ必要なだけコピーします。我田引水ですが、この式のいいところは、シート1のデータ範囲が変わっても、書き直す必要がないことです。エラー対処はしていませが、必要なら回答No.1の方のやり方でできます。 もうひとつの質問ですが、データとしての文字列にセルの値を入れることはできませんので、文字列も数式で入力することになります。たとえば次のように。 シート3のA1 → ="この列にある人は年齢:"&Sheet2!B1&"才、氏名:"&Sheet2!C1&"です。" この式でご希望に沿えるといいのですが……。

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

一つ目のご質問ではシート2のB1セルに次の式を入力してE1セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF($A1="","",INDEX(Sheet1!$A:$E,$A1,COLUMN(B1))) 二つ目のご質問は具体的にどうしたいのかお示しください。

関連するQ&A