標題:
[發問]
三個值之間的>或=或<的排列組合
[打印本頁]
作者:
papaya
時間:
2018-2-18 19:33
標題:
三個值之間的>或=或<的排列組合
祝福各位大大︰新春快樂!
[attach]28378[/attach]
假設有三個值︰A,B,C
將三個值之間的"大於"或"等於"或"小於"的排列組合(重複的組合,則取其1個組合)表列於A欄。
EX:
A1= A>B,A>C,B>C
A2= A>B,A>C,B=C
A3= A>B,A>C,B<C
其餘......以此類推
請問︰VBA的語法編寫。謝謝!
作者:
papaya
時間:
2018-2-18 21:59
備註:
A,B,C都是>0的整數。謝謝!
作者:
jackyq
時間:
2018-2-21 10:12
回復
2#
papaya
假設 A=1 , B=2, C=3
最後的輸出結果
你到底是要
(1)
A1= A>B,A>C,B>C
A2= A>B,A>C,B=C
A3= A>B,A>C,B<C
還是
(2)
A1= A<B,A<C,B<C
還是
(3)
A1= 1<2,1<3,2<3
作者:
hcm19522
時間:
2018-2-21 17:02
http://blog.xuite.net/hcm19522/twblog/566920733
作者:
papaya
時間:
2018-2-21 20:31
本帖最後由 papaya 於 2018-2-21 20:43 編輯
回復
3#
jackyq
j大:新春快樂!
希望最後的輸出結果是:
(1)
A1= A>B,A>C,B>C
A2= A>B,A>C,B=C
A3= A>B,A>C,B<C
重複的組合,則取其1個組合,則共有3*3*3=27組
但不成立的不列出
EX:
A>B,A=C,B>C
A>B,A=C,B=C
勞駕幫忙!謝謝您!
作者:
papaya
時間:
2018-2-21 20:55
本帖最後由 papaya 於 2018-2-21 20:56 編輯
回復
4#
hcm19522
j大:新春快樂!
感謝您的函數解^^
請問:
1_
2007版的IFERROR函數要如何改成2003版的ISNA來應用
2_
A,B,C"三者之間的>"或"="或"<"有衝突的(即不能成立)組合,不列出時~
EX:
B4的A>B,A=C,B>C
B5的A>B,A=C,B=C
B7的A>B,A<C,B>C
B8的A>B,A<C,B=C
:
:
公式要如何修正?
勞駕再賜正!
謝謝您!
作者:
jackyq
時間:
2018-2-21 22:33
回復
6#
papaya
終於看懂你要幹麻
作者:
jackyq
時間:
2018-2-21 22:44
Public Sub 最簡單法___________試誤()
ABC = Split("A>B,A>C,B>C", ">")
運算子 = Split(">,=,<", ",")
ABC_Count = UBound(ABC) - LBound(ABC) + 1
運算子_Count = UBound(運算子) - LBound(運算子) + 1
Set VBScript = CreateObject("MSScriptControl.ScriptControl")
VBScript.Language = "VBScript"
Cells.Clear
For k1 = LBound(運算子) To UBound(運算子)
For k2 = LBound(運算子) To UBound(運算子)
For k3 = LBound(運算子) To UBound(運算子)
For value_try1 = 1 To ABC_Count
For value_try2 = 1 To ABC_Count
For value_try3 = 1 To ABC_Count
s = value_try1 & 運算子(k1) & value_try2 & " AND " & _
value_try1 & 運算子(k2) & value_try3 & " AND " & _
value_try2 & 運算子(k3) & value_try3 _
If VBScript.Eval(s) Then
rr = rr + 1
Cells(rr, 1) = ABC(0) + 運算子(k1) + _
ABC(1) + 運算子(k2) + _
ABC(2) + 運算子(k3) + _
ABC(3)
value_try1 = ABC_Count
value_try2 = ABC_Count
value_try3 = ABC_Count
End If
Next
Next
Next
Next
Next
Next
End Sub
作者:
papaya
時間:
2018-2-22 16:39
回復
4#
hcm19522
h大:新春快樂!
感謝您的函數解^^
請問:
方式二C1:C28=IF(ROW(A1)>27,"","A"&MID(">=<",INT(ROW(A9)/9),1)&"B,A"&MID(">=<",MOD(INT(ROW(A3)/3)-1,3)+1,1)&"C,B"&MID(">=<",MOD(ROW(A1)-1,3)+1,1)&"C")
A,B,C"三者之間的>"或"="或"<"有衝突的(即不能成立)組合,不列出時~
EX:
B4的A>B,A=C,B>C
B5的A>B,A=C,B=C
B7的A>B,A<C,B>C
B8的A>B,A<C,B=C
:
:
公式要如何修正?
勞駕再賜正!
謝謝您!
作者:
papaya
時間:
2018-2-22 16:46
回復
8#
jackyq
j大:
感謝您的程式解^^
測試後~答案完全正確~感恩^^
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)