advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 37671 for IF (0.007 sec.)
[[20231126220127]]
#score: 1591
@digest: 358289d8d0591f9d0748fa411e88f757
@id: 95648
@mdate: 2023-12-03T12:30:13Z
@size: 29139
@type: text/plain
#keywords: curbox2 (203127), quotient (99377), 口割 (95210), 空箱 (77465), residual (67402), 括梱 (64439), curbox (59046), addnums (51665), powers (50877), 混載 (49880), capacity (47412), bulkboxes (43608), 数口 (41712), 梱包 (36753), power31 (29993), れ番 (25437), 先度 (21818), power (18979), 号個 (13607), c35 (12843), 割れ (12767), ・27 (11957), 箱に (10515), 注数 (10107), 箱数 (9495), 27 (8162), 個入 (7872), 理( (7587), 載) (7385), total (7367), 箱の (7096), formular1c1 (7089)
『箱詰め作業のシート作成』(den)
web版のexcelにて、箱詰め作業のシートを作成しておりますが、 関数の計算結果にバグがでてしまい困ってます。 作成途中のシートを下記urlにupしましたので 正しい関数の使い方をご指導いただけますでしょうか。 よろしくお願いします。 https://u1.getuploader.com/sample/download/17936 < 使用 アプリ:web版のexcel、使用 OS:Windows10 > ---- 内容↓こんな感じでした。 ▼イメージ図 [___]|___A____|______B_______|___C____|_______D_______|___E____|_______F________|_______G________|___H____|___I____|_______J_______|___K____| [ 1]| | | | ___|________|________________|________________|________|________|_______________|________| [ 2]| | | |箱に詰める数_________________________________________________________________________________________| [ 3]| | | |先(power混載)_________|中(power同一)____________________________________|後(power混載)_________| [ 4]| |power |発注数 |口割れ番号 |個数 |口割れ番号(頭)|口割れ番号(尾)|個数 |箱数 口割れ番号 |個数 | [ 5]| | 1| 20| | 25| | | 0|0 | | 25| [ 6]| | 2| 20| | 5| | | 0|0 | | 15| [ 7]| | 3| 20| | 12| | | 27| 1| | -19| [ 8]| | 4| 0| | 46| | | 0|0 | | 23| [ 9]| | 5| 100| | 23| | | 54| 2| | 23| [ 10]| | 6| 140| | 4| | | 135| 5| | 1| [ 11]| | 7| 180| | 26| | | 135| 5| | 19| [ 12]| | 8| 180| | 8| | | 162| 6| | 10| [ 13]| | 9| 220| | 17| | | 189| 7| | 14| [ 14]| | 10| 230| | 13| | | 216| 8| | 1| [ 15]| | 11| 250| | 26| | | 216| 8| | 8| [ 16]| | 12| 240| | 19| | | 216| 8| | 5| [ 17]| | 13| 280| | 22| | | 243| 9| | 15| [ 18]| | 14| 290| | 12| | | 270| 10| | 8| [ 19]| | 15| 270| | 19| | | 243| 9| | 8| [ 20]| | 16| 230| | 19| | | 189| 7| | 22| [ 21]| | 17| 250| | 5| | | 243| 9| | 2| [ 22]| | 18| 220| | 25| | | 189| 7| | 6| [ 23]| | 19| 1| | 21| | | 0|0 | | 11| [ 24]| | 20| 170| | 10| | | 135| 5| | 25| [ 25]| | 21| 200| | 2| | | 189| 7| | 9| [ 26]| | 22| 160| | 18| | | 135| 5| | 7| [ 27]| | 23| 220| | 20| | | 189| 7| | 11| [ 28]| | 24| 220| | 16| | | 189| 7| | 15| [ 29]| | 25| 180| | 12| | | 162| 6| | 6| [ 30]| | 26| 170| | 21| | | 135| 5| | 14| [ 31]| | 27| 110| | 13| | | 81| 3| | 16| [ 32]| | 28| 80| | 11| | | 54| 2| | 15| [ 33]| | 29| 60| | 12| | | 27| 1| | 21| [ 34]| | 30| 40| | 6| | 175| 27| 1| 176| 7| [ 35]| | 31| 20| 176| 20| | | 0|0 | | | [ 36]| |合計 | 4771| | | | | | | | | [ 37]| |必要な箱の数 | 176| | | | | | | | | [ 38]| |箱から余った数| 19| | | | | | | | | [C36] =SUM(C5:C35) [C37] =QUOTIENT(C36,27) [C38] =MOD(C36,27) [D35] =C37 [E5] =IF(E6+K5=27,C5-H5-K5,K5) [E6] =IF(E7+K6=27,C6-H6-K6,E7+K6) [E35] =C35-H35 [G34] =J34-I34 [H5] =IF(I5="",H5="",I5*27) [I5] =IF(OR(C5-K5<27),"0",QUOTIENT((C5-K5),27)) [I35] =IF(OR(C35<27,C35=""),"0",(QUOTIENT(C35,27))) [J34] =D35 [K5] =IF(27-E6>C5,C5+E6,27-E6) Rem (参考)============================================================================================== [C36].FormulaR1C1 = "=SUM(R[-31]C:R[-1]C)" [C37].FormulaR1C1 = "=QUOTIENT(R[-1]C,27)" [C38].FormulaR1C1 = "=MOD(R[-2]C,27)" [D35].FormulaR1C1 = "=R[2]C[-1]" [E5].FormulaR1C1 = "=IF(R[1]C+RC[6]=27,RC[-2]-RC[3]-RC[6],RC[6])" [E6:E34].FormulaR1C1 = "=IF(R[1]C+RC[6]=27,RC[-2]-RC[3]-RC[6],R[1]C+RC[6])" [E35].FormulaR1C1 = "=RC[-2]-RC[3]" [G34].FormulaR1C1 = "=RC[3]-RC[2]" [H5:H35].FormulaR1C1 = "=IF(RC[1]="""",RC="""",RC[1]*27)" [I5:I34].FormulaR1C1 = "=IF(OR(RC[-6]-RC[2]<27),""0"",QUOTIENT((RC[-6]-RC[2]),27))" [I35].FormulaR1C1 = "=IF(OR(RC[-6]<27,RC[-6]=""""),""0"",(QUOTIENT(RC[-6],27)))" [J34].FormulaR1C1 = "=R[1]C[-6]" [K5:K34].FormulaR1C1 = "=IF(27-R[1]C[-6]>RC[-8],RC[-8]+R[1]C[-6],27-R[1]C[-6])" Rem ==================================================================================================== ▼テキストボックス '--------------------------------------------------------------------------------- > やりたいこと >・27個入る空箱へ、powerが強いモノから順番に入れて封をしたい >・空箱には口割れ番号を割り当てることで、封をした後でも中身がわかるようにしたい >・今後、発注数の縦欄の数字を手動で変えることで、このシートを流用したい '--------------------------------------------------------------------------------- > 困ってること >・発注数に0を入力したり > 空箱の残空き数よりも発注数が小さくなると > 関数が崩れてしまい、正しく計算されない >・3種類以上のpowerを1つの空箱に入れる場合の処理 '--------------------------------------------------------------------------------- ▼コピペ用タブ区切り 箱に詰める数 先(power混載) 中(power同一) 後(power混載) power 発注数 口割れ番号 個数 口割れ番号(頭) 口割れ番号(尾) 個数 箱数 口割れ番号 個数 1 20 =IF(E6+K5=27,C5-H5-K5,K5) =IF(I5="",H5="",I5*27) =IF(OR(C5-K5<27),"0",QUOTIENT((C5-K5),27)) =IF(27-E6>C5,C5+E6,27-E6) 2 20 =IF(E7+K6=27,C6-H6-K6,E7+K6) =IF(I6="",H6="",I6*27) =IF(OR(C6-K6<27),"0",QUOTIENT((C6-K6),27)) =IF(27-E7>C6,C6+E7,27-E7) 3 20 =IF(E8+K7=27,C7-H7-K7,E8+K7) =IF(I7="",H7="",I7*27) =IF(OR(C7-K7<27),"0",QUOTIENT((C7-K7),27)) =IF(27-E8>C7,C7+E8,27-E8) 4 0 =IF(E9+K8=27,C8-H8-K8,E9+K8) =IF(I8="",H8="",I8*27) =IF(OR(C8-K8<27),"0",QUOTIENT((C8-K8),27)) =IF(27-E9>C8,C8+E9,27-E9) 5 100 =IF(E10+K9=27,C9-H9-K9,E10+K9) =IF(I9="",H9="",I9*27) =IF(OR(C9-K9<27),"0",QUOTIENT((C9-K9),27)) =IF(27-E10>C9,C9+E10,27-E10) 6 140 =IF(E11+K10=27,C10-H10-K10,E11+K10) =IF(I10="",H10="",I10*27) =IF(OR(C10-K10<27),"0",QUOTIENT((C10-K10),27)) =IF(27-E11>C10,C10+E11,27-E11) 7 180 =IF(E12+K11=27,C11-H11-K11,E12+K11) =IF(I11="",H11="",I11*27) =IF(OR(C11-K11<27),"0",QUOTIENT((C11-K11),27)) =IF(27-E12>C11,C11+E12,27-E12) 8 180 =IF(E13+K12=27,C12-H12-K12,E13+K12) =IF(I12="",H12="",I12*27) =IF(OR(C12-K12<27),"0",QUOTIENT((C12-K12),27)) =IF(27-E13>C12,C12+E13,27-E13) 9 220 =IF(E14+K13=27,C13-H13-K13,E14+K13) =IF(I13="",H13="",I13*27) =IF(OR(C13-K13<27),"0",QUOTIENT((C13-K13),27)) =IF(27-E14>C13,C13+E14,27-E14) 10 230 =IF(E15+K14=27,C14-H14-K14,E15+K14) =IF(I14="",H14="",I14*27) =IF(OR(C14-K14<27),"0",QUOTIENT((C14-K14),27)) =IF(27-E15>C14,C14+E15,27-E15) 11 250 =IF(E16+K15=27,C15-H15-K15,E16+K15) =IF(I15="",H15="",I15*27) =IF(OR(C15-K15<27),"0",QUOTIENT((C15-K15),27)) =IF(27-E16>C15,C15+E16,27-E16) 12 240 =IF(E17+K16=27,C16-H16-K16,E17+K16) =IF(I16="",H16="",I16*27) =IF(OR(C16-K16<27),"0",QUOTIENT((C16-K16),27)) =IF(27-E17>C16,C16+E17,27-E17) 13 280 =IF(E18+K17=27,C17-H17-K17,E18+K17) =IF(I17="",H17="",I17*27) =IF(OR(C17-K17<27),"0",QUOTIENT((C17-K17),27)) =IF(27-E18>C17,C17+E18,27-E18) 14 290 =IF(E19+K18=27,C18-H18-K18,E19+K18) =IF(I18="",H18="",I18*27) =IF(OR(C18-K18<27),"0",QUOTIENT((C18-K18),27)) =IF(27-E19>C18,C18+E19,27-E19) 15 270 =IF(E20+K19=27,C19-H19-K19,E20+K19) =IF(I19="",H19="",I19*27) =IF(OR(C19-K19<27),"0",QUOTIENT((C19-K19),27)) =IF(27-E20>C19,C19+E20,27-E20) 16 230 =IF(E21+K20=27,C20-H20-K20,E21+K20) =IF(I20="",H20="",I20*27) =IF(OR(C20-K20<27),"0",QUOTIENT((C20-K20),27)) =IF(27-E21>C20,C20+E21,27-E21) 17 250 =IF(E22+K21=27,C21-H21-K21,E22+K21) =IF(I21="",H21="",I21*27) =IF(OR(C21-K21<27),"0",QUOTIENT((C21-K21),27)) =IF(27-E22>C21,C21+E22,27-E22) 18 220 =IF(E23+K22=27,C22-H22-K22,E23+K22) =IF(I22="",H22="",I22*27) =IF(OR(C22-K22<27),"0",QUOTIENT((C22-K22),27)) =IF(27-E23>C22,C22+E23,27-E23) 19 1 =IF(E24+K23=27,C23-H23-K23,E24+K23) =IF(I23="",H23="",I23*27) =IF(OR(C23-K23<27),"0",QUOTIENT((C23-K23),27)) =IF(27-E24>C23,C23+E24,27-E24) 20 170 =IF(E25+K24=27,C24-H24-K24,E25+K24) =IF(I24="",H24="",I24*27) =IF(OR(C24-K24<27),"0",QUOTIENT((C24-K24),27)) =IF(27-E25>C24,C24+E25,27-E25) 21 200 =IF(E26+K25=27,C25-H25-K25,E26+K25) =IF(I25="",H25="",I25*27) =IF(OR(C25-K25<27),"0",QUOTIENT((C25-K25),27)) =IF(27-E26>C25,C25+E26,27-E26) 22 160 =IF(E27+K26=27,C26-H26-K26,E27+K26) =IF(I26="",H26="",I26*27) =IF(OR(C26-K26<27),"0",QUOTIENT((C26-K26),27)) =IF(27-E27>C26,C26+E27,27-E27) 23 220 =IF(E28+K27=27,C27-H27-K27,E28+K27) =IF(I27="",H27="",I27*27) =IF(OR(C27-K27<27),"0",QUOTIENT((C27-K27),27)) =IF(27-E28>C27,C27+E28,27-E28) 24 220 =IF(E29+K28=27,C28-H28-K28,E29+K28) =IF(I28="",H28="",I28*27) =IF(OR(C28-K28<27),"0",QUOTIENT((C28-K28),27)) =IF(27-E29>C28,C28+E29,27-E29) 25 180 =IF(E30+K29=27,C29-H29-K29,E30+K29) =IF(I29="",H29="",I29*27) =IF(OR(C29-K29<27),"0",QUOTIENT((C29-K29),27)) =IF(27-E30>C29,C29+E30,27-E30) 26 170 =IF(E31+K30=27,C30-H30-K30,E31+K30) =IF(I30="",H30="",I30*27) =IF(OR(C30-K30<27),"0",QUOTIENT((C30-K30),27)) =IF(27-E31>C30,C30+E31,27-E31) 27 110 =IF(E32+K31=27,C31-H31-K31,E32+K31) =IF(I31="",H31="",I31*27) =IF(OR(C31-K31<27),"0",QUOTIENT((C31-K31),27)) =IF(27-E32>C31,C31+E32,27-E32) 28 80 =IF(E33+K32=27,C32-H32-K32,E33+K32) =IF(I32="",H32="",I32*27) =IF(OR(C32-K32<27),"0",QUOTIENT((C32-K32),27)) =IF(27-E33>C32,C32+E33,27-E33) 29 60 =IF(E34+K33=27,C33-H33-K33,E34+K33) =IF(I33="",H33="",I33*27) =IF(OR(C33-K33<27),"0",QUOTIENT((C33-K33),27)) =IF(27-E34>C33,C33+E34,27-E34) 30 40 =IF(E35+K34=27,C34-H34-K34,E35+K34) =J34-I34 =IF(I34="",H34="",I34*27) =IF(OR(C34-K34<27),"0",QUOTIENT((C34-K34),27)) =D35 =IF(27-E35>C34,C34+E35,27-E35) 31 20 =C37 =C35-H35 =IF(I35="",H35="",I35*27) =IF(OR(C35<27,C35=""),"0",(QUOTIENT(C35,27))) 合計 =SUM(C5:C35) 必要な箱の数 =QUOTIENT(C36,27) 箱から余った数 =MOD(C36,27) (白茶) 2023/11/27(月) 09:24:07 ---- ↑ 補足 > 困ってること >・発注数に0を入力したり > 空箱の残空き数よりも発注数が小さくなると > 関数が崩れてしまい、正しく計算されない >・3種類以上のpowerを1つの空箱に入れる場合の処理 のテキストボックスより問題の箇所(C8、C23、K23)に矢印で示されていました。 (白茶)さんご苦労さんでした。 (IT) 2023/11/27(月) 10:29:17 ---- >・27個入る空箱へ、powerが強いモノから順番に入れて封をしたい 意味が分からないです。 試してみたんですが式の内容がさっぱり理解できませんでした。 (IT) 2023/11/28(火) 12:16:29 ---- Web版ではないExcelでマクロを使うことを推奨します。 制約がきつすぎます。 (xyz) 2023/11/28(火) 13:36:56 ---- コメントありがとうございます、説明不足について申し訳ございません またイメージ図の貼り付け等に感謝いたします >>・27個入る空箱へ、powerが強いモノから順番に入れて封をしたい > 意味が分からないです。 > 試してみたんですが式の内容がさっぱり理解できませんでした。 こちらにつきましては、今回の場合ですと、 power31が20個発注されているものとなりまして、まず、この20個を空箱に移し替えるものとなります 20個を入れた空箱には、残り7個入るスペースがあいておりますので、 次のpower30を入れられる分だけこのスペースに入れて、空箱を満杯にしてから封をしたいと思っている次第です またpower31が27個以上ある場合につきましては、 中(power同一)の欄に、27の倍数事に箱数をカウントをし、溢れた数を 先(power混載)の空箱に送ります さらに、powerが混載する場合には、 例えば、power31が20個、power30が15個としましたら 先(power混載)の縦欄(横軸power31)に20個 後(power混載)の縦欄(横軸power30)に7個 ) という風にしたい次第です >Web版ではないExcelでマクロを使うことを推奨します。 >制約がきつすぎます。 マクロの勉強をしてみます (den) 2023/11/28(火) 21:30:03 ---- 現在のシートからは離れますが、こういうことでしょうか? 優先度は1が最高で、上から順に箱に入れていくようにしています。このほうが<私には>自然だと思われました。) A列 B C D E F G H I J K L M N O P Q R S T U V 1行 優 (A)一括梱包 (B)端数 番号 1 3 8 25 47 55 87 108 127 145 166 175 176 177 先 最初 最後 端数 度 個数 2 1 20 20 20 3 2 40 1 2 13 7 6 4行 3 60 2 4 5 6 6 以 4 80 2 6 7 26 15 11 下 5 110 4 9 12 2 2 略 6 170 6 13 18 8 8 7 180 6 19 24 18 6 12 8 220 8 26 33 4 4 9 220 8 34 41 4 4 10 160 5 42 46 25 7 18 11 200 7 48 54 11 9 2 12 170 6 56 61 8 8 13 1 1 1 14 220 8 62 69 4 4 15 250 9 70 78 7 7 16 230 8 79 86 14 5 9 17 270 10 88 97 0 18 290 10 98 107 20 18 2 19 280 10 109 118 10 10 20 240 8 119 126 24 15 9 21 250 9 128 136 7 7 22 230 8 137 144 14 11 3 23 220 8 146 153 4 4 24 180 6 154 159 18 18 25 180 6 160 165 18 2 16 26 140 5 167 171 5 5 27 100 3 172 174 19 6 13 28 0 0 29 20 20 14 6 30 20 20 20 32行 31 20 20 1 19 33 34 163 35 4401 27 27 27 27 27 27 27 27 27 27 27 27 27 19 36 4771 4771 1. Sheet1に上のA列、B列を配置してください。 2. 下記のマクロを標準モジュールにコピーしてください。 3. mainというマクロを実行すると、数値が表示されるはずです。 ただし、見出し等は手で追加してください。 また、34行目以降の集計行はマクロでは表示されません。(手抜きです) 完成品を提示する積りはなく、こうしたことが可能という例を提示することが目的です。 以下、コードです。 ==== ここから ==== Const limit As Long = 27 '一つの箱に梱包できる材料の個数上限 Dim ws As Worksheet Dim total() As Long Dim powers() As Object Dim addNums() As Object Dim box1() As String Sub main() Dim power& Dim curBox&, curBox2& Dim kosu& Dim bulkBoxes& Dim residual& Dim lastRow&, k& Set ws = Worksheets("Sheet2") lastRow = ws.Cells(Rows.Count, "A").End(xlUp).Row curBox = 1 '一括梱包する現時点の箱の番号 curBox2 = 1 '端数個を入れる現時点の箱の番号 Call init(curBox2) '端数個を入れる場合の情報を設定 For k = 2 To lastRow power = ws.Cells(k, "A") '優先度 kosu = ws.Cells(k, "B") '個数 If kosu > 0 Then If kosu >= limit Then bulkBoxes = Int(kosu / limit) '27個単位の一括梱包の箱個数 Call 一括梱包処理(curBox, curBox2, power, bulkBoxes) residual = kosu Mod limit '27個未満の部分 If residual > 0 Then Call 端数部分処理(curBox, curBox2, power, residual) Else Call 端数部分処理(curBox, curBox2, power, kosu) End If End If Next Call 結果書き込み End Sub Sub init(curBox2) ReDim Preserve total(1 To curBox2) total(curBox2) = 0 ReDim Preserve powers(1 To curBox2) Set powers(curBox2) = CreateObject("System.Collections.ArrayList") ReDim Preserve addNums(1 To curBox2) Set addNums(curBox2) = CreateObject("System.Collections.ArrayList") End Sub Sub 端数部分処理(curBox&, curBox2&, power&, residual&) Dim capacity As Long '梱包可能な余力(個数) capacity = limit - total(curBox2) If residual < capacity Then powers(curBox2).Add power 'どの"優先度"のものを梱包したか addNums(curBox2).Add residual 'その優先度の梱包済み材料の"個数"たち total(curBox2) = total(curBox2) + residual '梱包した材料の"合計個数" Else powers(curBox2).Add power addNums(curBox2).Add capacity total(curBox2) = total(curBox2) + capacity If residual > capacity Then curBox2 = Application.Max(curBox, curBox2) + 1 Call init(curBox2) powers(curBox2).Add power addNums(curBox2).Add (residual - capacity) total(curBox2) = total(curBox2) + residual - capacity End If End If End Sub Sub 一括梱包処理(curBox&, curBox2&, power&, bulkBoxes&) Dim p& Dim firstBox&, lastBox& p = Application.Max(curBox, curBox2) firstBox = p + 1 lastBox = p + bulkBoxes curBox = p + bulkBoxes 'box1: 優先度がpowerの材料を一括梱包した箱の最初と最後( "first,last"の形式) ReDim Preserve box1(1 To power) box1(power) = firstBox & "," & lastBox End Sub Sub 結果書き込み() Dim k&, j&, p&, ary, ary2 With ws '一括梱包した箱に関する情報 For k = 1 To UBound(box1) If box1(k) <> "" Then ary = Split(box1(k), ",") .Cells(k + 1, "D") = ary(1) - ary(0) + 1 '箱の個数 .Cells(k + 1, "E") = ary(0) '箱番号(最初) If ary(1) <> ary(0) Then .Cells(k + 1, "F") = ary(1) '箱番号(最後) End If End If Next '端数部分を梱包した箱に関する情報 p = 8 For k = 1 To UBound(powers) If Not powers(k) Is Nothing Then ary = powers(k).Toarray '箱に梱包された対象の "優先度"たち ary2 = addNums(k).Toarray '箱に梱包された対象の "個数"たち p = p + 1 .Cells(1, p) = k ' "箱番号" For j = 0 To UBound(ary) .Cells(ary(j) + 1, p) = ary2(j) ' 優先度の行に"個数"を埋める Next End If Next End With End Sub ==== ここまで ==== (xyz) 2023/11/29(水) 21:41:31 ---- シートとマクロのご提示ありがとうございます 現在のシートからは離れますが、こういうことでしょうか? 作成いただいたシートですと、 優先度2を6コ 優先度3を6コ 優先度4を15コ をすべて、27個入る箱(番号3)に入れるようにされているとお見受けいたしました こちらの場合ですと、説明が足りないところにご提示まで頂き大変申し訳ないですが、 想定している完成イメージと異なってしまっておりまして、 一括梱包を優先して、27個を空箱へ入れ、余りを別の箱に入れる、のではなく、 前の余りが入っている箱の空きスペースを全て埋めることを優先して個数を消費した次に、 余った個数で可能なら一括梱包をして、余りを次の箱に入れる、としたい所存です 尚、ご提示いただいたコードにつきましてはまだ理解できるスキルを持ち合わせてないため、 少しずつ理解していきたいと思っております。 (den) 2023/12/01(金) 18:12:35 ---- 完成形が今一つクリアにイメージできないですが・・ (1) D5セル =IF(OR(C5=0,E5=0),"",IF(E5=C5,$C$37-INT(M6/27),MIN(F5:G5,J5)-1)) (2) E5セル =IF(C5=0,"",MIN(C5-K5,MOD(M5,27))) (3) F5セル =IF(C5=0,"",IF(I5>1,G5-I5+1,"")) (4) G5セル =IF(OR(C5=0,I5=0),"",IF(K5>0,J5-1,$C$37-INT(M6/27))) (5) H5セル =IF(C5=0,"",C5-E5-K5) (6) I5セル =IF(C5=0,"",H5/27) (7) J5セル =IF(OR(C5=0,K5=0),"",$C$37-INT(M6/27)) (8) K5セル =IF(C5=0,"",IF(MOD(M6,27)=0,0,MIN(C5,27-MOD(M6,27)))) (9) M5セル =SUM(C5:C$35) 上記5行目の数式を34行目までコピー (10) D35セル =IF(OR(C35=0,E35=0),"",IF(C35=E35,C37,MIN(F35:G35,J35)-1)) (11) E35セル =IF(C35=0,"",MIN(C35-K35,MOD(M35,27))) (12) F35セル =IF(C35=0,"",IF(I35>1,G35-I35+1,"")) (13) G35セル =IF(OR(C35=0,H35=0),"",C37) (14) H35セル =IF(C35=0,"",C35-E35-K35) (15) I35セル =IF(C35=0,"",H35/27) (16) M35セル =SUM(C35:C$35) <最終 シート 結果図> 行 _______B_______ ___C___ _____D_____ __E__ ________F________ ________G________ __H__ __I__ _____J_____ __K__ _L_ ___M___ 4 power 発注数 口割れ番号 個数 口割れ番号(頭) 口割れ番号(尾) 個数 箱数 口割れ番号 個数 作業列 5 1 20 0 19 0 0 1 1 4771 6 2 20 0 0 0 1 20 4751 7 3 20 1 6 0 0 2 14 4731 8 4 0 4711 9 5 100 2 13 3 5 81 3 6 6 4711 10 6 140 6 21 7 10 108 4 11 11 4611 11 7 180 11 16 12 17 162 6 18 2 4471 : 22 18 220 108 15 109 115 189 7 116 16 1851 23 19 1 0 0 0 116 1 1631 24 20 170 116 10 117 121 135 5 122 25 1630 : 33 29 60 172 12 173 27 1 174 21 120 34 30 40 174 6 175 27 1 176 7 60 35 31 20 176 20 0 0 20 36 合計 4771 37 必要な箱の数 176 38 箱から余った数 19 (半平太) 2023/12/02(土) 15:34:10 ---- シートと関数のご提示ありがとうございます 早速試してみたところ、こちらのイメージ通りに正常に動作しており感動しています 皆様にご教授頂いた内容には知識不足で理解できていない点が多々ありますが、 シート自体の工夫やマクロの活用など勉強させていただきました つきましては、こちらのシートを活用させていただきたく思いまして、勝手ではございますが この度の質問を解消とさせていただきます 誠にありがとうございました (den) 2023/12/03(日) 21:30:13 ...
http://www.excel.studio-kazu.jp/wiki/kazuwiki/202311/20231126220127.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97019 documents and 608145 words.

訪問者:カウンタValid HTML 4.01 Transitional