- 帖子
- 1018
- 主題
- 15
- 精華
- 0
- 積分
- 1058
- 點名
- 0
- 作業系統
- win7 32bit
- 軟體版本
- Office 2016 64-bit
- 閱讀權限
- 50
- 性別
- 男
- 來自
- 桃園
- 註冊時間
- 2012-5-9
- 最後登錄
- 2022-9-28
|
2#
發表於 2013-1-2 16:25
| 只看該作者
本帖最後由 stillfish00 於 2013-1-2 16:27 編輯
回復 1# acdx
好像沒什麼簡便方法 , 假設你的array下限都為1
1.直接提取元素- Dim ar, i
- ReDim ar(1 To 12, 1 To 8)
- For i = 1 To 12
- ar(i, 1) = HdB(i, 1)
- ar(i, 2) = MdB(i, 1)
- 'ar(i, 3) = ....
- '....
- 'ar(i, 8) = ....
- Next i
複製代碼 2.利用工作表(感覺挺浪費)- Dim ar
- With Workbooks.Add
- With .Sheets(1)
- .[A1].Resize(12) = HdB
- .[A1].Resize(12).Offset(, 1) = MdB
- '.[A1].Resize(12).Offset(, 2) = ...
- '...
- '.[A1].Resize(12).Offset(, 7) = ...
- ar = .[A1].Resize(12, 8)
- End With
- .Close savechanges:=False
- End With
複製代碼 3. 改用Evaluate/Join (陣列元素不含逗號或分號字元時才可用)- Dim ar
- ar = Application.Transpose(Evaluate("{" & _
- Join(Application.Transpose(HdB), ",") & ";" & _
- Join(Application.Transpose(MdB), ",") & _
- "}"))
複製代碼 |
|