• ベストアンサー

Excel2007で、別のシートのデータを引っ張ってきて値を返す

添付画像の 赤い枠のシート「見積書」のA3のセルに、 青い枠のシート「取引先コード」の番号を入れると、 その隣の「取引先名」の値が 赤い枠のシート「見積書」のA3のセルに返る、 ということをしたい場合、どういう数式や関数を 使えば良いのでしょうか? 素人質問で大変恐縮ですが 宜しくお願い致します。

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

  • ベストアンサー
  • gyouda1114
  • ベストアンサー率37% (499/1320)
回答No.5

回答番号:No.4です。 画像の一部を修正してください 正:A4に1001と入力、印刷時に行4を非表示にする。 誤:行4に1001入力を非表示にする

yumove1109
質問者

お礼

ありがとうございます! このやり方には感動しました。 本当に助かりました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (5)

回答No.6

つまりA3に入力した直後に、その値を表を元にして別の値に置換するという機能が必要なのですね? 既に他の方の回答があるとおり、VBAが必要になるかと思います。 ただ表を見る限り、番号を入力するが表示は企業名にしたいということかと思いますので、例えば「図のリンク貼り付け」を使うというのはどうでしょうか? 適当なセル(印刷範囲外)に、vlookup関数等で企業名を引いてくるような数式を設定する。 このときにcountif等を条件に用いたif文を設定して、適切なコードだとvlookupを、不適切なコードだと空文字列を返すようにする。 当該セルに条件付書式を設定する。条件は当該セルが空か否か。空でないときに塗りを白(あるいは印刷を希望する色)にする。 そのセルをコピーし、A3にカーソルを動かした後、図のリンク貼り付けによって貼り付ける。 これで、A3にデータを入力したときに、そのデータが適切なら企業名が、不適切なら入力したままが表示されるようになるかと思います。

yumove1109
質問者

お礼

親身にご回答ありがとうございました! 図のリンク貼り付けという機能があることを初めて知って 感動しました! このやり方も検討いたします。

全文を見る
すると、全ての回答が全文表示されます。
  • gyouda1114
  • ベストアンサー率37% (499/1320)
回答No.4

回答番号:No.1さんのご指摘はごもっともなことです 前の質問で「できました」としているのに再質問をされるにはその回答で不十分な点を説明して新しい質問をするべきです。 さて、 回答番号:No.3 さんのご指摘のように >A3セルに、数式や関数をいれても、A3セルに取引先コードを入れるのであれば、式を消してしまいますよね。つまり無理なことです。 そこで作業セルを使い、そこに取引先コードを入力、そのセルをVLOOKUP関数の検索値として、印刷時にその行を非表示にするという方法はいかがですか。 画像は A3セルに =VLOOKUP(A4,取引先リスト!A1:B3,2) A4セルに「1001」と入力、印刷時に行4を非表示する例です そのほかにA4セルの文字の色を白色にするという方法もあります。

全文を見る
すると、全ての回答が全文表示されます。
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.3

>シート「見積書」のA3のセルに、「取引先コード」の番号を入れると、 >シート「見積書」のA3のセルに返る、どういう数式や関数を >どういう数式や関数を使えば良いのでしょうか? A3セルに、数式や関数をいれても、A3セルに取引先コードを入れるのであれば、式を消してしまいますよね。つまり無理なことです。 VBAの力をかりれば出来ますが、これも一般的な使い方として A1セルに 取引先コードを入れると A3セルに 取引先名を表示する方法ですが、VLOOKUP関数を使用します。 A3セルに =VLOOKUP(A1,取引先リスト!A:B,2,FALSE) となります。 取引先リストのA~B列で、一番左列(つまりA列、取引先コード)を検索して、A1と同じ値の行の 2列目(つまりB列、取引先名)の値を表示します。 詳しくは、VLOOKUP関数のHelpを参照してみてください。 もうひとつ気になる部分ですが、取引先コードを記憶しておいて探すより、取引先名で探すほうが入力しやすいと思います。 取引先コードが見積書に必要であれば、別の関数になりますが、引っ張って くることは可能です。

