[[20160822161838]] 『複雑な計算式を入れたい』(03) ページの最後に飛ぶ

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

 

『複雑な計算式を入れたい』(03)

計算式について以前お伺いしたのですが、
前回の質問の仕方が悪かったですね。申し訳ありません。

出したかったのがEとGの部分の計算式で、取引先1〜4はあくまでも、上記パターンの時は・・・・
E・Gの結果というような一括での式を入れたかったのです。

 A------- B ------ C ---- D ---- E --- F ----- G ----- H-- 
取引先  売金額 仕入金額   調整  支払1  方法1   支払2   方法2 
取引先1  10,000    -----      ---     空欄                →売のみは空欄 

取引先2 -------  20,000   1   19,999  振込           →仕入のみは仕入金額

取引先3 250,000   5,000 ---   5,000  振込           →売>仕入の場合は仕入金額

取引先4  50,000 300,000  ---  50,000  相殺 250,000 手形  →売<仕入の場合は
    1・(E)売の金額

    2・(G)仕入から売を引いた金額 
                                       

何度もすみません。今一度お教え下さい。

< 使用 Excel:Excel2010、使用 OS:Windows8 >


IF関数の中にIF関数、さらにその中にIF関数…
とすれば、簡単でわかりやすいのではないでしょうか。

(マナ) 2016/08/22(月) 20:27


なぜ?

[[20160810151148]] 『複雑な条件の計算式について』(まる)

(マナ) 2016/08/22(月) 20:47


関数はかじり始めなのでいまいちこんがらがってしまい分かりません。
いろんな式を考えながらやっていますがうまくいきません。
何が悪いのかさえ分かりません。

とりあえずやってみたのが下記の式です。
=IF(B2<=C2,C2-B2-D2)*OR(B2>=C2,C2-D2)

取引先1は0
取引先2は19999
取引先4の1番は250000までは出来ましたが
取引先3と取引先4の2番がうまく出ません
式がダメなのかそれとも何か足りないのか分からないのです。
すみませんが、教えて頂けないでしょうか?

(03) 2016/08/23(火) 09:20


ちなみにIFの中にIFを入るという事が分かりません。
どういった形にすればいいのでしょうか?
(03) 2016/08/23(火) 09:23

 こんなのでいいんじゃないですか?

 (1) E2セル =IF(C2="","",IF(B2="",C2-D2,IF(B2>C2,C2-D2,B2)))

 (2) G2セル =IF(C2=SUM(D2:E2),"",C2-B2)

(半平太) 2016/08/23(火) 10:40


回答ありがとうございます。
出来る部分と出来ない部分があるので
なんとなくですが参考にして変えてやってみます。
また分からなかったら教えて下さい。
(03) 2016/08/23(火) 16:16

 >出来ない部分があるので 

 その実データをアップしてもらえば、簡単に解決できますけど。

(半平太) 2016/08/23(火) 16:45


何度もすみません。こんな感じですが分かりますか?
言葉にすると難しいですね。

番号---取引先---売掛--------仕入-----調整額---- 差引支払----支払方法---差引支払----支払方法
4-------A社-----20,000---------------------------------空白---------------------------
117----B社--------------------20,000------1--------19,999---------振込--------------
126----C社-----250,000------5,000------------------5,000--------振込-----------------
152----D社-----100,000----300,000-------------- 100,000 ------相殺--------200,000------振込
153----E社--------------------------------------------------------------------------------
154----F社-------------------35,000---------- --35,000 ------振込------
155----G社-----200,000---1,397,000 ----1----- 200,000 ------相殺------1,196,999-------手形

