✔ 最佳答案
如你上面的描述,你對表格公式應該有點心得。
既然這樣,我會介紹你用公式處理就可以做到。
首先你要設定另一頁有齊210組顏色與圖組號碼配對的碼表(假設放在Sheet2)。
假設碼表第一欄在Column A開始,碼表設定如下:
A1 = 黃,籃,籃,灰,綠,粉
A2 = 黃,籃,灰,灰,綠,粉
A3 = 籃,籃,灰,灰,綠,粉
...
A28 = 灰,灰,綠,粉,粉,粉
...
B1 = 1號圖組
B2 = 2號圖組
B3 = 3號圖組
...
B28 = 28號圖組
...
當設定好碼表後,你可在你輸入數字得到顏色的文件上,再將六個顏色用文字連結方式(假設六個顏色是分別放在A1, B1, C1, D1, E1, F1,可用公式"=A1&B1&C1&D1&E1&F1"得到。)
當砌好這組字之後(假設在G1),可用公式"=VLOOKUP(G1,Sheet2!$A$1:$B$210,2,false)就可以得到你要的結果。
Sheet2!$A$1:$B$210是上面假設碼表放的位置。
但這個方法要留意的是210組的顏色組合不能有相同的情況,否則VLOOKUP只會給你第一個找到的圖組號碼。
2014-09-14 17:08:25 補充:
如果你仍然想用VBA做,請相告之。
2014-09-23 17:16:54 補充:
對唔住,我估大家都以為你講緊係有個文字叫做乜色,而唔知係個格的底色。
咁就真係一定要用少少VBA去捉個格的底色資料了。
你可以喺MACRO度加以下呢個function:
Function CheckColor(range)
If range.Interior.Color = RGB(255, 255, 0) Then
CheckColor = 1
ElseIf range.Interior.Color = RGB(0, 0, 255) Then
CheckColor = 2
Else
CheckColor = 0
End If
End Function
2014-09-23 17:24:52 補充:
呢個Function只係例子,你要加齊你所有的底色入If度。
上面的設定係黃色(255,255,0) = 1,藍色(0,0,255) = 2,其他顏色 = 0。
如前述,六個顏色用文字連結方式(假設六個顏色是分別放在A1, B1, C1, D1, E1, F1,可用公式"=CheckColor(A1)&CheckColor(B1)&CheckColor(C1)&CheckColor(D1)&CheckColor(E1)&CheckColor(F1)"得到。
假設黃藍灰綠粉分別定義做12345,咁你就得到一組6個數字碼。
而碼表"A1 = 黃,籃,籃,灰,綠,粉"就變成A1=122345
2014-09-23 17:28:32 補充:
如此類推,當砌好這組字之後(假設在G1),可用公式"=VLOOKUP(G1,Sheet2!$A$1:$B$210,2,false)就可以得到你要的結果。
由於補充答案經常限我字數,我又貼唔到圖,如果你真係唔明,唯有請你私信我再睇吓點幫到你。