返回列表 上一主題 發帖

[發問] 搜尋最後一列都有相同數字的組合。

回復 23# c_c_lai
再稍作補充︰
1_所有InputBox裡的數字,都是以人工鍵入。

2_A基準組合和B基準組合和A基準組合*B基準組合的各驗證版之最後一列(即Nrange期數的各對應期數),都必須有顯示相同的指定號碼時,才會成立效果檔案(其內只有一個工作表︰Sheet1)。

3_因為是A基準組合和B基準組合和A基準組合*B基準組合各依據邏輯篩選符合條件的驗證版組合,所以RrngA;CrngA;RrngB;CrngB的InputBox,如果有設計不當或不足的地方~~
尚請您不吝指正。謝謝您!

TOP

本帖最後由 ziv976688 於 2017-1-11 19:56 編輯

回復 23# c_c_lai
Exposition(0111).rar (6.8 KB)
我想您是誤將基準組合和驗證版組合視為同一個標的了^^

填入RrngA InputBox裡的期數,都是指基準期數A
填入CrngA InputBox裡的欄位數,都是指基準期數A的欄位個數
請參考10#的說明。

所以︰RrngA=21-24  ;  CrngA=1-2
意指
第21期的任取1欄和任取2欄的A基準組合
第22期的任取1欄和任取2欄的A基準組合
第23期的任取1欄和任取2欄的A基準組合
第24期的任取1欄和任取2欄的A基準組合
即每單期有7+21=28個基準組合

因此也可以取RrngA=24期的CrngA=1之 D欄(=21)為A基準組合,
然後~
往上搜尋第一次D欄=21的期數(=第22期)為第1個驗證版;接著以22+(Nrange-RrngA)=第26期(開03,11,42,45,46,49,21)

然後~
再往上搜尋第二次D欄=21的期數(=第20期)為第2個驗證版;接著以20+(Nrange-RrngA)=第24期(開11,17,21,26,43,49,03)

此時,因為二次的驗證版都有出現相同的指定號碼=03,11,21,49,所以A基準組合的驗證版符合Ncount=2

同理
RrngB=18-21  ;  CrngB=1-2
意指
第18期的任取1欄和任取2欄的B基準組合
第19期的任取1欄和任取2欄的B基準組合
第20期的任取1欄和任取2欄的B基準組合
第21期的任取1欄和任取2欄的B基準組合
即每單期有7+21=28個基準組合

因此也可以取RrngB=19期的CrngB=1之D欄(=17)為B基準組合,
然後~
往上搜尋第一次D欄(=17)的期數(=第17期)為第1個驗證版;接著以17+(Nrange-RrngB)=第26期(開03,11,42,45,46,49,21)

然後~
再往上搜尋第二次D欄(=17)的期數(=第15期)為第2個驗證版;接著以15+(Nrange-RrngB)=第24期(開11,17,21,26,43,49,03)

此時,因為二次的驗證版都有出現相同的指定號碼=03,11,21,49,所以B組合的驗證版符合Ncount=2


最後再以上述的A&B基準組合~以同樣邏輯搜尋A基準組合*B基準組合的Ncount=2的驗證版組合~~
上述的A基準組合*B基準組合=24期的D欄(=21)*其上5期=19期的D欄(=17)
則由24期
往上搜尋第一次D欄(=21)且其上5期的D欄(=17)之期數(=第22期和17其)為第1個驗證版;接著以22+(Nrange-RrngA)=第26期(開03,11,42,45,46,49,21)
然後~
再往上搜尋第二次D欄(=21)且其上5期的D欄(=17)之期數(=第20期和15期)為第2個驗證版;接著以20+(Nrange-RrngA)=第24期(開11,17,21,26,43,49,03)

此時,因為二次的驗證版都有出現相同的指定號碼=03,11,21,49,所以A基準組合*B基準組合的驗證版符合Ncount=2

當Nrange(=28)>RrngA(=24)> RrngB(=19);CrngA=1;CrngB=1; Ncount=2;
其A基準組合的驗證版和B基準組合的驗證版和A基準組合*B基準組合的驗證版,
都有相同的指定號碼時,則產生效果檔案~~
名稱︰I_28期_15_24-3+19-3_2次_03,11,21,49
工作表(Sheet1)的內容與格式,不再贅述。
======================================================================
釐清基準組合和驗證版的分別及驗證版的搜尋邏輯後,其餘的就是剩下~~
總資料夾,子資料夾,效果檔案等名稱的建立︰

資料夾和檔案名稱不能包含*字元,所以改為+代替)
總資料夾︰I_Nrange期_NUM_ RrngA _ CrngA星+RrngA _ CrngA星_ Ncount次_ Number