ちなみに20万以上は手形・それ以下は振込・売りがあれば相殺という事を
支払方法の部分ではVLOOKUPを使って出したいです。
複雑すぎてすみません。


 >支払方法の部分ではVLOOKUPを使って出したいです。

 ・・と言われましても、「別シートに取引先で決まった方法」が書いてある表が
 どうなっているのか説明して貰わないと、なんともならないです。

 取り合えず、

 (1) F2セル =IF(D2="","",IF(C2="",D2-E2,IF(C2>D2,D2-E2,C2)))
 (2) G2セル =IF(ISNUMBER(F2),IF(ISNUMBER(C2),IF(ISNUMBER(H2),"相殺","振込"),"振込"),"")
 (3) H2セル =IF(D2=SUM(E2:F2),"",D2-C2-E2)
 (4) I2セル =IF(ISNUMBER(H2),IF(H2<=200000,"振込","手形"),"")

 <結果図>
  行  __A__  ___B___  ___C___  ____D____  __E__  ___F___  __G__  ____H____  __I__
   1  番号   取引先   売金額   仕入金額   調整   支払1    方法1  支払2      方法2
   2     4   A社      20,000                                                    
   3   117   B社                 20,000     1    19,999  振込                   
   4   126   C社     250,000      5,000           5,000  振込                   
   5   152   D社     100,000    300,000         100,000  相殺     200,000  振込 
   6   153   E社                                                                
   7   154   F社                 35,000          35,000  振込                   
   8   155   G社     200,000  1,397,000     1   200,000  相殺   1,196,999  手形 

(半平太) 2016/08/24(水) 19:09


早々に返事ありがとうございます。
何点か教えて頂きたいのですが、
H(支払2)ですが、#VALUE!が出てしまいます。
IFERRORとかISERRORとか試したのですが出来ませんでした。
あとはどうすれば出ないようになりますか?

方法1ですがVLOOKUPなどと訳の分からないこと言ってですみません。
送った後に失敗したなぁ・・・とは思ってました。
ちなみに、売(と仕入)がある場合は相殺、それ以外で20万以上は手形、それ以下は振込なんです。

(03) 2016/08/25(木) 13:20


ご面倒ついでにもう一つ。
相殺になるもののなかで、もしある会社に売と仕入がたった時
「この会社とこの会社は相殺しない」なんていうことは出来ますか?
(03) 2016/08/25(木) 13:28

 > H(支払2)ですが、#VALUE!が出てしまいます。 

 結果図のどの会社でそのエラーが出ていますか?

 ※結果図とは関係のない会社のデータで出ているのでしたら、
 そのデータをここにアップしてください。

 >方法1ですがVLOOKUPなどと訳の分からないこと言ってですみません。 
 >送った後に失敗したなぁ・・・とは思ってました。 
 >ちなみに、売(と仕入)がある場合は相殺、それ以外で20万以上は手形、それ以下は振込なんです。 

 そちらのサンプルでは、C社は売(と仕入)ですけど、振込になっていますよ。
 サンプルが間違っていたんですか?

 よく分からないので、上の条件に合うサンプルを全部作って、ここにアップしてください。

 >相殺になるもののなかで、もしある会社に売と仕入がたった時 
 >「この会社とこの会社は相殺しない」なんていうことは出来ますか?

 出来ますけど、その判断の元になるデータは、どこにどう書かれているんですか? 
 それこそ、Vlookupの出番になると思います。

(半平太) 2016/08/25(木) 17:13


お久しぶりです。ご連絡遅くなり申し訳ありません。
一応、データと教えて頂いた関数を入れて出た結果とこう表記したいといったものを出してみました。
データが多すぎて分かりづらいかもしれませんが、宜しくお願い致します。

Sheet1
番号 取引先 売掛 仕入 差額 支払1 支払1訂正 方法1 方法1訂正 支払2 支払2訂正 方法2 方法2訂正
4 A  社 18144 18,144 振込 #VALUE! →表示しない 【仕入のみ】 仕入金額
117 B  社 20196 #VALUE! →表示しない 【売りのみ】 表示しない
155 C  社 860922 860,922 振込 #VALUE! 表示しない 【仕入のみ】 本来手形だがこの仕入先は必ず振込
436 H  社 248184 248,184 振込 →手形 #VALUE! →表示しない 【仕入のみ】 20万以上なので手形
562 L  社 215605 2723458 215605 →相殺 2507853 手形 【売<仕入】 売金額(相殺)、残りは20万以上(手形)
5317 BA  社 36636 41040 36636 →相殺(領収注意) 4404 振込 【売<仕入】 売金額(相殺)、残りは20未満(振込)ここだけ注意事項あり
7551 BJ  社 108072 292091 108072 相殺 184019 振込 【売<仕入】 売金額(相殺)、残りは20未満(振込)
2502 AI  社 1180051 18120 1180051 →18120 →相殺しない -1161931 →表示しない 振込 →表示しない 【売>仕入】 仕入金額(相殺)だがこの仕入先は相殺しない
9150 BL  社 680348 32659 1 32,658 振込 →相殺 -647690 →表示しない 振込 →表示しない 【売>仕入】 仕入金額(相殺)

