Excel vba错误地为另一个范围

时间:2017-07-05 15:03:27

标签: excel vba excel-vba

我有一个打开工作簿的子程序,将其特定范围放入变量中,并将该变量作为参数传递给一个函数,该函数应该是MsgBox范围内的每个值并更改它。

Function testFunc(aCol As Range)
  Dim i As Integer
  i = 0
  For Each cell In aCol
    MsgBox (cell.Value)
    cell.Value = i
    i = i + 1
  Next

  testFunc = i
End Function


Sub testSub()   
    Dim dataWorkbook As Workbook
    Set dataWorkbook = Application.Workbooks.Open("Y:\vba\test_reserves\test_data\0503317-3_FO_001-2582480.XLS")

   Set imcomesNamesRange = dataWorkbook.Worksheets("sheet 1").Range("A1:A20")
   Cells(1, 5) = testFunc(aRange)
End Sub

但它不会发生 - 它只是当前工作簿的工作表范围(包含宏的工作簿)的MsgBoxes值,而不是读取和编辑新打开的工作簿。这有什么不对?

0 个答案:

没有答案