2017-08-23 33 views
0

我已經在我的VBA代碼中聲明瞭一個變量變量,該變量將從一個範圍中取值。例如。使用一組變體

Dim Output as variant 
Output = Range("A1:Z1").value 

我已經聲明瞭另一個變體數組。

Dim OutputArray(10000) as variant 

此數組中的每一項都是Output的迭代;即OutputArray(0)是第一次迭代中Output的值,OutputArray(1)是第二次迭代中Output的值,依此類推。

我有兩個問題:

  1. 我如何可以提取單個項目從OutputArray;例如我想知道第27次迭代中單元格C1的價值嗎?

  2. 如何將整個數組OutputArray一次粘貼到工作表上?如果一次不能做到這一點,我有什麼最好的選擇?

在此先感謝!

+1

創建一個新的陣列(1至10001,1〜26) - 填充,從你的數組的數組。,然後把新的數組放在工作表上。我認爲這會比將每個單獨的子數組放到表單更快。 –

回答

3

要在27個迭代返回C1,它將會像

OutputArray(26)(1,3) 

我認爲你必須粘貼每次迭代分別

  • 設置範圍的第一個單元格(左上角)
  • 調整範圍以包含迭代的大小。
    • 如果它們大小完全相同,則可以使用常數;如果不是,你將不得不計算它。
  • R = outputArray(iteration_num)
  • 增量FirstCell取決於您希望下一次迭代
  • 重複