例如
dim a(10)as long
a=array(1,0,4,0,0,1,2,3,4,5)如何截去数组前面的几个元素使得数组a=array(1,2,3,4,5),先谢谢了~

解决方案 »

  1.   

    Dim b(4) As Long
    Dim i As Integer
    For i = 5 To UBound(a)
      b(i - 5) = a(i)
    Next i
      

  2.   

    有没有快点的方法啊>_<高手帮帮呀
      

  3.   

    Call CopyMemory(b(0),a(5),5)
    把a数组从索引为5开始,长度为5的数据拷贝到b数组中
      

  4.   

    Private Sub Command1_Click()
    Dim a, I As Integer
    a = Array(1, 0, 4, 0, 0, 1, 2, 3, 4, 5)
    For I = 0 To 4
    a(I) = a(I + 5)
    Next
    ReDim Preserve a(4)
    For I = 0 To 4
    Print a(I); vbTab;
    Next
    End Sub
      

  5.   

    northwolves(狼行天下) 
    Private Sub Command1_Click()
    Dim a, I As Integer
    a = Array(1, 0, 4, 0, 0, 1, 2, 3, 4, 5)
    For I = 0 To 4
    a(I) = a(I + 5)
    Next
    ReDim Preserve a(4)
    For I = 0 To 4
    Print a(I); vbTab;
    Next
    End Sub
    不用再定义数组占用内存,好!
    ===============================
     myhgyp(也许是这样的,信不信由你)
    Dim b(4) As Long
    Dim i As Integer
    For i = 5 To UBound(a)
      b(i - 5) = a(i)
    Next i
    方法易懂,但占用内存
    ===========================
    junki(『一心一意向前冲』) 
    Call CopyMemory(b(0),a(5),5)
    把a数组从索引为5开始,长度为5的数据拷贝到b数组中
    用函数操作,很简单。
    =============================
    各有优点,楼住更具需要选择