использование array как byref

Программирование на Visual Basic for Applications
noxs
Начинающий
Начинающий
 
Сообщения: 15
Зарегистрирован: 05.01.2004 (Пн) 14:23

использование array как byref

Сообщение noxs » 01.02.2004 (Вс) 18:50

привет всем.

есть функция refiner

Код: Выделить всё
Function refiner(R As Range, ByRef arr() As Double) As Long


которая должна изменить состояние передаваемого ей массива.

при попытке вызвать ее из процедуры test():

Код: Выделить всё
Sub test()
  Dim R As Range
  Set R = Worksheets("bmx").Range("A1:B100")
  Dim size As Long
  size = R.Count
  Dim arr() As Double
  ReDim arr(size)
  Worksheets("tmp").Range.Cells(1, 1) = refiner(R, arr)
End Sub



компилятор сообщает, что я неправильно передаю второй аргумент.

по всей видимости я не понимаю, как использовать аргументы, передаваемые как ссылка.

Помогите, плиз

corgi
ToyMan
ToyMan
 
Сообщения: 1367
Зарегистрирован: 01.10.2002 (Вт) 9:59
Откуда: Россия, Москва

Сообщение corgi » 01.02.2004 (Вс) 20:54

вот так все работает :!: :D
Код: Выделить всё
Worksheets("tmp").Cells(1, 1).Value = refiner(R, arr)

ну или указывай range который ты имеешь ввиду :wink:
Ничто так не ограничивает полёт мысли программиста, как компилятор

noxs
Начинающий
Начинающий
 
Сообщения: 15
Зарегистрирован: 05.01.2004 (Пн) 14:23

Сообщение noxs » 01.02.2004 (Вс) 23:48

corgi писал(а):вот так все работает :!: :D
Код: Выделить всё
Worksheets("tmp").Cells(1, 1).Value = refiner(R, arr)

ну или указывай range который ты имеешь ввиду :wink:


спасибо, я это уже тоже поняла :D


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 101

    TopList