- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
回復 1# PKKO
這是我個人的直覺處理方式,僅供你做參考用!- Sub Ex2()
- ' rng = [A5].CurrentRegion '假設UBOUND(RNG)=20 ,UBOUND(RNG,2)=10
- ' Q1: [A1].Resize(20, 10).Value = rng '我覺得這是將陣列資料放在excel非常快的方式,不曉得還有更快的嬤?
- ' Q2 : 如果RNG這個陣列,我希望它由RNG(2 TO 16,3 TO 5) 放到 [A1].Resize(15, 3).Value這裡面該如何做?因為目前Q1程式碼無法達成這種放置方式
- ' PS:有沒有答案不是迴圈的.CELLS(x,x)=RNG(X,X)的方式
- Dim rng As Variant, MyArr As Variant, chars As String
-
- ' rng = [A30].CurrentRegion '假設UBOUND(RNG)=20 ,UBOUND(RNG,2)=10
- rng = [A30].CurrentRegion
-
- [AA1].Resize(UBound(rng), UBound(rng, 2)) = rng
- ' Q2 : 如果RNG這個陣列,我希望它由RNG(2 TO 16,3 TO 5)
- chars = "A" & Chr(64 + 3 + 1) & (2 + 1) & ":" & "A" & Chr(64 + 3 + (5 - 3 + 1)) & (2 + (16 - 2 + 1))
- MyArr = ThisWorkbook.Worksheets("工作表1").Range(chars).Value
- [AA1:AJ20].Clear
-
- [A1:J20].Clear
- [A1].Resize(15, 3) = MyArr
- End Sub
複製代碼 |
|