分資料夾名稱︰(EX︰本新增範例所存放位置的子資料夾)︰I_28期_15_24-1星+19-1星_2次_ Number

效果檔案︰(EX︰本新增範例)I_28期_15_24-3+19-3_2次_03,11,21,49   
PS︰效果檔案名稱中的XX-3+XX-3;其3為欄位順序。
EX︰B欄=1,C欄=2,D欄=3,E欄=4, F欄=5,G欄=6,H欄=7
    B&C欄=12,B&D欄=13,D&E欄=34,E&H欄=47;B&F&H欄=157,...其餘類推

Exposition(0111).rar (7.11 KB)

TOP

回復 22# ziv976688
不好意思,樓上的疑問,尚未明確解答。
A.  第18期 = 18      12   15   21   23   30   48   26
    為何是取第五位 (F欄) 的 30, 而非其他數據?
    同樣的,
    第21期 = 21      01   02   11   26   38   43   04
    為何要取 01,02, 而非其他數據?

    P.S.  非以肉眼來判斷,應以一合理程式邏輯來做判斷。
   
B.  RrngA到Nrange=21期到28期=Nrange-RrngA=7  (28 - 21 = 7)
    7 是指 基準列A 的期數到 Nrange 期數的期距。
    所以其驗證版同樣是 往下7期 來對應。

    NUM=XX~~是指定期距期數。
    當NUM=15;即是效果檔案Sheet1!A7:H22=DATA!A&Nrange-NUM+1:H&Nrange+1
   
    B1.  其中, A7:H22 是根據甚麼而來?
    B2.  A&Nrange (28) - NUM (15) + 1 : H&Nrange (28) + 1, 即 A14:H29 ?

C.  "其上3期" 其中的 3 是 "固定值" 嗎?
    如是,那在何處定義?

    接下來, 當期 (17期) 第一位 (B欄) 出01, 第二位 (C欄) 出02;其上3期 (14期) 第五位 (F欄)
    出30=A*B基準組合第1個驗證版=17-12+14-5

    根據甚麼定義,為何又指向 17期 (RrngA = "21-24",RrngB = "18-21")?
    往下之 (14期)、(5期) 亦同此問。
    又、此處 17-12+14-5 的含意是?

TOP

回復 21# c_c_lai
A.
第21期 = RrngA ;01,02 = CrngA=2 (欄)
    在此之 01,02 = CrngA=2 (欄)

CrngA=1-2意指在基準列A的7欄中任取1欄和7欄任取2欄;所以本例就是在基準列A(=21期)取B欄=01和C欄=02;合為"基準A組合"。
然後往上搜尋第一次同樣是B欄=01和C欄=02的期數為第1個A組合驗證版;第二次同樣是B欄=01和C欄=02的期數為第2個A組合驗證版;其餘...以此類推。

同理
    RrngB = "18-21" 指的是 第18期到第21期之期數,此項亦已無庸置疑。
    CrngB = "1-2", 但是你的說明
    第18期 = RrngB ;30 = CrngB=1 (欄)

30 是根據甚麼數據出線的,在你指定的 Number = "3,11,21-26,43,49" 中並不存在 30 這數字?
同理
在基準列B的7欄中任取1欄;本例就是基準列B(=18期)取F欄=30;合為"基準B組合"。
然後往上搜尋第一次同樣是F欄=30的期數為第1個B組合驗證版;第二次同樣是F欄=30的期數為第2個B組合驗證版;其餘...以此類推。
同理
基準A組合*基準B組合=(第21期的B欄=01和C欄=02)*(=18期的F欄=30)
然後往上搜尋第一次同樣是B欄=01和C欄=02的期數且其上3期的F欄=30為第1個A*B組合驗證版;
第二次同樣是B欄=01和C欄=02的期數且其上3期的F欄=30為第2個A*B組合驗證版;其餘...以此類推。

30 這數字和指定的 Number = "3,11,21-26,43,49" 無關。

B.  RrngA到Nrange=21期到28期=Nrange-RrngA=7 這個與 NUM=15 ~~ :
    將DATA!的(Nrange-NUM)到Nrange的A︰H開獎版期數複製貼上Sheet1!A7 的表達有何不同?

RrngA到Nrange=21期到28期=Nrange-RrngA=7
7是指基準列A的期數到Nrange期數的期距。
所以其驗證版同樣是往下7期來對應。

NUM=XX~~是指定期距期數。
當NUM=15;即是效果檔案Sheet1!A7:H22=DATA!A&Nrange-NUM+1:H&Nrange+1

