• ベストアンサー

表の中から特定の数値を検索したい

下記のような表の中があるとします。この中から、特定の部品を毎月、発注するために、Orderの数字を抽出するとします。 X1、X2、X3…部品番号です。各部品に、所要、注文(予定)、在庫の三項目がそれぞれぶら紐づいており、これが1000点くらいあるものとお考えください。 X1 Sep-09 Oct-09 Nov-09 Demand 1000 2000 3000 Order 5000 2000 2000 Inv 4000 7000 6000 X2 Sep-09 Oct-09 Nov-09 Demand 1000 2000 3000 Order 2500 4000 4000 Inv 1500 2000 3000 X3 Sep-09 Oct-09 Nov-09 Demand 1000 2000 3000 Order 2000 3000 4000 Inv 1000 1000 1000 さらに各部品にはMOQ(最小発注単位)が設定されており、 実オーダー時にはこの刻みによる計算が必要です。 例 MOQ X1 2500 pcs X2 2000 pcs X3 1500 pcs 部品番号と該当月だけを入力することで、Order数が検索され、なおかつMOQ刻みの計算(Roundupでよいです)が抽出される関数を求めたいです。 Hlookup、Vlookup、Match、Indexあたりをいろいろ触ってみましたが どれも完全にはカバーできません。 皆様のお知恵を拝借できますでしょうか?できれば数日以内にいただけますと大変助かります。

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

  • ベストアンサー
noname#204879
noname#204879
回答No.2

Sheet1    A    B    C    D 1  X1   Sep-09 Oct-09 Nov-09 2  Demand  1000  2000  3000 3  Order   5000  2000  2000 4  Inv    4000  7000  6000 5  X2   Sep-09 Oct-09 Nov-09 6  Demand  1000  2000  3000 7  Order   2500  4000  4000 8  Inv    1500  2000  3000 9  X3   Sep-09 Oct-09 Nov-09 10 Demand  1000  2000  3000 11 Order   2000  3000  4000 12 Inv    1000  1000  1000 Sheet2   A   B    C 1 Pt# Date  Order 2 X2  Sep-09  2500 3 X3  Oct-09  3000 4 X1  Nov-09  2000 Sheet2!C2: =INDEX(Sheet1!A$1:D$12,MATCH(A2,Sheet1!A$1:A$12,0)+2,MATCH(B2,Sheet1!A$1:D$1,0))

honeybathroom
質問者

お礼

ありがとうございました。バッチリでした。

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

その他の回答 (1)

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

最初の表がシート1のA列からD列にあるとします。例えば日付がX列まで伸びていてもかまいません。 また、一つの部品番号あたり3行が使われているとします。 MOQの表はシート2のA列とB列に入力されているとします。 シート3にはご質問の答えの表を作るとします。 A1セルに部品番号、B1セルに日付、C1セルにOrder数、D1セルにMOQとそれぞれ文字を入力し、データは下方に表示させるとします。 例えばA2セルにX3と入力し、B2セルには2009/10/9と入力したとします。 C2セルには次の式を入力し下方にオートフィルドラッグします。 =IF(A2="","",INDEX(Sheet1!$A:$X,MATCH($A2,Sheet1!$A:$A,0)+2,MATCH($B2,INDIRECT("Sheet1!"&MATCH($A2,Sheet1!$A:$A,0)&":"&MATCH($A2,Sheet1!$A:$A,0)),0))) これでC2セルには3000と答えが表示されます。 D2セルには次の式を入力し下方にオートフィルドラッグします。 =IF(A2="","",VLOOKUP(A2,Sheet2!A:B,2,FALSE)) これでD2セルには1500pcsと表示されます。

honeybathroom
質問者

補足

ありがとうございます。後者のMOQについては正しく1500と表示されましたが、Order数が3000と表示されず#N/Aになってしまいます。

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

