powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Array or user-defined type expected
5 сообщений из 5, страница 1 из 1
Array or user-defined type expected
    #37808911
Feanaro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго утра.
Сегодня столкнулся со следующей проблемой. Есть процедурка, которая начиная с указанного элемента в массиве увеличивает его и все последующие элементы на указанную величину:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Sub shiftArray(ByRef shiftingArray() As Integer, row As Integer, col As Integer, shift As Integer)

For j = col To UBound(shiftingArray, 2)
    shiftingArray(row, j) = shiftingArray(row, j) + shift
Next

For i = row + 1 To UBound(shiftingArray, 1)
    For j = 0 To UBound(shiftingArray, 2)
        shiftingArray(i, j) = shiftingArray(i, j) + shift
    Next
Next

End Sub



В другой процедуре имеется массив, сначала объявленный, его размеры были определены в самой процедуре:

Код: vbnet
1.
2.
3.
Dim hBounds() As Integer
...
ReDim hBounds(maxLvl - 1, 2)



В дальнейшем я вызываю свою процедуру:

Код: vbnet
1.
Call shiftArray(hBounds, lvl - 1, 1, 1)



Вот тут компилятор сразу выдает ошибку :"Array or user-defined type expected"
Вот тут мне и непонятно, вроде в процедуре в качестве параметра указан массив Integer, при вызове передаю параметр такого же типа, а ошибка вылетает.

Подскажите, пожалуйста, в чем тут косяк?
...
Рейтинг: 0 / 0
Array or user-defined type expected
    #37808942
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
As Variant параметр процедуры поставь
...
Рейтинг: 0 / 0
Array or user-defined type expected
    #37809695
Feanaro,

косяк где-то за пределами написанного, потому что по синтаксису всё верно. Поставьте в модулях Option Explicit, опишите явно переменные, и попробуйте откомпилировать (Debug -> Compile имя проекта VBA).
...
Рейтинг: 0 / 0
Array or user-defined type expected
    #37809722
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
13-й кварталпотому что по синтаксису всё вернода, проверка показала, что не ругается:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Private Sub Command1_Click()

Dim k() As Integer
Call r(k)
ReDim k(5, 5)
Call r(k)

End Sub
Sub r(ByRef w() As Integer)

End Sub
...
Рейтинг: 0 / 0
Array or user-defined type expected
    #37810837
Feanaro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Шокер, спасибо, в качестве типа принимаемого параметра выставитл Variant, теперь работает.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Array or user-defined type expected
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]