C.  接下來, 當期 (17期) 第一位 (B欄) 出01, 第二位 (C欄) 出02;其上3期 (14期) 第五位 (F欄)
    出30=A*B基準組合第1個驗證版=17-12+14-5

請參考上述的基準A組合*基準B組合與其驗證版的搜尋邏輯。

TOP

回復 20# ziv976688
請問:
A.  RrngA = "21-24" 指的是 第21期到第24期期數,此項已無庸置疑。
    CrngA = "1-2"
       (請輸入各"第一個"比對的7欄取任1~6之欄位數", "輸入欄位數(1~6)")
    目前之輸入值為 "1-2", 而你的
    第21期 = RrngA ;01,02 = CrngA=2 (欄)
    在此之 01,02 = CrngA=2 (欄) 指的是 01 (B欄位值),02 (C欄位值)
    總共有兩個欄位? 為何要取 01,02? 是因為 CrngA 指定 "1-2" ("B"、"C"欄)?
    同理
    RrngB = "18-21" 指的是 第18期到第21期之期數,此項亦已無庸置疑。
    CrngB = "1-2", 但是你的說明
    第18期 = RrngB ;30 = CrngB=1 (欄)
    18      12   15   21   23   30   48   26
    為何是取第五位 (F欄) 的 30, 且指定之 CrngB=1 ? 而你的說明是
    所以~ A基準組合*B基準組合 = 當期 (21期) 第一位 (B欄) 出 01, 第二位 (C欄)出 02;
    其上3期 (18期) 第五位 (F欄) 出 30 ?  
    30 是根據甚麼數據出線的,在你指定的 Number = "3,11,21-26,43,49" 中並不存在 30 這數字?
B.  RrngA到Nrange=21期到28期=Nrange-RrngA=7 這個與 NUM=15 ~~ :
    將DATA!的(Nrange-NUM)到Nrange的A︰H開獎版期數複製貼上Sheet1!A7 的表達有何不同?
C.  接下來, 當期 (17期) 第一位 (B欄) 出01, 第二位 (C欄) 出02;其上3期 (14期) 第五位 (F欄)
    出30=A*B基準組合第1個驗證版=17-12+14-5
    為何又指向 17期 (RrngA = "21-24",RrngB = "18-21")? "其上3期" 其中的 3 是 "固定值" 嗎?
    如是,那在何處定義? 又、此處 17-12+14-5 的含意是? 往下之 (14期)、(5期) 亦同此問。

謝謝你的耐心回覆!

TOP

本帖最後由 ziv976688 於 2017-1-10 21:52 編輯

回復 19# c_c_lai
    StrRng = "1" ' InputBox("請輸入DATA!各搜尋比對的起始期數", "輸入期數")
    Nrange = "28" ' InputBox("請輸入DATA!各搜尋比對的迄止(開獎)期數", "輸入期數")
    num = "15" 'InputBox("請輸入效果檔A︰H複製範圍的期距數", "輸入距期數")
    RrngA = "21-24" 'InputBox("請輸入各"第一個"比對的"基準期數A", "輸入第一個期數")
    CrngA = "1-2" 'InputBox("請輸入各"第一個"比對的7欄取任1~6之欄位數", "輸入欄位數(1~6)")
    RrngB = "18-21" 'InputBox("請輸入各"第二個"比對的"基準期數B", "輸入第二個期數")
    CrngB = "1-2" 'InputBox("請輸入各"第二個"比對的7欄取任1~6之欄位數", "輸入欄位數(1~6))
    Order = "" 'InputBox("請輸入再篩選邏輯條件的起迄序號", "輸入序號(1~99)或不增加(按Enter)")
    Number = "3,11,21-26,43,49" 'InputBox("請輸入各指定的號碼", "輸入號碼(1~49)")
    Ncount = "2-3" ' InputBox("請輸入驗證版的連續次數", "輸入次數(2~10)")
綠字為各InputBox內,可填入的數字範圍和其填入的數字所代表意義~請參考。

NUM=15~~其作用如下:
將DATA!的(Nrange-NUM)到Nrange的A︰H開獎版期數複製貼上Sheet1!A7

第21期= RrngA    ;01,02= CrngA=2(欄)
第18期= RrngB    ;30= CrngB=1(欄)
所以~A基準組合*B基準組合=當期(21期)第一位(B欄)出01,第二位(C欄)出02;其上3期(18期)第五位(F欄)出30=21-12*18-5=21-12+18-5(檔案名稱不能包含*字元,以+代替)
P.S.RrngA到Nrange=21期到28期=Nrange-RrngA=7

當期(17期)第一位(B欄)出01,第二位(C欄)出02;其上3期(14期)第五位(F欄)出30=A*B基準組合第1個驗證版=17-12+14-5
P.S.17+7=24期;有開11,26

當期(14期)第一位(B欄)出01,第二位(C欄)出02;其上3期(11期)第五位(F欄)出30=A*B基準組合第2個驗證版=14-12+11-5
P.S.14+7=21期;有開11,26

當期(5期)第一位(B欄)出01,第二位(C欄)出02;其上3期(2期)第五位(F欄)出30=A*B基準組合第3個驗證版=5-12+2-5
P.S.5+7=12期;有開11,26

因此 :A基準組合*B基準組合成立。

19#是"圖示3"
請比對"開獎版&3個 組合的驗證版拉平圖說"
A︰H & BE︰CB  就很清楚了

TOP

回復 18# ziv976688
舉個圖例

TOP

本帖最後由 ziv976688 於 2017-1-10 17:28 編輯

回復 17# c_c_lai
5,6,7都含有 第 2 組、以及 第 3 組~~所以是第2組(Ncount=2)比對一次;第3組(Ncount=3)另外再比對一次^^"

或者改成這樣您比較清楚~~
5
StrRng = "1"
    Nrange = "28"
    num = "15"
    RrngA = "21"
    CrngA = "2"
    RrngB = ""
    CrngB = ""
    Order = ""
    Number = "11,26,43"
    Ncount = "2-3"

6
StrRng = "1"
    Nrange = "28"
    num = "15"
    RrngA = ""
    CrngA = ""
    RrngB = "18"
    CrngB = "1"
    Order = ""
    Number = "11"
    Ncount = "2-3"

7
StrRng = "1"
    Nrange = "28"
    num = "15"
    RrngA = "21"
    CrngA = "2"
    RrngB = "18"
    CrngB = "1"
    Order = ""
    Number = "11,26"
    Ncount = "2-3"

TOP

回復 16# ziv976688
謝謝你的說明,但是 5,6,7 三個圖示中
都含有 第 2 組、以及 第 3 組 呢!

TOP

本帖最後由 ziv976688 於 2017-1-10 15:42 編輯

回復 15# c_c_lai
1
StrRng = "1"
    Nrange = "28"
    num = "15"
    RrngA = "24"
    CrngA = "1"
    RrngB = ""
    CrngB = ""
    Order = ""
    Number = "3,11,21,49"
    Ncount = "2"

2
StrRng = "1"
    Nrange = "28"
    num = "15"
    RrngA = "21"
    CrngA = "2"
    RrngB = ""
    CrngB = ""
    Order = ""
    Number = "11,26,43"
    Ncount = "2"

3
StrRng = "1"
    Nrange = "28"
    num = "15"
    RrngA = ""
    CrngA = ""
    RrngB = "18"
    CrngB = "1"
    Order = ""
    Number = "3,11,21,49"
    Ncount = "2-3"

4
StrRng = "1"
    Nrange = "28"
    num = "15"
    RrngA = "24"
    CrngA = "2"
    RrngB = "18"
    CrngB = "1"
    Order = ""
    Number = "11,26,43"
    Ncount = "2"

5
StrRng = "1"
    Nrange = "28"
    num = "15"
    RrngA = "21"
    CrngA = "2"
    RrngB = ""
    CrngB = ""
    Order = ""
    Number = "11,26,43"
    Ncount = "3"

6
StrRng = "1"
    Nrange = "28"
    num = "15"
    RrngA = ""
    CrngA = ""
    RrngB = "18"
    CrngB = "1"
    Order = ""
    Number = "11"
    Ncount = "3"

7
StrRng = "1"
    Nrange = "28"
    num = "15"
    RrngA = "21"
    CrngA = "2"
    RrngB = "18"
    CrngB = "1"
    Order = ""
    Number = "11,26"
    Ncount = "3"

8
StrRng = "1"
    Nrange = "28"
    num = "15"
    RrngA = "23"
    CrngA = "1"
    RrngB = ""
    CrngB = ""
    Order = ""
    Number = "11,26,43"
    Ncount = "2"

以上1-8都包含在~~
StrRng = "1"
    Nrange = "28"
    num = "15"
    RrngA = "21-24"
    CrngA = "1-2"
    RrngB = "18-21"
    CrngB = "1-2"
    Order = ""
    Number = "3,11,21-26,43,49"
    Ncount = "2-3"

TOP

        靜思自在 : 人事的艱難與琢磨,就是一種考驗。
返回列表 上一主題