- 帖子
- 83
- 主題
- 17
- 精華
- 0
- 積分
- 105
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- XP
- 閱讀權限
- 20
- 註冊時間
- 2010-12-28
- 最後登錄
- 2018-8-8
|
回復 小俠客
InStr(raw.Cells(i, 3), "小學") 這只會傳回數字
你自串中 初小, 小學,初中, 國中.... ...
GBKEE 發表於 2012-8-28 09:44 
我忽然想到,如果我把小學、中學、大學、研究生以上的類別用array儲起來,用FOR LOOP + select case 或if是不是可以?
例如:- scl(1,1) = "初小"
- scl(1,2) = "小學"
- scl(2,1) = "初中"
- scl(2,2) = "高中"
- scl(3,1) = "大學"
- .
- .
- .
- edu(1)="小學"
- edu(2)="中學"
- edu(3)="大學"
- .
- .
- for j = 1 to 4
- for k = 1 to 2
- select case instr(raw.Cells(i, 3), scl(j,k))
- case >0
- vbtype=edu(j)
- end select
- next k
- next j
複製代碼 但如果sub中放了太多的array,會有點混亂,而且類似的array在其他的sub 也會用到,如果在每一個sub都存有相同的array,維護時也很麻煩,所以我打算用public const去define array,但失敗了。
我的做法是:
public dim scl(4,2) as string
const dim scl(1,1) = "初小"
const scl(1,2) = "小學"
.
sub abc()
是不是不能在public define 2dimensional的 array? |
|