[[20170608002701]] 『循環参照と出ます。』(ひまぞう) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『循環参照と出ます。』(ひまぞう)

   A   B  C
1     16
2  1   0
3      5

質問です。
B2のセルにはA2+B1-B3の数式を入れ、0以下の場合
B1のセルに、決められた単位(例えば16の倍数)が入り、
0以上は、0と表示すよう出来ますでしょうか?

無知な者で、ご教授よろしくお願いします。

< 使用 Excel:Excel2013、使用 OS:Windows10 >


 B1を参照している以上無理でしょう。
 =B2の計算結果が変わってくるので、文字通り循環になります。
 なぜそんなことがしたいのですか?
(稲葉) 2017/06/08(木) 08:37

稲葉さん 回答ありがとうございます。

目的は、工程表を作りたく、A1行は前工程生産数、A2行は前工程在庫数、A3行は後工程生産数とし
前工程在庫数が0以下になった場合のみ、前工程生産数行に値が入るようできないかなと考えています。
又、前工程と後工程では生産ロット数が違うため各々単位を固定できたらと思います。
(ひまぞう) 2017/06/08(木) 18:46


 普通は2行目の過不足に合わせて、1行目は手入力だとおもいますよ

(稲葉) 2017/06/08(木) 19:28


 あるべき論言っても仕方がないので、もう少し真面目に答えると、全体像がわからないので
 D列、4行目以降もどうなっているか教えてください
(稲葉) 2017/06/08(木) 19:46

解答遅くなりすみません。

4行目は後工程在庫数、5行目は客先オーダーとなっております。
全5工程なので、実際には1行目前にも前工程があります。
稲葉さんがおっしゃるよう1行/3行は現状手入力でおこなっております。
他品番も多い為、最終工程のみ手入力で他前工程は自動にできたらと思います。
(ひまぞう) 2017/06/08(木) 23:29


 想像の羽をフル稼働させてみました。
 申し訳ないけど、私の理解力が乏しく、ひまぞうさんとのやり取り長くかかりそうなので、
 こちらの提示した表に合わせられない事情があれば、降りさせてください。

 1)手入力項目は次の通り
   B列すべて
   2行目すべて
 2)計算式は次の通り
   C3=MAX(CEILING(C5-B4,$B3),0)
   C4=B4-C5+C3
   C11=MAX(CEILING(C2-B12,$B11),0)
   C12=B12-C2+C11
 3)C3:C12をコピーして、右方向に必要な列分張り付け
 4)B列3,5,7,20,11は丸め数(おそらく16の倍数って言ってたので、バッチ数量かな?)
   B列4,6,8,10,12は前月末在庫を入力
 5)ただし、理論上の数値なので、出来高歩留り等は考慮されていません。

 以下の表があれば、オーダーだけ入力すれば後は自動でできるようになります。
 最終工程の計算式を手入力にすることも可能です。

     |[A]       |[B]          |[C]   |[D]   |[E]   |[F]   |[G]   |[H]   
 [1] |日付      |まるめ数/日付|5月1日|5月2日|5月3日|5月4日|5月5日|5月6日
 [2] |          |オーダー     |   110|   140|     0|   150|   160|   170
 [3] |工程1     |           16|   144|   112|     0|   176|   144|   176
 [4] |     残高 |            2|    14|     6|     6|    14|    14|    10
 [5] |工程2     |           12|   132|   120|     0|   168|   144|   180
 [6] |     残高 |            5|    11|     5|     5|    11|    11|    11
 [7] |工程3     |           18|   126|   126|     0|   162|   144|   180
 [8] |     残高 |            8|    14|     0|     0|     2|     6|     6
 [9] |工程4     |           20|   120|   140|     0|   160|   140|   180
 [10]|     残高 |           10|    10|     0|     0|    10|     0|     0
 [11]|最終工程  |           30|   120|   150|     0|   150|   150|   180
 [12]|オーダー残|            0|    10|    20|    20|    20|    10|    20
(稲葉) 2017/06/09(金) 11:11

稲葉さん 返信ありがとうございます。
並び、説明がほんと下手でご迷惑おかけしております。。
もう少しお付き合い頂けたらと思います。

結論から、凄いです。完璧です。

もう一つ、各工程でリードタイムが違う為下記のように、ずらすことはできますでしょうか?

		6/1	6/2	6/3	6/4	6/5	6/6	6/7	6/8
オーダー		0	0	0	0	0	0	32	0
工程1	16			96					
在庫	0	0	0	16	16	16	16	16	16
工程2	40				80				
在庫		0	0	0	16	16	16	16	16
工程3	16					64			
在庫		0	0	0	0	14	14	14	14
工程4	25					50			
在庫	0	0	0	0	0	10	10	10	10
最終工程10	0	0	0	0	0	40	0	0
在庫	0	0	0	0	0	0	40	8	8

(ひまぞう) 2017/06/10(土) 01:20


 そこは自分で考えてください
 ヒントはC列をリードタイム分だけあけて、各々在庫の参照先を変えればよいと思います
(稲葉) 2017/06/10(土) 05:28

稲葉さん 出来ました。

これをベースに、あと工程歩留りや実績差など見えるように出来ると
深夜帰宅から定時帰宅できるようになりそうです。
ここからは自分で頑張ってみます。
色々ありがとうございました。
又何かあったら。。。
よろしくお願いします。

(ひまぞう) 2017/06/10(土) 17:14


稲葉さん すみません。
エクセル2013の入ったパソコンだと、ちゃんと計算し使用できますが、
エクセル2007の入った違うパソコンで同じファイルを使用すると下記のよう#NUMとでます。。。
古いバージョンでは使用できないのですか?

			6/1	6/2	6/3	6/4	6/5	6/6
オーダー							16	
工程1	18		#NUM!	#NUM!	#NUM!	#NUM!	#NUM!	#NUM!
在庫			#NUM!	#NUM!	#NUM!	#NUM!	#NUM!	#NUM!
工程2	25		50	#NUM!	#NUM!	#NUM!	#NUM!	#NUM!
在庫			10	#NUM!	#NUM!	#NUM!	#NUM!	#NUM!
工程3	40		0	40	#NUM!	#NUM!	#NUM!	#NUM!
在庫			0	25	#NUM!	#NUM!	#NUM!	#NUM!
工程4	5		0	0	15	#NUM!	#NUM!	#NUM!
在庫			0	0	4	#NUM!	#NUM!	#NUM!
最終工程	32					11		
在庫			0	0	0	11	-5	-5

(ひまぞう) 2017/06/12(月) 17:32


 対応していない関数の場合はNAMEエラーだったお思います。
 まったく同じファイルですか?

https://allabout.co.jp/gm/gc/390702/

 数式の検証で、どの段階でエラーになるか確認してください。
 また最終的な表の形とエラーになる数式を提示いただかないとわかりません。
(稲葉) 2017/06/12(月) 17:49

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.