マンガでよめる痔のこと・薬のこと

会社で使用量の集計をしています。
原材料をサイロ(大きな保管場所)に入れています。物は同じですが、作った日によって工程ロット(今年の12/11は071211です)で分けています。10t生産したら昨日作った分に被せています。生産量はバラバラです。
エクセルで当日のサイロ残高の表に入力しています。工程ロット、生産量、使用量で、サイロの状態を再現する為、新しいロットから上から入力します。使って行くのは古いロットからになります。
その材料ですが、専用トラックに積み込んで出荷するのですが(一日に複数台)、各トラックに積み込んだ数量に、どの工程ロットと、どの工程ロットが入っているか比率をエクセルに入力する必要があります。
(10t積み込んだ場合、071210が4t、071211が6tで、次のトラックはサイロに残っている分から同じように工程ロットの比率を入力します)
使用量と工程ロットの比率は、自分で計算しているのですが、これを自動で集計したいと思っています。一日に何台も積み込むので計算時間も掛かります。

指定したセルに積み込んだ数量(トラック毎)を入力すると、
(1)上記の表の使用量が自動で計算され、入力される。
(2)工程ロットと使用量の比率をトラック毎に指定したセルに表示させる。
この様な事は出来ますでしょうか?説明が難しいので、指摘があったら教えて下さい。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

VBA使わずにだったら、私だったら、こうするか程度のアドバイスです。


多分、データ取りに必要なグループが、3つになると思います。
生産管理 
A 生産日(生産ロット) B生産量(トン)  Cロット別残量
  2007/12/1       10000        関数1
  2007/12/2       10000
と生産に応じてA列、B列を入力していく

ロット別出荷管理
E 出荷日       F 出荷ロット   G 出荷量
 2007/12/3       2007/12/1     10000(入力規則1)
 2007/12/3       2007/12/2     5000
ロット別の出荷をE列、F列、G列を入力

出荷総量
I 出荷日      H 出荷予定意総量  I 出荷総数量
 2007/12/3       15000       (関数2)
I列、H列を入力

関数1は、=B2-SUMIF(F:F,A2,G:G)
関数2は、=SUMIF(E:E,I6,G:G)
で下フィルしておく、
入力規則1は、ユーザー設定で
=INDEX(C:C,MATCH(G9,A:A),1)>=0 で、残量が0以下の数値は入れられない。
J列に =IF(H2=I2,"OK","NG")で、出荷の状況表示
一人で仕事されている内容を
生産部の仕事、物流部(出荷部)の仕事、管理部門の仕事と分けて考えるのは、いかがでしょうか。
    • good
    • 1

課題だけを質問に書いた丸投げの質問で、回答者を下請けとして扱ってます。


