dim A(50) as integer
元素值为1,2,3,7····7如何一次性赋值,不用循环语句

解决方案 »

  1.   

    Private Sub Form_Load()
    Dim s As String
    Dim a, i
    s = "1,2,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7"
    a = Split(s, ",")
    MsgBox a(10)
    End Sub
      

  2.   

    a(0)=1
    a(1)=2
    a(2)=3
    a(3)=7
    a(4)=7
    a(5)=7
    a(6)=7
    ……
    a(49)=7
      

  3.   

    Private Sub Form_Load()
    Dim s As String
    Dim a, i
    s = "1,2,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7"
    a = Split(s, ",")
    MsgBox a(10)
    End Sub
      

  4.   

    只需要一句指令:
    a = Split("1,2,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7", ",") 
      

  5.   


        Dim sArr() As String
        Dim i As Integer
        i = 20
        sArr = Split(Left$(Replace$(String(i, vbTab), vbTab, "7,"), i * 2 - 1), ",")
      

  6.   

    晕。。纯粹折腾。。数组大一点CopyMemory都来了。
      

  7.   


    Private Sub Command1_Click()
        '仅针对你的1-7玩一下,最大数不能超过255
        Dim A() As Byte
        A = StrConv(Chr(1) & Chr(2) & Chr(3) & String(48, Chr(7)), vbFromUnicode)
        
        '-----------------------------------------------------------------------
        '以下验证一下:
        For i = 0 To 50
            If i < 10 Then m = 2 Else m = 1
            Debug.Print i; Spc(m); A(i)
        Next
    End Sub
      

  8.   

    Option ExplicitPrivate Sub Command1_Click()
        Dim strArray As String
        Dim A() As String
        Dim intP As Integer
        strArray = "1,2,3,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7"
        A = Split(strArray, ",")
        For intP = LBound(A) To UBound(A)
            List1.AddItem "A(" & CStr(intP) & ")= " & A(intP)
        Next intP
    End Sub