Я продолжаю получать ошибку, когда я пытаюсь передать это значение массиву, по существу, я работаю с курсами обмена, у меня есть валюта во втором измерении массива ary() и я ищу, чтобы получить точку данных в таблице, которая находится в 2 ячейках от элемента, хранящегося в массиве.Несоответствие типа при передаче массива
Теперь я считаю, что проблема имеет какое-то отношение к тому, что значение является числом, а массив является вариантом, однако я не могу решить проблему.
Option Explicit
Dim fxary(), y
ws.Select
Set Rng = Sheets("BEXR").Range("C2:C" & Sheets("BEXR").Range("A1").End(xlDown).Row)
For i = 1 To UBound(ary, 2)
If ary(2, i) <> ary(2, UBound(ary, 2)) Then
For Each y In Rng
If Sheets("BEXR").Range(y.Address).Value = ary(2, UBound(ary, 2)) And Sheets("BEXR").Range(y.Address).Offset(0, 1).Value = ary(2, i) Then
fxary() = Sheets("BEXR").Range(y.Address).Offset(0, 2).Value ' error occurring here
fxary = ary(1, i)
End If
Next y
End If
Next
Не могли бы вы отправить полный подпункт? (Опустите несущественные части, но включите объявления переменных) – arcadeprecinct
Я использовал только dim для y и Dim fxary() As Variant для массива. Значение, входящее в fxary, будет числом. Извините, если это не поможет. – Lowpar
Ваш код не компилируется. У вас есть «Option Explicit», но затем есть все виды необъявленных переменных. Кроме того, вы никогда не говорите, что вы пытаетесь передать массивы * в *. Вы, кажется, понимаете, что значения диапазона заданы для варианта, но вы используете терминологию, которая обычно используется при вызове подсистем или функций. –