あなたは毎日の仕事であるからわかっているでしょうが、質問を読んで、はっきり頭に入らない(私の頭の悪いせいもあって)。
しかし長年の社会経験から、自動車が運んだ量(=その日の合計がその日の使用量)をロットに割り振るのが、看做しの計算が必要でそれに苦労しているらしいことはわかる。流動物((とか個別にはIDの振って無い測り売り品など)量で販売するような商品などはどこでも同じ場面があると思います。それをエクセルの関数式で組み立てるのは条件が色々分かれるため難しい、また見る行がロット在庫の有様により変わるので、そういうタイプの量の充当計算はエクセル関数では難しい(私が言う難しいは不可能に近い)。
色んな場合分けをして
A現在庫(ロット別)ーBトラックでの搬出量(ロット別)ーC新在庫
を考えて文章にしてみてください。
AとBは、Aの状態とBのの使用量の関数(広い意味の数学の関数)
です。相互関連タイプです。もし(Aと)Bが決まればAの各ロットからBの各ロットを番号が同じものを対応して引算すれば、自ずとCの在庫は出る。相互関連であるところが難しいのです。
使用量から在庫に向かって充当分を割り出す(充当する)問題ですね。
ーーー
多分ここのところはVBAでロジックを組まないと、配分=充当ロジックが、ロジックとして組めないと思う。
ーー
最後に質問の説明不足と思うものを1つ
1日には数ロット生産されることはあるのですね。5トンで時間切れで半ロットのままとかありますか。それはあくる日の生産で10トンを越えたとき1ロットその日の分とするのか。
この問題を考える上で10トン以内の半端は、在庫も販売もありえない商売をやっているのかどうか。
私の書いた文章のいみも伝わったかな。
「先入先出し法」は、データ構造では「リスト」形式がふさわしいと習ったことがある。それをコンピュタソフトの上に実現すればよいのかな。しかし質問者には何を言っているのか判る?。
ーー
私は広幅のシートから、切れ葉(縦横幅指定)を注文を受けて、切り売り(効率よくロスを少なく)販売する場合の在庫管理の相談を受けたことを思い出しますが、こちらは2次元で。質問者の場合は、量だけの一次元なのでそういう意味では易しいでしょうが、専門家が当たるべき問題の気がします。
    • good
    • 0

できると思いますけど、いくらかご自分で関数を使って試されてますか?


全て教えてくださいというのは少々虫が良すぎると思いますけど。
こうやってみたけどうまくいかないのはなぜか?
というような質問なら的を得た回答が得られるというものです。
    • good
    • 1

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q在庫日付順に先入先出しをエクセルで管理できるのでしょうか?

食品の賞味期限を管理しようとしています。
在庫日付順に先入先出しをエクセルで管理できるのでしょうか?
例えば、
材料名  ロットNo.  賞味期限  在庫
みかん  123     2008/3/1   10
みかん  124     2008/3/20   15
バナナ  111     2008/4/10   20
としておいて、

みかん  20出荷する場合、

みかん  124     2008/3/20   5 に
エクセルで管理することできるのでしょうか?
ごぞんじな方教えて頂けませんでしょうか?
宜しくお願い致します。

Aベストアンサー

質問例で
みかん  20出荷する場合、
賞味期限の早く来る、
みかん  123     2008/3/1   10
からまず充当し、
不足分10を
みかん  124     2008/3/20   15
から充当し
残り
みかん  124     2008/3/20   5 
を残すように更新するのですね。
質問は一瞬判りにくかった。
ーーー
この程度になるとエクセルの関数では難しいと思う。
VBAで処理しないと
優先関係
あるロットで必要数不足の場合次々に繰り越して考えていく点
など
関数では不定な数のデータを扱うのは難しい。
また日々や時々推移していくものを表形式にどう具体化するかも方式は一定して無いでしょう。
ある時点の在庫表、注文をどういう風に表にするか、注文を組み入れた後の表をどのように構成するか。日々表が出来るが、どうするか。形式論だけでも難しい。
これは本式にはプロ・本職がやる分野で、多くの経験で鍛えられてい無いと、VBAを少しかじった程度では出来ないでしょう。
ーー
プロに金を出してやってもらうか、プログラムのベテランがいれば頼むか。
プロは多分、マスターとトランザクションという考え方を採るだろう。エクセルからコンピュタ利用に入ってとどまっている者は、こういう考えが苦手なはずだ。
ーー
そうでなければ注文分を割り当てるのは、人間が手作業と頭で行うしかなかろう。
出  残
みかん  123     2008/3/1    10 10  0
みかん  124     2008/3/20   15 10 5
出の10,10の行位置探しと、10,10の配分は人間が考える。
まあ計算できるところの計算は関数でして、あとプロセスの記録を残すという表だね。
手作業帳簿の時代はそれをやっていたはずだ。

質問例で
みかん  20出荷する場合、
賞味期限の早く来る、
みかん  123     2008/3/1   10
からまず充当し、
不足分10を
みかん  124     2008/3/20   15
から充当し
残り
みかん  124     2008/3/20   5 
を残すように更新するのですね。
質問は一瞬判りにくかった。
ーーー
この程度になるとエクセルの関数では難しいと思う。
VBAで処理しないと
優先関係
あるロットで必要数不足の場合次々に繰り越して考えていく点
など
関数では不定な数のデータを扱う...続きを読む

QExcelで出荷・在庫管理の方法

仕事でExcelで商品の出荷と在庫の管理表を作るように言われたのですが、次のような場合の関数の書き方を教えてください。

賞味期限がある商品で、出荷指示が出た場合に賞味期限の古い方から自動的に在庫を減らしたいです。

例えば、2011/12/10賞味期限のオレンジジュースが200個、2011/12/25賞味期限のが500個あったとして、300個出荷する時に12/10のから200個、足りない100個を12/25賞味期限のから自動的に差し引かれるようにしたいのです。


[セルA1]オレンジジュース、[B1]2011/12/10(賞味期限)、[C1]200(在庫)
[B2]2011/12/25、[C2]500

IF関数とか考えてみたのですがなかなかうまくいかなくて…

ちなみにExcel2007です。

よろしくお願いしますm(__)m

Aベストアンサー

いまご質問でヤリタイ事:
>賞味期限がある商品で、出荷指示が出た場合に賞味期限の古い方から自動的に在庫を減らしたい

【大前提】今作成するのは「実際に入庫・出庫が発生した分」の記録です。
 つまり「将来の入庫・出庫予定」は記入しません。


添付図参照:
C:F列,I:K列は生データを記入する欄です
G3:
=IF(F3="","",MIN(MAX(0,SUMIF(E:E,"<"&E3,F:F)+SUMIF($E$3:E3,E3,$F$3:F3)-SUM(K:K)),F3))
以下コピー

A4:
=SUM(G:G)
A6:
=SUM(F:F)-SUM(K:K)


ご質問に書いてないオマケ:
 同じ日付で期限がある場合,リストの上から順に減らしていきます





#お願い
このタイプのご相談で非常に多く見かけますが,「実はこれもしたいあれもしたい」を後出しで追加質問しないでください。たとえば「どの品を出した・出せばいいのか計算で並べたい」とか。
もしもそういう欲が出たときは,まずはこのご質問の内容を解決した上で一度ご相談を解決で閉じ,改めて「次はこういう状況で今度はこういう結果を並べたい」とヤリタイ事をキチンと説明して,次のご相談を遠慮無く投稿してみてください。

いまご質問でヤリタイ事:
>賞味期限がある商品で、出荷指示が出た場合に賞味期限の古い方から自動的に在庫を減らしたい

【大前提】今作成するのは「実際に入庫・出庫が発生した分」の記録です。
 つまり「将来の入庫・出庫予定」は記入しません。


添付図参照:
C:F列,I:K列は生データを記入する欄です
G3:
=IF(F3="","",MIN(MAX(0,SUMIF(E:E,"<"&E3,F:F)+SUMIF($E$3:E3,E3,$F$3:F3)-SUM(K:K)),F3))
以下コピー

A4:
=SUM(G:G)
A6:
=SUM(F:F)-SUM(K:K)


ご質問に書いてないオマケ:
 同じ...続きを読む

Qエクセルの計算式で、在庫管理をしたい

教えて下さい。エクセルで商品管理の作表をしています。在庫数から、注文数を引いていくには、どんな計算式を使うのでしょうか?どうしても、入庫の無い日の
在庫数にマイナスが入ってしまいます。(トータルにマイナスが入るのは分かりますが)ドコにどーゆー関数を使うのか教えて下さい、お願いします。

Aベストアンサー

すみません、#2補足です。
うちの場合、入庫は月に数回なので、入庫数は一列しか設けてなく、そこに入庫があった日にどんどん足して入力するのですが、出荷は毎日なので、1日~31日までを区切っておいて毎日入力して行き、当月の出荷合計列にその合計が出るようにしてます(SUM1日セル:31日セル)←を当月出荷合計セルに入れるわけです。
なので、前月末在庫セルをAとし、入庫数セルをBとし、当月出荷合計セルをCとすると、「A+B-C」で、これが現在庫数になりますよね。

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む

Qエクセルで、条件に一致した行を別のセルに抜き出す方法

エクセルで、指定した条件に一致するセルを含む行をすべて抜き出す方法が知りたいです。

たとえば、

<A列> <B列> <C列>
7/1 りんご 100円
7/2 ぶどう 200円
7/2 すいか 300円
7/3 みかん 100円

このような表があって、100円を含む行をそのままの形で、
別のセル(同じシート内)に抜き出したいのですが。

7/1 りんご 100円
7/3 みかん 100円

抽出するだけならオートフィルターでもできますが、
抽出結果を自動的に、別の場所に、常に表示させておきたいのです。

初歩的な質問だと思いますが、検索しても分からなかったので、よろしくお願いします。

Aベストアンサー

同じ質問が結構よく出てますが、そんなに初歩的でもありません
別シートのA1セルに「100円」と入力し、そのシートの任意のセルに以下の式を貼り付けて下さい。後は、下方向、右方向にコピー。
日付のセル書式は「日付」形式に再設定してください

=IF(COUNTIF(Sheet1!$C:$C,$A$1)>=ROW(A1),INDEX(Sheet1!A:A,LARGE(INDEX((Sheet1!$C$1:$C$500=$A$1)*ROW(Sheet1!$C$1:$C$500),),COUNTIF(Sheet1!$C:$C,$A$1)-ROW(A1)+1)),"")

データ範囲は500行までとしていますが、必要に応じて変更して下さい

Qエクセルで在庫管理(日付で制御方法)

エクセルで入出庫在庫管理をしようと
しています。

そこで質問ですが、
日別在庫数のセルには、
1.今日と過去の日別在庫数のセルには、
 その時の在庫数を表示
2.未来の日別在庫数のセルには、
 在庫数ブランク
にしたいと考えています。

IFで「TODAY()」にすると今日のセルは正しく
表示されますが、今日以外はブランクになってしまいます。よろしくお願い致します。

Aベストアンサー

#1の方がおっしゃっているように、シートの状況がよくわからないのですが・・・

下記のような式でどうでしょうか?

=IF(■■<=TODAY( ),"○○","")
※■■は比較対象となる日付
※○○は表示させるべき在庫数

QOR関数

アクセス2003を使っています。
エクセルにある、OR関数をアクセスのクエリ上で使いたいのですが、使えるのでしょうか?

クエリ上で解答フィールドで「山」または「海」なら1、それ以外なら0という式を作りたいと思っています。
iifは分かりますが、「または」という部分で上手くいきません。

よろしくお願いします。

Aベストアンサー

>iif([解答]="山" or "海",1,0)
アクセスの場合
iif([解答]="山" or [解答]="海",1,0)
となります。


人気Q&Aランキング