[算表] VBA的矩陣輸出(入)

看板Office作者 (阿翔)時間5年前 (2019/03/14 22:40), 編輯推噓0(0011)
留言11則, 2人參與, 5年前最新討論串1/1
軟體: Excel 版本:2010 為方便說明,Option base 1 假設矩陣A(100*100),儲存格資料也有100*100 可以用A=range(...)很快放進去 Q1: 那今天只想把資料range("E5:G10")放進去A的某個中間區塊,該怎麼寫呢? 除了for迴圈有更快的方法嗎? 因為以前用過Matlab,就有A(8:13,7:9)=資料,這樣的方法 Q2: 跟上面相反過來,在VBA裡面已經有計算完的A矩陣, 該怎麼把A的8~13列7~9欄,顯示在儲存格,同樣想用避開for迴圈的方法 目前Q2只試出用range(...)=worksheetFunction.Index(A,列數,0) 可是這樣整列都會輸出,不是我想要的結果 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.227.134.116 ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1552574445.A.0EF.html

03/14 23:07, 5年前 , 1F
問題2,application.index(A,[row(8:13)],[column(g:i)])
03/14 23:07, 1F

03/14 23:58, 5年前 , 2F
問題1,如不要迴圈的話,range=A,range=range("e5:g10").
03/14 23:58, 2F

03/14 23:58, 5年前 , 3F
value,最後A=range
03/14 23:58, 3F

03/16 23:18, 5年前 , 4F
Q2解決了,但Q1好像只能放在A矩陣左上角嗎!?
03/16 23:18, 4F

03/16 23:20, 5年前 , 5F
Dim A#(5,5),想用Q2的想法對調等號↓↓
03/16 23:20, 5F

03/16 23:21, 5年前 , 6F
A([row(2:4)], [column(2:4)]) = Range("F3:H5")
03/16 23:21, 6F

03/16 23:24, 5年前 , 7F
可解否?
03/16 23:24, 7F

03/17 01:07, 5年前 , 8F
只能放左上角?什麼意思?
03/17 01:07, 8F

03/17 01:08, 5年前 , 9F
Q1以Q2方面並無查到,不確定是否也可以該方式達成
03/17 01:08, 9F

03/19 01:21, 5年前 , 10F
請問上面row(8:13)想用row(i,j)會報錯,該怎麼改呢?
03/19 01:21, 10F

03/19 07:25, 5年前 , 11F
以evaluate
03/19 07:25, 11F
文章代碼(AID): #1SYcVj3l (Office)