全文を見る
すると、全ての回答が全文表示されます。
  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.2

関数や数式ではできません、マクロが必要になります。 >赤い枠のシート「見積書」のA3のセルに、青い枠のシート「取引先コード」の番号を入れると A3セルに入力の時点で計算式が上書きされてしまいます。 エクセルの関数で他のセルを参照する事はできても他のセル内容を書き換える事はできません。

yumove1109
質問者

お礼

そういうことですか。。 でもご回答ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • xls88
  • ベストアンサー率56% (669/1189)
回答No.1

あるセルをクリックすると隣のセルの値が別のシートのセルに入る方法 http://oshiete1.goo.ne.jp/qa4694304.html 先の質問で解決されたのでは? 何が不足なのでしょうか?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • あるセルをクリックすると隣のセルの値が別のシートのセルに入る方法

    Excel2007の機能で質問がございます。 例えば添付画像の 青枠のシート「取引先リスト」の取引先コード1001をクリックすると、 隣のセルの「A商事」の値が、 赤枠のシート「見積書」のA3のセルの中に入る。 という処理をしたい場合のやり方を、 計算式でも、関数でもお教え頂けると助かります!! やり方が分からず困っていまして、 ご存じの方はどうかご教示宜しくお願い致します。m(_ _)m

  • EXCELでワークシートを検索して値を返したい。

    こんばんは。 いろいろ調べてみたのですが、わからなかったので質問させていただきます。 EXCELで「111」「222」「333」「444」「555」という五つのワークシート名を持つブックがあります。 「111」のシートのセル"A1"に,"222"と入力すると、隣のセル"A2"にシート「222」の特定のセルの値(例えばC20のセルの値)を返し、セル"A1"に「555」と入力するとセル"A2"にシート「555」の特定のセルの値を返すといったものを作るには、どうしたらいいんでしょうか? できれば関数だけで作りたいのですが、もしむりならマクロではどういうコードになるのでしょうか? よろしくお願いします。

  • sheet1の値をsheet2で

    【sheet1】    A              1   2            2  空欄         【sheet2】    A             1   2 2  空欄 【sheet1】のA1の値が2などのときは、【sheet2】のA1セルの表示も同じ表示に!(A1の値は10種類くらい) また(空欄)の場合は【sheet2】の表示を空欄にするには、どのような数式を入れれば良いでしょうか? どなたかお教えくださいますようお願いします。

  • エクセルで別シートの値を取得したいです。

    エクセルで質問があります。 別シートからセル値を取得したいです。 ただ、セル番地は行番号、列番号で指定し、 行、列番号はセルに入力してある値を使いたいです。 例 Aシート(値格納シート) B1セル値=1000 -------------- Bシート(値取得シート) A列=行番号入力 B列=列番号入力 C列=Aシートの取得関数 A2セル値=1 B2セル値=2 C2セル=1000(取得値) C2セルの関数に、A2とB2の値を使って Aシートのセル値を取得したいです。 よろしくお願いします。

  • (MS-EXCEL)ある値から別の値を導きたい

    Aセルの値に基づいて、Bセルの値を関数で設定する、その関数の質問です。 Aセルが3なら→Bセルは1 Aセルが7なら→Bセルは2 CHOOSE関数では、このような条件が多いとか、Aセルの値が大きいと、「,」の数が多くなって大変です。 配列を使うなどして、簡単というか解りやすい数式を探しています。 ただし、別のセルを使う方法はナシでお願いします。

  • 【Excel】別のシートからデータを参照したい

    Sheet1-->0101 にシート名変更 A1に111と入力(値は何でも良いです) Sheet2-->0102 にシート名変更 A1に222と入力 Sheet3のA1に'0101 (0101は文字列であること) Sheet3のB1に'0102 (0102は文字列であること) A2にシート名:0101のA1のデータ(111)を表示させたいです。 B2にはA2のセルをコピーしてシート名:0102のA1(222)データを表示させたいです。 A2にはどのような関数を用いればよいでしょうか?

  • excelでデータを別シートに引っ張ってきたい

    excelで値を検索し、返す時、返す値の横にあるデータを違うシートのセルの下に一緒に引っ張ってきたいときの関数(方法)を教えてください。 素人なので分かりにくいと思いますが、お知恵をお借りしたいと思います。 あるデータのシートの検索値を別シートに持ってきたいのですが、シート1をシート2のようにしたいのです。 /は空白 例)シート1 /A B C D E 1(1) □ ○ ▽ ◎ 2 (2) ▼ ■ ◇ ◎ シート2 / A B C D 1 (1) □ 2 /○ ▽ ◎ 3 (2) ▼ 4 /■ ◇ ◎ 分かりにくいかもしれませんが、 シート1の(1)(A1)を検索すると、シート2(B1)に□(これはVLOOKで引っ張ってこれるのはわかります。) 次にシート1の(C1)○をシート2の(B2)へ持ってきたいのです。シート1(D1)(E1)はシート2の(C2)(D2)へ。 しかもシート1のC列は空白セルもあり、シート1のC列が空白の場合、下にずれることなくシート1の(D1)(E1)はシート2の(C1)(D1)へ。下記<図a>のようになるようにしたいのです。 そして、シート2のA列に検索値として入力する(1)や(2)の値は連番ではなく、(2)の次に(5)に飛んだりします。(2)の行のC列にデータがあっても、(5)のC列にデータはないこともあります。<図b> <図a> /A B C D 1 (1) □ ▽ ◎ 2 (2) ▼ ◇ ◎ <図b> / A B C D 1 (1) □ 2 /○ ▽ ◎ 3 (2) ▼ 4 /■ ◇ ◎ 5 (5) □ ▽ ◎ 6 (7) ▼ ◇ ◎ vlookとかCLUMN関数とか考えてはみたのですが、どうもうまくいきません。 毎回作成するデータなのですが、毎回コピペで作成しています。 とても面倒なので(1)を検索したらデータが一瞬で検索できるようにしたいと試みてはみたものの、私の知識では不可能でした。 関数では無理なのでしょうか。。。 関数はあまり詳しくないので分かりやすい方法があれば、教えていただければ助かります。 関数に詳しい方、よろしくおねがいいいたします。 関数にはこだわっていません。違う方法があればそれも含めておねがいいたします。

  • 【Excel】 別のSheetの値を参照したい。

    Sheet1の A1に年 A2~A13に月 A14に翌年 A15~月・・・と続きます。 また、 B列に各月の値 があります。 Sheet2の A1に、Sheet1 B列の2008年の1月の値 A21に、Sheet1 B列の2008年の2月の値 A41に、Sheet1 B列の2008年の3月の値 ・・・を表示させていたのですが、 Sheet1の月と行間が違うため、 1~20行のコピーでは、2月以降の値が参照できません。 このような場合A列の式はどのようになるでしょうか。 単にセル位置を指定し参照するのではなく、 「2008年の1月の値」を表示したいと言うことです。 SUMIFなのかなぁ‥とも思うのですが、具体的な方法が分かりません。 Sheet1のA列の月は、 「1」「2」「3」と入力されているだけです。 シリアル値にしないといけないでしょうか。 また、その方法はどうしたら良いのでしょうか。 Excel2003です。 よろしくお願いいたします。

  • エクセルのセルの値を別のシートから反映

    エクセルのセルの値を別のシートから反映させたいのですが「='[○○○(▲▲▲).xls]◇◇◇'!$A$1」といった数式がそのまま表示されてしまい、他のシートから反映できません。これは何が原因なのでしょうか。

  • 別のシートのセルと同じ値を返すには?

    エクセル2000です =a1と書けば他のセルにもa1の値を返せますが、 他のシートのセルと同じ値を返すにはどうすればよいのでしょうか?

専門家に質問してみよう