エクセルで別の表から一致するものを移す計算式

このQ&Aのポイント
  • エクセル2003を使用している場合、複数のシートに同じ表を作成し、自動反映をさせるために作業シートを設けることができます。作業シートのセルにシート名を入力し、関西シートの表に自動的に入力することが可能です。
  • 具体的には、作業シートのA4~A112に関西と入力されていた場合、関西シートのA4~L35の表に順番に自動的に入力することができます。
  • これにより、別の表から一致するデータを移すための計算式を作成することができます。エクセルの機能を活用して効率的に作業を行うことができます。
回答を見る
  • ベストアンサー

エクセル 別の表から一致するものを移す計算式

エクセル2003を使用しています。 複数のシート(A4~L35)に同じ表を作成してあります。 シート名は関西・関東・東北・四国と作成した4枚です。 B2のセルにシート名「関西・関東・東北・四国」 それぞれのシート名と同じ文字が入っています。 そこに自動反映をさせるために、作業シートというのを設け、 同じ表の行数がたくさんはいるものを作成してあります(A4~L112) 作業シートのA4~A112まで関西・関東・東北・四国のいずれかが入ります。 やりたい作業は、作業シートのA4~A112に関西と入っていた場合、 関西シートのA4~L35の表に順番に自動的に入力をしたいのです。 こんなことは可能でしょうか。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

 使用していない適当な列(ここでは仮に作業シートのN列とします)を作業列として使用します。  まず、作業シートのN4セルに次の様な関数を入力して下さい。 =IF(INDEX($A:$A,ROW())="","",INDEX($A:$A,ROW())&"◆"&COUNTIF($A$3:INDEX($A:$A,ROW()),INDEX($A:$A,ROW())))  次に、作業シートのN4セルをコピーして、作業シートのN5以下(この場合はN112までで結構ですが、もっと下の方にまで貼り付けてしまっても構いません)に貼り付けて下さい。  次に、関西シート(別の地方のシートでも構いませんが)のB2セルに次の関数を入力して下さい。 =REPLACE(CELL("filename",B2),1,FIND("]",CELL("filename",B2),FIND(".xls",CELL("filename",B2))),)  次に、関西シートのA4セルに次の関数を入力して下さい。 =IF(ROWS($4:4)>COUNTIF(作業!$A:$A,$B$2),"",IF(INDEX(作業!A:A,MATCH($B$2&"◆"&ROWS($4:4),作業!$N:$N,0))="","",INDEX(作業!A:A,MATCH($B$2&"◆"&ROWS($4:4),作業!$N:$N,0))))  次に、関西シートのA4セルをコピーして、関西シートのA4~L35の範囲に貼り付けて下さい。  次に、関西シートのコピーシートを3枚作成して下さい。  そして、関西シート以外の各地方のシート(「関東」、「東北」、「四国」のシート)を一旦削除するか、或いは別のシート名に変更しておいてから、作成した関西シートのコピーシートのシート名を、それぞれ「関東」、「東北」、「四国」等に変更して下さい。(シート名に鉤括弧は不要です)  以上です。  

ASNASNASN
質問者

お礼

ご丁寧にありがとうございます。 A4セルに入力する際にVALUEが出てしまいました・・・。

ASNASNASN
質問者

補足

ありがとうございます。 シート名が違っただけでした。 思いの通りにできました。 助かりました。

