2013-05-02 76 views
1

我需要填有數字1-50的數組,我現在有代碼:的Visual Basic填充陣列設置

Dim numberSet(49) 
For x = 1 To 50 
numberSet(x - 1) = x 
Next x 

的挑戰是如何做到這一點的可能行最少的。這部分是因爲它看起來像我不應該使用4行這麼基本的東西來擾亂我。

你們有什麼想法嗎?如果可以的話,我想避免像= {1,2,3,4,5...50}這樣的事情。謝謝!

回答

2

在一個行:

Dim numberSet(49): For x = 1 To 50: numberSet(x - 1) = x: Next x 
+0

謝謝!有什麼辦法可以做一些像'= {1-50}'的事情嗎? – hellohellosharp 2013-05-02 21:18:10

+0

不是我所知道的VBA。 – 2013-05-02 21:19:21

0

一號線(但它創建一個基於1陣列...)

Sub TT() 

    Dim arr 

    arr = Application.Transpose([=ROW(A1:A50)]) 

    Debug.Print UBound(arr) 
    Debug.Print arr(1) 
    Debug.Print arr(13) 

End Sub 

...如果您關閉Option Explicit你可以跳過宣言。但不要那樣做;-)