2017-04-19 121 views
0

我有一个数组创建一个数组阵列阵列VBA

这里我的代码:

Dim servers(2) As String 
Dim parameters(3) As String 
Dim i, j As Integer 

parameters(0) = "db1" 
parameters(1) = "server1" 
parameters(2) = "user1" 
parameters(3) = "password1" 

For i = 0 To 2 
    For j = 0 To 3 
     servers(i) = parameters(j) 
    Next j 
Next i 

我做了一个图形化的例子,结果,我真的不知道该怎么做: https://i.stack.imgur.com/1uSme.png

回答

1

你居然需要一个2-d数组来填充你的servers,试试下面的代码:

Option Explicit 

Sub x() 

Dim servers(2, 3) As String 
Dim parameters() As Variant 
Dim i As Long, j As Long 

parameters = Array("db", "server", "user", "password") 

For i = 0 To 2 
    For j = LBound(parameters) To UBound(parameters) 
     servers(i, j) = parameters(j) & i + 1 
    Next j 
Next i 

End Sub 
0

尝试使用二维数组:

Dim parameters(10,10) As String 

parameters(1,1) = "db1" 
parameters(1,2) = "server1" 
... 
parameters(2,1) = "db2" 
parameters(2,2) = "server2" 
... 
4

这似乎是一个用户定义类型可以帮助您:

Type tServerData 
    DBname As String 
    ServerID As String 
    UserName As String 
    Password As String 
End Type 

Dim ServerData(0 To 2) As tServerData 

现在你有3台服务器的arrray,例如:

ServerData(0).DBname= "db1" 

+0

UDT的是如此被低估。这应该是被接受的答案。 –