関連するQ&A

  • 一月前の日付を求めるプログラム(pascal)

    大学の課題で「一月前の日付を求めるプログラムを作れ。その日が無ければその月の最後の日を示す。」というのが出題されました。12月18日(火)と入力すると11月18日(日)、12月31日(月)なら11月30日(金)となる具合です。 列挙型を用い書いてみたのですが、コンパイルしたら「Type-clash」と出てコンパイルできませんでした。どう改善すべきかアドバイスお願いします。 program calender(input,output); type months=(Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Nov,Oct,Dec); weeks=(Mon,Tue,Wed,Thu,Fri,Sat,Sun); var x,x1,z,z1:char; y,y1,p1,p2,i,r:integer; begin writeln('月:'); readln(x); writeln('日:'); readln(y); writeln('曜日:'); readln(z); if x=Jan then begin x1:=Dec end else begin x1:=pred(x)            {x1=表示する月} end; if y>=29 then if x=Mar then begin y1:=28 end else begin y1:=y             {y1=表示する日} end; case x of May,Jul,Aug,Nov,Dec : p1:=30; Jan,Feb,Apr,Jun,Sep,Oct : p1:=31; Mar : p1:=28 {月の違いによる日数の違い} end; p2:=y-y1;     {日にちの違い} r:=(p1+p2)-trunc((p1+p2)/7)*7; {7で割った余り} for i := 1 to r do z1:=pred(z);          {z1=表示する曜日} writeln(x1,'月',y1,'日',z1,'曜日') end.

  • 転移歯車の計算方法に関しての質問です

    KHKのwebより以下の計算を行いましたが途中で理解出来なくなり頓挫してしまいました・・・ 全く初歩的な質問かとは思いますが、宜しくご指導願います。 問1 表4.3 転位平歯車の計算(1)の表で 5. インボリュートα'  invα' 2tanα((x1+x2)/(z1+z2))+invα 0.034316 となっていますが 5.の数式のinvαの部分にはどのような数値を代入すると0.034316と言う解答になるのかが判りません。 invα = tanα-αとして圧力角20゜だとすれば        tan20-20=-17.7628(度)という計算結果になってしまいます 問2 インボリュート関数表の読み方が判りません 6.かみあい圧力角α' インボリュート関数表より求める 26.0886゚となっていますが http://www.khkgears.co.jp/gear_technology/basic_guide/KHK357_2.html の関数表を見ると横軸に角度、縦軸に数字の表示になっています、どのように見れば20.0886゚という数値が導けるのでしょうか? 愚問で恐縮ですが宜しくお願い致します。

  • エクセルで(マクロ)で特定のデータのみ別シートに自動抽出・計算

     当方、関数は頻繁に使用するのですがマクロはほとんど使用することがないので、かなり昔にやったきり覚えておりません。今回至急でやらなければいけないので、ぜひともお力添えを頂きたく投稿しました。。  ある部品の重量計算シートが型式違いで10シートあります。例えば丸(○)型部品の重量計算は、使用したい直径(φ)の寸法を選んで長さを入力すると自動的に重量が計算されるという計算式が入っています。丸型(○)は直径(φ)ですが、角型(□)ですと定尺寸法で決められています。  そこで、ある製品を作るのに、どの部品をどれだけ(重量)必要かを見積りします。しかもその製品はユニット毎に分かれていて、(1)ユニット・(2)ユニット・・・多くて(8)ユニットまであります。  例えば(1)ユニットで使用したい部品には、型式別(10シート)の部品の一番左列に"(1)"と記入していき、別シート(重量計算集計表) にその部品名と重量が自動的に抽出され、数量を入力して総重量も自動計算されるようにしたいのです。同様に(2)ユニットなら"(2)"と記入し各シートから抽出。  最終的に、先ほどの別シートに(1)ユニットでどんな型式の部品をどれだけ使用するか、(2)ユニット・・・も同様、それぞれユニットで使用する部品の型式とその内訳と重量が分かるようにし、さらに数量を手入力して使用合計重量を自動計算したいのです。 ※但し、ユニット番号が入力されているものだけが抽出される。(全ての部品を使用するわけではありません) <○型シート>   <□型シート> ~~種類別シート10まで (1)φ6 ・・・10g   (2)10*10 ・・・20g (2)φ8 ・・・30g    (1)20*20 ・・・30g (1)φ10・・・50g   (3)30*30 ・・・40g (3)φ12・・・60g     40*40 ・・・50g ←左端ににユニット番号がないものは抽出しない  ↓ ↓ ↓ ↓ <別シート> (重量計算集計表) (抽出)         数量(手入力)  使用重量合計(自動計算) (1) ○型φ6 ・・・ 10g          2         20g (1) ○型φ10・・・ 50g          1         50g (1) □型20*20 ・・・30g          2         60g   (2) ○型φ8 ・・・ 30g          3          90g (2) □型10*10 ・・・20g         5    100g (3) ○型φ12・・・ 60g         2    120g (3) □型30*30 ・・・40g         3     120g  以上、文字間が不ぞろいの上、説明が不十分で申し訳ありませんが、何卒よろしくお願いいたします。m(_ _)m  

  • アクセスのフォーム上で計算値の合計がエラーになる

    アクセスで製品オーダを入力したときに現状の部品在庫に対して不足する部品数を計算 し、その部品数に単価をかけた各不足部品の合計金額を計算できるよう、添付画像の フォームを作成しました。(画像はデザインビューです。) フォーム画像の(1)はフォーム上で入力する数です。(2)(6)は、コントロールソース値 にクエリのフィールドを指定、(3)のコントロールソース値も同じクエリで計算された フィールドを指定して表示されます。(4)(5)(7)(8)(9)(10)は、(1)を入力したときに 計算されるよう、コントロールソース値にそれぞれ次の式を入れています。 (4):=[員数]*[テキスト50] (5):=IIf([テキスト47]-[見なし在庫数]<0,0,[テキスト47]-[見なし在庫数]) (7):=IIf([テキスト49]/[最少発注単位]=0,0,Round(([テキスト49]/[最少発注単     位])+0.49999,0)) (8):=[最少発注単位]*[テキスト66] (9):=[部品単価]*[テキスト64] (10):=Sum([部品単価]*[テキスト64]) ここで、(1)のオーダに数を入力したら、(4)(5)(7)(8)(9)はそれぞれ計算結果が出てく るのですが、肝心の(10)については、「#エラー」となってしまいます。 ここ何日かこの問題でストップしていてどうしたら良いかわからず、非常に困ってしま いました。(ここでは省略しますが、色々と試してみても全くダメです。(泣)) どなたかアクセスにお詳しい方、何卒お助けいただきますよう、宜しくお願い致します。

  • エクセル 文字列の中から数字を抽出する方法

    エクセル 文字列の中から数字を抽出する方法 以前 QNo.5823420 で質問させて頂いたんですが 再度質問させてください。 "オーダー番号"+"半角スペース"+"部品型番"+"半角スペース"+"個数"+"半角スペース"+"部品名" というような文字列の中から個数の数のみを抽出する方法を教えてください。 "文字列"+"半角スペース"+"文字列"+"半角スペース"+・・・と文字列の繋がる数は決まってませんので 個数は何番目のスペースの後にくるかは不定です。 数量の半角"ケ"とその前の半角スペースまでの間の数字を抽出したいです。 例1)文字列 :ABC110 XXYYZZ5566 2ケ ****   抽出文字:2 例2)文字列 :ABC XYZ 5566 DDEE11 3ケ FFGG   抽出文字:3 よろしくお願いします。

  • 訂正質問「ミクロ経済学」武隈慎一

    すみません。先ほど,質問をさせて頂いたのですが,ページ番号と分母分子が間違っていました。編集ができないようなので改めて投稿させて頂きます。 「ミクロ経済学」武隈慎一著のP39 どうしても途中計算がわからないので,教えてください。 予算制約式はP1X1+P2X2=m 効用最大化条件はX2の2分の1乗/X1の2分の1乗=P1/P2 上の二式をX1,X2について解くと,需要関数は X1=mP2/P1(P1+P2) X2=mP1/P2(P1+P2) となるそうなのですが,ここの需要関数のX1,X2の解答にどうしても辿り着けません。 途中計算を教えてください。よろしくお願いします。

  • Excel: 近い値のセルの隣接セル同士の参照・抽出について

    Excel: 近い値のセルの隣接セル同士の参照・抽出について よろしくお願い致します。 題目ではうまく説明できず申し訳ありません。今、 X1   Y1   X2    Y2 1    35    1.1    50 2    40    2.9   81 3   20     5.3   2 4   10    5.6    15 5    22    10.0   25 6   11    18.4    10 (中略) 100   32    250.2   14 といった二つのデータ(X1,Y1)と(X2,Y2)があります(位置合わせがうまくできずすみません)。X1は整数、他は実数です。X2の値と値の間隔は不定です。 X2の値と最も近い値のX1の隣のY1を参照し、Y1×Y2の値をY3として出力したいと思っています。 具体的には、 X1    Y1    X2    Y2    Y3 1    35    1.1    50→   (1.1≒1)35×50=1750 2    40    2.9    81→    (2.9≒3)20×81=1620 3    20    5.3    2→    (5.3≒5)22× 2=44 4    10    5.6    15→   (5.6≒6)11×15=165 5    22    10.0    25   … 6    11    18.4    10 (以下略) と計算し、 X2    Y3 1.1    1750 2.9    1620 5.3    44 5.6    165 (以下略) といったデータにしたいのです。 Excelでこのような操作を行うことができるでしょうか。御教示ください。 できればマクロなどを使わない方法でお願いします。 よろしくお願い致します。

  • 無駄に覚えている数字ってどのくらいあります?

    みなさん、無駄に覚えていて2度と使わないだろうって数字、どのくらいありますか? 私の場合、 ・大学時代の学籍番号 (8ケタx1) ・昔勤めていた会社の部署の内線番号 (8ケタx1、7ケタx1) ・以前住んでいたアパートや家の電話番号 (10ケタx2) ・以前住んでいたアパートや家の郵便番号 (3ケタx1,7ケタx1) ・元カノの実家の電話番号 (10ケタx2) ・元カノの携帯番号 (11ケタx1) ・円周率の 3.141以降の数字 (4ケタ(笑)) もっとも円周率最初の3.14も小中学生の勉強以外に使っていない。 高校受験の時はπでそのまま計算していた。 ・2、3、5の平方根(9ケタx3): 高校の時でも2の平方根は√2 と書いていたので、学校の勉強にすら使っていない。 ざっと思い出せるだけで合計105ケタでした。 (もしかして、今住んでいる家の電話番号も携帯電話に登録しているので覚えている必要ないかも...。) あ、もちろん面倒くさかったら桁数は書かなくてけっこうですよ。

  • セルの中で数値を検索したいのですが

    ある数値をランク関数で、ランク付けしてます。 1~10位の間でランクし、これを検索したいわけですが 普通に検索するだけだと、MATCH関数でいけるんですが たまに、数値が同じになり、5位が複数になったりすると 一つ目の5位はいけても、二つ目の5位が検索できずに#N/Aになってしまいます。 こういう場合に、1つ目の5位、2つ目の5位 という感じで 分けて検索できるような関数、もしくは方法はあるのでしょうか? 良い知恵お持ちの方いらっしゃいましたら助けていただけませんでしょうか^^;

  • 集積公差について

    未熟者の設計者です。ある製品において、部品Aと部品Bとのすきまがどれだけになるのかを調べる必要が生じました。 とりあえず現物を測ることはやったのですが、図面上そのすきまはどれだけの幅をとり得るのかも確認しておく必要があります。 そこで集積公差の概念を用いるわけですが、私は今まで次のような計算をしてきました。 W=k√(Σ[ni=1]Wi2)     ただし     k=2Σ[ni=1]Wi/(Wimax+Σ[ni=1]Wi)     ここで     W:集積箇所の公差     Wi:各部分の公差     Wimax:各部分の公差の内で最大の物     n:集積する公差の個数 ところが別の人に聞いてみると次のようなやり方をするというのです。 σz = √(σx1^2+σx2^2+・・+σxn^2) σx1、σx2…標準偏差 で求めたσzを3倍する。 両者の結果があまり変わらないなら悩まないのですが、結構違うのです。 こういう場合にはこちらというように使い分け方をご存知の方教えてください。 よろしくお願いいたします。

専門家に質問してみよう