返回列表 上一主題 發帖

[發問] 如何合併陣列

回復 1# sunnyso
  1. Option Explicit
  2. Sub EX()
  3.     Dim A As Variant, B As Variant, C As Variant, I As Integer
  4.     A = Array(Array("A1", "B1", "C1"), Array("A2", "B2", "C2"), Array("A3", "B3", "C3"))
  5.     B = Array(Array("A4", "B4", "C4"), Array("A5", "B5", "C5"))
  6.     C = A
  7.     For I = 0 To UBound(B)
  8.         ReDim Preserve C(0 To UBound(C) + 1)
  9.         'ReDim 陳述式  在程序層次中用來重新配置動態陣列變數的儲存空間。
  10.         'Preserve  當改變原有陣列最後一維的大小時,仍然保有原來的資料的關鍵字
  11.         C(UBound(C)) = B(I)
  12.     Next
  13. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 4# sunnyso
待我再想一想有無!!!
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 11# ML089
  1. Option Base 0   'Option Base 陳述式  在模組層次中用來宣告陣列索引的預設下限
  2. Sub Ex()
  3.     Dim A As Variant, B As Variant, C As Variant, i As Integer
  4.     '儲存格的範圍 = 是一個二維陣列 ,它的索引的預設下限是 1.
  5.     A = Array(Array("A1", "B1", "C1"), Array("A2", "B2", "C2"), Array("A3", "B3", "C3"))
  6.     'A為一維陣列: 元素也是一維陣列
  7.     [I1] = "A無法置入"
  8.     [I2].Resize(3, 3) = A
  9.     '*** 不轉置  的寫法 **************
  10.     [E1] = "不轉置  的寫法"
  11.     For i = 0 To UBound(A)
  12.         [E1].Offset(i + 1).Resize(1, 3) = A(i)
  13.     Next
  14.     '********************************
  15.     B = Application.Transpose(A)                     '轉置一次可以 一次寫入 A 陣列於儲存格
  16.     '****轉置後的陣列  下限是 1 開始不用 +1
  17.     [A1].Resize(UBound(B), UBound(B, 2)) = B
  18.     [A1].End(xlDown).Offset(1) = "第二次轉置*"
  19.     C = Application.Transpose(Application.Transpose(A))
  20.     [A1].End(xlDown).Offset(1).Resize(UBound(A) + 1, 3) = C
  21.    Stop '看看變數
  22. End Sub
  23. Sub Ex__A()
  24.     '列 = 一維陣列
  25.     Cells.Clear
  26.     A = Array("A1", "B1", "C1")
  27.     [A1:C1] = A
  28.     B = Application.Transpose(A)
  29.     [a5:A7] = B
  30. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 13# ML089
12#程式碼沒說清楚
  1. 24.    '列 = 一維陣列
複製代碼
清楚一點應該是: 單列(A1:F1)的儲存格範圍 = 一維陣列, 單列以上(A1:F5)的儲存格範圍 = 二維陣列
多練習熟悉就會了解
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

        靜思自在 : 布施如播種,以歡喜心滋潤種子,才會發芽。
返回列表 上一主題