• ベストアンサー

EXCELの質問です。どなたか教えてください。

EXCELの質問です。どなたか教えてください。 Sheet1のA1,B1,C1にSheet2のA1,C1,E1と、一つ飛ばしの 値を反映させるにはどうしたらいいですか? Sheet1のセルA1,B1に A1=Sheet2A1,B1=Sheet2C1とし、2つのセルを選択してドラッグしても A1=Sheet2A1,B1=Sheet2C1,C1=Sheet2C1,D1=Sheet2E1,E1=Sheet2E1,F1=Sheet2G1・・・ と反映されてしまいます。 できれば小難しい計算式は使いたくないのですが、なにかいい方法や簡単な 式があったら教えてください。 宜しくお願い致します。

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

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

小難しい計算式を使った方が楽ではあるんですが、こんな方法もあると言う例を……。 [ツール]-[オプション]-[全般] で、「R1C1系式参照を使用する」にチェック。 Sheet1のA1に %=Sheet2!RC[0] と、入力して右方向にドラッグ。 これで、B1には%=Sheet2!RC[1]、C1には%=Sheet2!RC[2] と、入ります。 次に1行目を選択して[編集]-[置換]で、%を空白に置換(%を消す)。 これで、1列置きのリンクになりました。あとは「R1C1系式参照を使用する」のチェックを外します。 小難しい計算式でもよいなら、Sheet1のA1に↓の式を入れて右方向にコピーして見てください。 =OFFSET(Sheet2!$A1,0,2*(COLUMN()-1))

meet-y
質問者

お礼

ありがとうございます。 式のほうがよさそうだったのでやってみて確かに出来たのですが、もっと複雑な表などのとき それこそ反映もとの表がC6くらいから始まってるようなときってどうしたらいいんでしょうか。 つまりSheet1のC6にSheet2のE8をもって来て、D6にG9、E6にI9・・・と持ってくるときなどです。 式の意味を考えてみたのですが、行や列の指定のときの、"左上の 隅までの行(列)数"という意味が解りません。

その他の回答 (4)

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.5

ANo.2です。 > それこそ反映もとの表がC6くらいから始まってるようなときってどうしたらいいんでしょうか。 > > つまりSheet1のC6にSheet2のE8をもって来て、D6にG9、E6にI9・・・と持ってくるときなどです C6にリンクするのは、Sheet2の「E9」ですよね?それでしたら↓こうなります。 =OFFSET(Sheet2!$E9,0,2*(COLUMN()-3)) Sheet2!$E9 は、基準セルです。ドラッグしても基準セルがずれないようにSheet2!$E9と、列絶対参照にします。 次の引数 0 は、基準セルから何行シフトするかです。今回、行はシフトしませんので0です。 3番目の引数 2*(COLUMN()-3) が、基準セルから何列シフトするかです。今回、C列の時はこの値を0にしたいのでColumn()から-3しています。 もし、A列から始めるなら-1、D列から始めるなら-4 にします。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

こんにちは! 外していたらごめんなさい。 Sheet1のA1セルに =INDEX(Sheet2!1:1,,COLUMN(A1)*2-1) (エラー処理はしていません。) としてオートフィルで列方向にコピーではどうでしょうか? 以上、参考になれば良いのですが 的外れなら読み流してくださいね。m(__)m

  • luka3
  • ベストアンサー率74% (299/401)
回答No.3

少々強引かもしれませんが以下の方法でできます。 セルA1に =INDIRECT(ADDRESS(1,COLUMN()*2-1,,,"Sheet2")) と入力して横にフィルすれば、値の反映はされます。 あくまで =Sheet2!A1 にこだわるのであれば、 いったん別のシートのA1に ="=" & ADDRESS(1,COLUMN()*2-1,4,,"Sheet2") と入力&フィルすると希望の数式が表示されます。 これをコピーして、Sheet1のA1を右クリックして「形式を選択して貼り付け」から「値」を選びます。 すると数式が入りますので、これをダブルクリックまたはF2で編集状態にしてそのままEnterを押せば 希望通りになるかと思います。 このEnterの作業(値を数式として認識させる)を一発で行う方法はわかりません。

meet-y
質問者

補足

ありがとうございます。 簡単なことなのに複雑怪奇になってしまうんですね。

  • 9der-qder
  • ベストアンサー率36% (380/1038)
回答No.1

Sheet2に一行挿入して、そこにナンバーを付してよければ Sheet1に =HLOOKUP(COLUMN()*2-1,Sheet2!1:2,2) と入力すれば出来ます。

meet-y
質問者

お礼

ありがとうございます。 Sheet2はいじらないで処理しないといけないんです。 説明足らずすみません。ちなみにSheet1も行を挿入など はできません。