関連するQ&A

  • エクセル 値反映について 

    値の反映について行き詰っています。。。 下記のようなsheet1,2があります。 sheet1  A    B     C    D 1 東北   内容   会社   金額 2 … 10 関東   内容   会社   金額 11 … sheet2     1 地域     内容   会社   金額 2 東北    作成   A社   ¥100 3 関東    作成   B社   ¥50 4 関東    発注   C社   ¥150 5 東北    作成   B社   ¥200 6 四国    その他  D社   ¥10 … やりたいことは、sheet1の地域ごとにsheet2の案件をまとめたいのですが、 やり方がわかりません。 (VLOOK UPかなと思ったのですが、条件が地域しかなくわかりませんでした…。) 宜しくお願いします。

  • エクセルについて

    同じブックの5枚シートをつかって列数、行数の異なる表を作成してあります。 例えばA1からF5には表の縦計が入ります。 在庫管理が目的なので、日々合計が変更になるのですが、この何枚かのシートに作られている表の合計部分(A1~F5)のみを、新なシートに一覧表として作成してあります。 いまは、各シートごと、合計数の変化があったものだけ、一覧表の数字を手入力で直していますが、自動的に反映させる方法はありますか? 説明が下手ですみません・・

  • エクセルで、顧客データを別のシートの表に項目ごとセルに振り分けたい

    エクセル97を使っています。 Sheet1に既に作られた顧客のデータをSheet2の表に挿入したいのですが、 データシートは1行で1名分なのに対し、表シートは2行で1名分になっています。例えば、 Sheet1 の A1 が Sheet2 の A1 に入り、 Sheet1 の A2 が Sheet2 の C1 に入り、 Sheet1 の A3 が Sheet2 の A2 に入り、 Sheet1 の A4 が Sheet2 の B2 に入り・・・ といった具合に、Sheet1と2では項目もバラバラです。 = の前に ' を付けて後で区切り位置で変換する、という方法を以前こちらで教えていただいたのですが、うまくマクロを作ることが出来ません。 更に、顧客データの数の変動が激しいので、表シートの行数をデータの数の分だけ自動に増やしたいのですが、やり方が見つかりません。 すみませんが、どなたかアドバイスをお願い致します。

  • Excelのマクロについて

    エクセルのまくろについて教えてください。 私が今やろうとしているのはsheet1に表を作成し、sheet2に見積書を作成します。 見積書に載せる項目はsheet1の表の中から抽出したいです。 そのときの条件としては、sheet1での表の中の計算結果が、  項目  計算結果   A    1   B    0   C    8 このような場合のときに計算結果が「0」になったものの項目はsheet2の見積書の項目には反映しないようにしたいです。 このようにするとsheet2での見積書は作成する条件によって行数が変わるようになります。 なので、自動的に見積書の行を増やしたりなくしたりするようなマクロを組みたいのです。 Excel2000です。 長々と書きましたがよろしくお願いします。

  • 【エクセル】表から条件にあったデータを別のシートに抽出する関数

    エクセルの表である条件にあてはまる行(複数の列を指定したい)を、 別シートに順番に抽出されるような関数を教えてください。 元の表を編集するので、自動的に反映されるように関数で作成したいと思っています。できれば、抽出後のソートやフィルタオプションは避けたいです。 シート1のコード(A列)が100番台のもの、200番台のもの、300番台のものの、それぞれ食品名(B列)と総量(D列)を、シート2~シート4に別表として抽出したいです。 食材の注文をするのに、業者別にしなければいけませんが、量が多くて毎回大変なんです。お助けください。 【シート1】 元データ    A     B        C       D 1 コード  食品名    一人分分量   総量 2 101    牛肉      30      150 3 201    じゃが芋    80      400 4 202    玉葱      40      200 5 203    人参      20      100 6 301    しょうゆ    6       30 7 302    砂糖      4       20 【シート2】 コード100番台   A     B   1 牛肉   150 【シート3】 コード200番台   A     B       1 じゃが芋 400 2 玉葱   200 3 人参   100 【シート4】 コード300番台   A     B  1 しょうゆ 30 2 砂糖   20 無謀な事をやろうとしているのかもしれませんが、どなたかアドバイスをください。 よろしくお願い致します。

  • EXCELの表で”○行が空白”の場合のみ別シートに列ごと反映することはできますか?

    車の在庫表をEXCELで作っています。 1.1シート目に”車の一覧表”を作成 2.一覧表のP行が空白の場合は在庫という意味なのですが   空白のP行のみを、2シート目に反映したい場合はどのようにすれば良いのでしょうか。P行が空白の列を全て自動的に別シートに反映したいです。 ご存知の方、是非教えていただければ嬉しいです。 宜しくお願い致します。   

  • 表の値を別の表にも自動でコピーしたい

    よろしくお願いします。 シート1にある表1の値をシート2の表2にも自動でコピーしたいと思っています。 表1ですが、(セル番地/A1)に会社名、(セル番地/B1)に品名の見出しがあります。A2~A4に"あ"という会社名があり、A5~A8に"う"という会社名が入っています。 そして、B2には"いちご"という品名がありB3は"りんご"、B4は"バナナ、B5が"いちご"、B6は"バナナ"、B7は"ぶどう"、B8は"みかん"というように品名が入っています。 この表1の値をシート2の表2へコピーしたいのですが、表2は会社名はA2、B2というように行単位でつなげていきたいです。そして、品名は会社名の下にもっていきたいです。つまりA3~となります。 この例ですと、A2に"あ"が入って、A3・いちご、A4・りんご、A5・バナナとなり、B2に"う"が入って、B3・いちご、B4・バナナ、B5・ぶどう、B6・みかんとなるようにしたいです。 表1のA2~A4の"あ"は、表2ではA2に"あ"だけに残るように、同様に表1のA5~A8の"う"は、表2ではB2に"う"だけ残るようにしたいです。 表1では会社名毎に自動で、あいうえお順に並べ替えるようにしてますので、"い"という会社が表1で新規に入ったら表2のB2には"い"の会社が自動で挿入されて、"う"の会社は自動でC2に移動(品名も同様にB3→C3へ移動)するようにしたいのですが。 直接表2へ打ち込んだら?という意見もあると思いますが、それ以外の答えとしてです。 質問の内容がとてもわかりづらいと思いますが、内容が理解出来た方がいらしたら教えて下さいm(__)m

  • エクセルで勤務表から出勤者を別シートに抽出したい。

    下記の「勤務表シート」の「弁当コーナー」、「飲料・デザートコーナー」の出勤者の名前を 「分担表シート」に日付ごとに抽出し、後は手入力でその日の分担作業名を入れて、作業指示書 を作りたいと思います。 実際には、その他にも3つのコーナーがあり、40人程のパートさんを管理しております。 抽出する際に休んでいる人を空欄で残したいと思います。 また、日付ごとの分担表に月日も反映したいと思っています。 更に、勤務表に従って、1ヶ月分の日付の分担表のシート(28~31シート)を作成しておきたいと思っています。 今までは、勤務表に従って、手入力で名前を入れていましたが、入力ミスや休日変更などその都度、分担表も訂正し、手間がかかる上にミスも多く、困っています。 尚、マクロは使ったことが有りません。エクセルは2010です。 どうか、お手数ですが、ご教授お願い致します。

  • エクセル 別の表からの参照

    上手く説明できるかわかりませんが・・・ 表(1)に住所録を作成しております。 表(2)でそのデータを反映させたいのです。 例えば表(2)のA1セルに表(1)のA1セルのデータを参照させます。 これは=[表(1).xls]A1でできます。 表(2)のA2セルに表(1)のA2セルを参照させる計算式を教えてください。 素人考えで、=[表(1).xls]A1+1でできると思ってました・・・(^^;) 次の行を指定できる計算式を!

  • EXCELの表作成

    EXCELの表作成について質問です。シート1からシート4まで同一の表を作成し、シート1からシート3の表の合計をシート4に自動的に表示するにはどのようにすればいいのでしょうか?

専門家に質問してみよう