2014-02-06 50 views
0
Private Sub CommandButton1_Click() 
    Dim ary(2, 2) As Variant 

    For p = 0 To 2 
     For q = 0 To 2 
      ary(p, q).Value = Range("a1:c3") 
     Next q 
    Next p 

    For f = 0 To 2 
     For t = 0 To 2 
      Cells(f + 1, t + 5).Value = ary(f, t) * 2 
     Next t 
    Next f 
End Sub 

我正在編寫上述程序來向數組分配一個範圍。但它顯示一個稱爲對象所需的錯誤。當我嘗試調試它是選擇語句vba:將一個範圍分配給一個數組,然後將該範圍相乘

元(P,Q).value的=範圍( 「A1:C3」)

一些可以幫助一個???

+1

也就是說的範圍存儲陣列的不正確的方法。嘗試這種'昏暗MyAr作爲Variant'然後'MyAr =範圍( 「A1:C3」)Value'。 –

回答

0
Private Sub CommandButton1_Click() 
    Dim ary As Variant 
    Dim wb As Workbook 
    Dim ws As Worksheet 

    Set wb = ActiveWorkbook 
    Set ws = wb.Sheets(1) 

    ary = ws.Range("a1:c3") 

    For f = 1 To UBound(ary) 
     For t = 1 To UBound(ary) 
      Cells(f + 1, t + 5).Value = ary(f, t) * 2 
     Next t 
    Next f 
End Sub 
相關問題