Вырезание строки / столбца из массива: Application.Index работает, пока Application.WorksheetFunction выдает ошибку несоответствия. Идеи? - PullRequest
0 голосов
/ 21 апреля 2020

Я столкнулся с этим «явлением», и я понятия не имею, почему это происходит.

При использовании этого простого кода для вырезания нескольких строк из массива без зацикливания:

Sub TEST()
   Dim varArray As Variant
   Dim varTemp As Variant
      ' feed data into array from opened sheet
      varArray = ActiveSheet.Range("A1:B6")

      ' Now the first method Application.Index works,
      ' we get the first, second and fifth rows of varArray
      ' saved into varTemp.
      varTemp = Application.Index(varArray, Array(1, 2, 5), 0)

      ' While this doesn't work.
      ' Also using Application. index doesn't show in the intellisense. Why is that?
      varTemp = Application.WorksheetFunction.Index(varArray, Array(1, 2, 5), 0)

End Sub

Только кстати с Application.Index работает. Использование Application.WorksheetFunction.Index приводит к ошибке несоответствия. Почему?

Также в Application.WorksheetFunction. index появляется в intellisense, в то время как в Application. index вообще не появляется. Почему?

Я искал это два часа и не мог найти простое объяснение.

Спасибо за любую помощь!

...