関連するQ&A

  • EXCELの計算式に詳しい方お願いします

    EXCELの計算式で、一つのセルに式を入れて隣へドラッグして いくと式がコピーされますよね、そのことでお聞きしたいです。 例えばSheet1の表に、Sheet2上の数値を引っ張ってきたいとき、 Sheet1のセルA1に(=Sheet2!A1)を指定すると、横にドラッグすれば Sheet1のセルB1は(=Sheet2!B1)になるとおもいます。 でもそれを(=Sheet2!C1)にしたいのです。つまり引っ張る値を一つ 飛ばしにしていくということです。 これは一括でできるのでしょうか?伝わりにくかったらすみません。 初歩的なことだと思いますが、どなたかご存知の方お願いいたします。

  • エクセルの計算式を教えてください!

    誠に申し訳ありませんが、わかりましたら、教えてください。 エクセルの計算式でE1のセルに次の計算式があった時に =VLOOKUP(B1,$F$1:$G$10,2,FALSE)この式は、成り立っています。 「この時にもう1つ条件をつけて、A1のセルの値が1から20までの値に対して範囲を変えることはできますか。たとえばA1セルが1のときは、$F$1:$G$10ですが、A1セルが2のときの範囲は$F$11:$G$20、A1が3のときの範囲は$F$21:$G$30のように範囲はFとGと規則正しくタテ列に20種類あります、また、E列は1から1000のセルがあって計算式をコピー します。」わかりましたら、計算式を書いてお教えください。

  • エクセルの計算式VLOOKUPを再度教えてください!

    再度,質問いたします、わかりましたら、教えてください。 エクセルの計算式でE1のセルに次の計算式があった時に =VLOOKUP(B1,$F$1:$G$10,2,FALSE)この式は、成り立っています。 「この時にもう1つ条件をつけて、A1のセルの値(20種類の値が、ある時)に対して範囲を変えることはできますか。たとえばA1セルが50という値のときは、$F$1:$G$10の範囲ですが、A1セルが130と言う値のときの範囲は$F$11:$G$15、A1が201のときの範囲は$F$16:$G$25を指定のように範囲を変えられますか?FとGに範囲が20種類タテにあります。H1からH10のセルは50という値、H11からH15のセルは130という値,H16からH25のセルは201と言う値があります。AからE列は1から1000のセルがあってE列は計算式をコピーします。」わかりましたら、計算式を書いてお教えください。

  • エクセルについて質問です。

    シート1のa1に「1」、b1に「2」、c1に「3」、d1に「4」、E1に「5」、f2に「6」を入力し、 その値をシート2のa1に「1」、a2に「2」、a3に「3」、a4に「4」、a5に「5」、a6に「6」を反映させ、 次は、シート1のa2に「7」、b2に「8」、c2に「9」、d2に「10」、E2に「11」、f2に「12」を入力し、 その値をシート2のb1に「7」、b2に「8」、b3に「9」、b4に「10」、b5に「11」を反映させたいのです。 さらにそれをそれを数十列作りたいのですが・・・。 (横に6個づつ並んでいる数字を、別シートに縦に6個づつ反映させていきたいのですが) 色々調べて、=OFFSETを使用して関数は出来たのですが、コピーしてもうまく出来ません。 ひとつひとつ手入力しています。膨大な時間がかかってしまうので、うまく出来る関数、コピー方法は ありませんでしょうか? 先輩方、ご教授下さい。

  • 【エクセル】シート間で反映させたいのですが、結合されたセルがあるため困っています。

    お世話になります。 あまりエクセルに詳しくないのですが、データをエクセルで表にまとめなくてはならなくなりました。 データは複数シートでまとめています。 Sheet1にすべてのもととなる名簿をまとめ、このシートを更新すると他のシートにも自動的に反映するようにしたいと考えています。 その方法として、「=Sheet1!A1」などと入力して反映させようとしていたのですが、複数あるシートのうち何枚かは反映させたい部分がセルの結合されており、上記のようにするとひとつ飛ばしに反映されてしまいます。 例: 【sheet1】 1 Aさん 2 Bさん 3 Cさん 4 Dさん 5 Eさん 6 Fさん 【sheet2】 1   Aさん 2 3   Cさん 4 5   Eさん 6 わかりにくいですが、このような感じです。 sheet1を無理やりセルの結合させることも考えたのですが、私以外の者も表を扱うこととなるためなるべくシンプルにしたいと思い断念しました…。 セルの結合はそのままで、Sheet1に入力した内容を他のシートに反映させる方法はありますでしょうか? 似たような質問も検索してみたのですが、関数?など複雑なものが多く、よく理解できませんでした。(平均値や標準偏差など簡単な計算はしたことがあるのですが、複雑なものは未経験です。) わがままを言って申し訳ございません。 勉強不足でありご迷惑おかけしますが、何卒よろしくお願いいたします。

  • エクセルVBAについて

    以下の処理をマクロで実行しようと思っていますが、わからない部分があるので教えてください。 (例):  A B C D E F G 1 1 2  3  4 5  6  7 2 10 30 50 70 90 130 150 3 4 (1)1行目のどこかの連続したセル(例えばセルA1から セルD1)をドラッグする。 (2)マクロを実行する。 (3)セルA4に、「D2-A2」を計算した値が自動的に入力 される。この例では「70-10=60」  これは、(1)で例えばセルB1からF1をドラッグした場 合には、「F2-B2」を計算した値を入力したいので す。   要は、連続したセルを選択してその始点と終点のセルの行と列を取得できればこの処理はできると思うのですが、方法が分かりませんので教えてください。 よろしくお願いします。

  • Excelの入力式について

    Excelの入力式について教えてください。 たとえば、A1セル~F1セルに数値が入っていて、G1セルA1+B1の値、H列にC1+D1の値 I列にE1+F1の値としたい場合、 G1セルに数式を入れてH列にコピーするとB1+C1になってしまいます。 上手くやる方法はないのでしょうか。 1列ずつわざわざ空白列を作るのは嫌ですし、たくさんあったら数式を打ち込むのも大変です。。。

  • エクセルについて

    【sheet1】     A    B   C    D    E    F   G 1   1    ★   ●   ■   ◆    ☆   ◎ 2   2    海   山   川   陸    水   土 3   3    (1)   (2)   (3)   (4)    (5)   (6) 【sheet2】     A    B   C    D    E    F   G 1                      ◆  2   ☆              ★ 3   ■                  ●       ◎    sheet1に必要事項を記入します。 で、例えばですがsheet1のあるセルに「1」と入力すると、 行No.1に記入してある「★●■◆☆◎」がsheet2の一定のセルに自動的に 反映させたいのですが、関数で可能でしょうか? あるセルに「2」と入力した場合は、行No.2に該当するデータがsheet2に反映されます。 「★のところは→海」「●のところは→山」「■のところは→川」…といった感じで 自動的に反映させたいのですが。

  • Excelとピタゴラスの定理

    この表のA列には直角三角形の垂辺、C列には 同じく底辺、F列には斜辺の長さが書き込まれる。今、A2セルに3.00、C2セルに4.00、F2セ ルに5.00 の値を入れたので、垂辺・底辺それぞれの2乗の和であるE2セルの値と斜辺の2乗であ るG2セルの値は一致するはずである。それが一致しているかどうかを確かめる式がH2セルに入 れられている。H2セルをアクティブにして数式バーを見るとわかるように、このセルに入ってい る式は=E2=G2 というものである。すなわち、E2セルの値とG2セルの値が等しければ 論理値True を返し、そうでなければ同じくFalse を返す式である。この場合、当然True が返される。 次に、A3セルには式「=A2+ 0.03」を、C3セルには「=C2+ 0.04」を、F3セルには「= F2+ 0.05」を入れ、第3行目のその他のセル(B3,D3,E3,G3,H3)には第2行目の 同じ列のセルにある式を複写する。そうすると、ここでも垂辺:底辺:斜辺の長さの比は3:4: 5になっているからH3セルにはTrue が返されるはずである。 この第3行目のA列からH列まですべてのセルの式をそのまま下方に複写すれば、どの行でもA 列:C列:F列の値の比は3:4:5になるから、H列の値はすべてTrue になるはずである。実際、 どこまで複写しても同じ行のE列のセルとG列のセルに示された値は等しいように見える。しかし、 H列ではTrue ではなくFalse が返される場合がある。 1-A:垂辺 B:垂辺の二乗 C:底辺 D:底辺の二乗 E:二乗の和 F:斜辺 G:斜辺の二乗 H:E=G 2-A:3.00 B:9.00 C:4.00 D:16.00 E:25.00 F:5.00 G:25.00 H:TRUE 3-A:3.03 B:9.18 C:4.04 D:16.32 E:25.50 F:5.05 G:25.50 H:TRUE ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 24-A:3.66 B:13.40 C:4.88 D:23.81 E:37.21 F:6.10 G:37.21 H:TRUE 25-A:3.69 B:13.62 C:4.92 D:24.21 E:37.82 F:6.15 G:37.82 H:FALSE 26-A:3.72 B:13.84 C:4.96 D:24.60 E:38.44 F:6.20 G:38.44 H:FALSE この現象がどうして起きるのかを、高校生にわかるように、簡単に説明しなさい。 という問題なのです。教えてください。お願いします

  • EXCEL関数についての質問です。

    EXCEL(2003)についての質問です。 関数にて、もし上行(※(1))のセルが空白の場合は空白、 そうでない場合は、2列隣(別シート)(※(2))のセルを返す。 ※(1)セル結合にて行を結合しています。 ※(2)同じ式(関数)ではじめのセル(結合されている)は、 A1次のセルはC1、E1、G1等1列飛ばしで参照。 としたいのですが、可能でしょうか? ちなみに添付画像のように結合行は可変します。 教えていただけると大変助かります。 例)    A            A    B    C    D    E    F    G 1 青森          青森       大阪       熊本 2 大阪 3 熊本   シート1                       シート2 宜しくお願い致します。