Sheet2
番号 取引先 支払方法
155 C  社 振込
361 aaa 社 電債
515 J  社 相殺しない
1158 O  社 相殺しない
1259 bbb 社 手形
1404 W  社 振込
1522 X  社 振込
1532 Y  社 相殺しない
2253 AC  社 手形
2502 AI  社 相殺しない
5112 AZ  社 相殺しない
5317 BA  社 相殺(領収注意)
5501 ccc 社 相殺(領収注意)
6552 BH  社 相殺しない
8205 BK  社 相殺しない
※支払金額が20万未満は振込、20万以上は手形なのですが、上記の得意先に関しては
相殺しないや、通常手形なのに20万以上でも振込といった支払方法がきまった先です。

支払金額は計算・方法は式とSheet2からの読込にしたらいいのでしょうか?
何回もいろんな方法で試したのですが、訳がわからなくなり一向に解決しません。
どうか宜しくお願い致します。

(03) 2016/09/09(金) 14:24


 (1) F2セル =IF(ISNUMBER(C2),IF(ISNUMBER(D2),IF(C2>D2-E2,D2-E2,C2),""),IF(ISNUMBER(D2),D2-E2,""))

 (2) G2セル =IF(ISNUMBER(C2),IF(ISNUMBER(D2),IF(IFERROR(VLOOKUP(A2,Sheet2!$A:$C,3,FALSE),"")<>"",IFERROR(VLOOKUP(A2,Sheet2!$A:$C,3,FALSE),""),"相殺"),""),IF(ISNUMBER(D2),IF(IFERROR(VLOOKUP(A2,Sheet2!$A:$C,3,FALSE),"")<>"",IFERROR(VLOOKUP(A2,Sheet2!$A:$C,3,FALSE),""),IF(F2>=200000,"手形","振込")),""))

 (3) H2セル =IF(AND(COUNT(C2:D2)=2,D2>C2),D2-E2-C2,"")

 (4) I2セル =IF(ISNUMBER(H2),IF(H2<=200000,"振込","手形"),"")

 <Sheet1 結果図>
  行  __A__  ___B___  ____C____  ____D____  __E__  ___F___  ________G________  ____H____  __I__
   1  番号   取引先   売金額     仕入金額   差額   支払1    方法1              支払2      方法2
   2      4  A  社                18,144          18,144  振込                               
   3    117  B  社      20,196                                                                
   4    155  C  社                860,922         860,922  振込                               
   5    436  H  社                248,184         248,184  手形                               
   6    562  L  社     215,605  2,723,458         215,605  相殺               2,507,853  手形 
   7  5,317  BA  社     36,636     41,040          36,636  相殺(領収注意)       4,404  振込 
   8  7,551  BJ  社    108,072    292,091         108,072  相殺                 184,019  振込 
   9   2502  AI  社  1,180,051     18,120          18,120  相殺しない                         
  10   9150  BL  社    680,348     32,659     1    32,658  相殺                               

(半平太) 2016/09/09(金) 17:27


早速ありがとうございました。
やってみたのですが、ちょっとうまくできませんでした。
もう一度自分なりに考えてみます。
また分からないことがありましたら教えて下さい。
非常に面倒な質問なのに一生懸命答えて頂いてありがとうございました。

(03) 2016/09/12(月) 14:27


 >やってみたのですが、ちょっとうまくできませんでした。

 うまく出来ないというサンプルデータをアップしてください。

 私がアップしたサンプルでもうまくいってないなら、
 何行目の分がダメなのか書いてください (正解が何なのかも付記要)。

(半平太) 2016/09/12(月) 15:33


コメント返信:

[ 一覧(最新更新順) ]


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