看板 Office 關於我們 聯絡資訊
軟體: 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
soyoso: 問題2,application.index(A,[row(8:13)],[column(g:i)]) 03/14 23:07
soyoso: 問題1,如不要迴圈的話,range=A,range=range("e5:g10"). 03/14 23:58
soyoso: value,最後A=range 03/14 23:58
simon552614: Q2解決了,但Q1好像只能放在A矩陣左上角嗎!? 03/16 23:18
simon552614: Dim A#(5,5),想用Q2的想法對調等號↓↓ 03/16 23:20
simon552614: A([row(2:4)], [column(2:4)]) = Range("F3:H5") 03/16 23:21
simon552614: 可解否? 03/16 23:24
soyoso: 只能放左上角?什麼意思? 03/17 01:07
soyoso: Q1以Q2方面並無查到,不確定是否也可以該方式達成 03/17 01:08
simon552614: 請問上面row(8:13)想用row(i,j)會報錯,該怎麼改呢? 03/19 01:21
soyoso: 以evaluate 03/19 07:25