Board logo

標題: [發問] 函數公式除錯的問題。 [打印本頁]

作者: Airman    時間: 2015-11-15 04:20     標題: 函數公式除錯的問題。

參考附件︰http://www.FunP.Net/646210

名稱定義︰
R_R=$R7; T_3=T$3; T_5=T$5; X=$R7+T$3; Y=T$5-$R7; Z =MOD(T$5+Y,$R$6)

A_1
=OR($R7="",T$5="",$R7>=T$5,$R7+T$3=T$5-$R7,T$5=$R7+T$3)
A_2
=OR($R7="",T$5="",$R7>=T$5,$R7+T$3=T$5-$R7,T$5<>$R7+T$3)
B_1
=MOD(T$3,Y)=0
C_1
T$5=$R7+T$3
C_2
T$5<>$R7+T$3
G_1
=OR($R7="",T$5="",$R7>=T$5,$R7+T$3=T$5-$R7,MOD(T$3,Y)<>0,T$5=$R7+T$3)
G_2
=OR($R7="",T$5="",$R7>=T$5,$R7+T$3=T$5-$R7,MOD(T$3,Y)<>0,T$5<>$R7+T$3)
R_Y
=OR($R$5=OFFSET($I$6,Y,1,,7))
S_1
=OR(SUM(($R$5=OFFSET($I$6,T$5,1,,7))*OFFSET($I$6,$R7,1,,7))=OFFSET($I$6,X,1,,7))
S_2
=OR(SUM(($R$5=OFFSET($I$6,T$5,1,,7))*OFFSET($I$6,Z,1,,7))=OFFSET($I$6,Y,1,,7))

說明︰
Sheet1!T7
=IF(G_1,"",IF(S_1*S_2,Y,""))
當R7=空白或T5=空白或R7大於等於T5或R7+T3=T5-R7或T3除以Y的餘數不等於0或T5等於R7+T3時,T7顯示空白;
又當T5期數的$R$5值(EX:K97=11),其在R7期數的對應值(EX:K94=26)有顯示在R7+T3期數(EX:N103=26)
T5期數的$R$5值(EX:K97=11),其在T5+Y期數的對應值(EX:K100=04)有顯示在T5-R7期數(EX:K9=04)時~
則T7顯示Y(T5-R7)值(EX:T94=3),否則顯示空白。

Sheet2!T7
=IF(G_2,"",IF(S_1*R_Y,Y,""))
當R7=空白或T5=空白或R7大於等於T5或R7+T3=T5-R7或T3除以Y的餘數不等於0或T5不等於R7+T3時,T7顯示空白;
又當T5期數的$R$5值(EX:K97=11),其在R7期數的對應值(EX:K88=23)有顯示在R7+T3期數(EX:N97=23)
T5期數的$R$5值有顯示在T5-R7期數(EX:L15=11)時~
則T7顯示Y(T5-R7)值(EX:T88=9),否則顯示空白。


上述2個公式經測試後︰
其中的G_1G_2當R7大於等於T5則顯示空白,會MOD(T$3,Y)<>0失效(EX:T97=#DIV/0!),
所以,只好將其拆解為~
Sheet1-1!T7
=IF(A_1,"",IF(B_1*S_1*S_2,Y,""))
Sheet2-1!T7
=IF(A_2,"",IF(B_1*S_1*R_Y,Y,""))

需求︰
1.請教G_1G_2更理想的寫法。
2.請將二式公式合併為一式(請儘量簡化)

以上  懇請各位先進、前輩不吝賜教!  謝謝!
作者: 准提部林    時間: 2015-11-15 17:41

G_1:=OR($R7="",T$5="",$R7>=T$5,$R7+T$3=T$5-$R7,ISERR(0/(MOD(T$3,Y)=0)))
G_2:=1+(T$5<>$R7+T$3)

T7公式:=IF(G_1,"",IF(S_1*IF(G_2=2,S_2,R_Y),Y,""))
作者: Airman    時間: 2015-11-15 18:21

回復 2# 准提部林

准大:
測試OK了!謝謝您

另外~
請教您:
G_2:
=1+(T$5<>$R7+T$3)
這個1是代表什麼意義?
敬請指導~感恩!
作者: Airman    時間: 2015-11-15 18:43

回復 2# 准提部林
准大:
抱歉!再請教您:
T7公式:=
IF(G_1,"",IF(S_1*IF(G_2=2,S_2,R_Y),Y,""))
這個2又是代表什麼意義?
敬請指導~感恩
作者: 准提部林    時間: 2015-11-15 18:44

本帖最後由 准提部林 於 2015-11-15 18:49 編輯

回復 3# Airman


∼∼=1+(T$5<>$R7+T$3)
  這個1是代表什麼意義?

 
沒意義,只是將狀況判斷以1及2表示(G_2不是1,就是2)
=N(T$5<>$R7+T$3) 則將狀況判斷以0及1表示

或直接:
=T$5<>$R7+T$3 則將狀況判斷以False及True表示
作者: Airman    時間: 2015-11-15 18:54

回復 5# 准提部林

准大:
謝謝您的解說~明白了

原本是小弟有想到這個說法,但想說沒有 If;
現在經您解說確定後,也瞭解G2=2的用意。
再次謝謝您的耐心~感恩
作者: cmlo    時間: 2015-11-17 17:04

感謝分享,正好有需求




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)