返回列表 上一主題 發帖

合併Ranges的內容

Sub ex()

    [A1:A10] = [{1;2;3;4;5;6;7;8;9;10}]
    Arr = [A1:A10]
    xj = Join(Application.Transpose(Arr), ",")
    Debug.Print xj

    [B1:K1] = [{101,102,103,104,105,106,107,108,109,110}]
    Arr = [B1:K1]
    xj = Join(Application.Transpose(Application.Transpose(Arr)), ",")
    Debug.Print xj

End Sub
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 4# clio

VBA 的一維是水平陣列

[B1:K1]是水平陣列,轉一次為垂直陣列,再轉一次為水平陣列才能變成一維陣列。
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

本帖最後由 ML089 於 2017-8-24 03:06 編輯

回復 6# clio


Sub ex()

[A1:J10] = [row(1:10)*100+column(A:J)]
Arr = [A1:J10]

Brr = Application.Index(Arr, 1) '取水平陣列,一維陣列(N)
Crr = Application.Index(Arr, , 1) '取垂直陣列,二維陣列(Nx1)

Debug.Print Join(Brr, ",")
'Debug.Print Join(Crr, ",") '錯誤,非一維陣列無法使用JOIN函數
Debug.Print Join(Application.Transpose(Crr), ",") 'Transpose將垂直陣列(二維10x1陣列)轉為一維陣列


End Sub
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

        靜思自在 : 稻穗結得越飽滿,越會往下垂,一個人越有成就,就要越有謙沖的胸襟。
返回列表 上一主題