Тема: Приравнивание массива: VBA — нормально, VBS — ошибка
Привет! Извиняюсь за тупость, я VBS пользуюсь редко, в основном VBA. Вопрос — описан в коде ниже.
Option Explicit ' обязательное объявление переменных
' --- описываем переменные --->
Dim ArrStat(3) ' статический массив из 3 эл-тов
Dim ArrDyn1() ' динамический массив
Dim HereIsArr1 ' переменная, к которой будет приравнен массив
' <-- конец описания перем. ---
' СУТЬ ПРОБЛЕМЫ: насколько я помню, в VBA массив можно было приравнивать
' либо к переменной Variant, либо к динамическому массиву;
' кроме того, обращаться к динамическому массиву можно было и со скобками
' и без них (напр., со скобками: ArrDyn1(), без скобок: ArrDyn1), обычно
' использ-ся синтаксис без скобок, но мне больше нравится со скобками,
' так как это нагляднее (видя после переменной скобки, я сразу понимаю,
' что это массив).
'
' Но когда я попробовал написать так же в VBS, то полезли ошибки :(
' Причём в VBA ни в одном из нижеприведенных вар-тов ошибок не было!
ArrStat(0) = "тыква" '
ArrStat(1) = "дыня" ' заполним статич. массив значениями
ArrStat(2) = "банан" '
' при= статич. массив к перем-й Variant
' *******************************************
' пробую разный синтаксис (со скобками и без)
'
'HereIsArr1 = ArrStat() ' - со скобками
' ОШИБКА: "Subscript out of range"
'
HereIsArr1 = ArrStat ' - без скобок
' * тут ошибки нет
' при= статич. массив к динамич-му массиву
' *******************************************
'
'ArrDyn1() = ArrStat() ' - скобки = скобки
' ОШИБКА: "Subscript out of range"
'
'ArrDyn1() = ArrStat ' - скобки = нет скобок
' ОШИБКА: "Subscript out of range"
'
'ArrDyn1 = ArrStat() ' - нет скобок = скобки
' ОШИБКА: "Subscript out of range"
'
'ArrDyn1 = ArrStat ' - нет скобок = нет скобок
' ОШИБКА: "Type mismatch"Объясните — что за непонятки в VBS? Получается, что в VBS массив можно приравнивать только к переменной, но не к другому (динамическому) массиву?

