<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; Приравнивание массива: VBA — нормально, VBS — ошибка]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=8580</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=8580&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Приравнивание массива: VBA — нормально, VBS — ошибка».]]></description>
		<lastBuildDate>Thu, 15 Aug 2013 17:16:25 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Приравнивание массива: VBA — нормально, VBS — ошибка]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=74578#p74578</link>
			<description><![CDATA[<div class="codebox"><pre><code>Option Explicit

Dim arrArray01
Dim arrArray02

Dim elem


arrArray01 = Array(1, 2, 3)

For Each elem In arrArray01
    WScript.Echo elem
Next

arrArray02 = arrArray01

For Each elem In arrArray02
    WScript.Echo elem
Next


WScript.Quit 0
</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Thu, 15 Aug 2013 17:16:25 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=74578#p74578</guid>
		</item>
		<item>
			<title><![CDATA[Приравнивание массива: VBA — нормально, VBS — ошибка]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=74577#p74577</link>
			<description><![CDATA[<p>Привет! Извиняюсь за тупость, я VBS пользуюсь редко, в основном VBA. Вопрос — описан в коде ниже.<br /></p><div class="codebox"><pre><code>
Option Explicit &#039; обязательное объявление переменных

&#039; --- описываем переменные ---&gt;

Dim ArrStat(3)  &#039; статический массив из 3 эл-тов
Dim ArrDyn1()   &#039; динамический массив
Dim HereIsArr1  &#039; переменная, к которой будет приравнен массив

&#039; &lt;-- конец описания перем. ---

&#039; СУТЬ ПРОБЛЕМЫ: насколько я помню, в VBA массив можно было приравнивать
&#039;                либо к переменной Variant, либо к динамическому массиву;
&#039; кроме того, обращаться к динамическому массиву можно было и со скобками
&#039; и без них (напр., со скобками: ArrDyn1(), без скобок: ArrDyn1), обычно
&#039; использ-ся синтаксис без скобок, но мне больше нравится со скобками,
&#039; так как это нагляднее (видя после переменной скобки, я сразу понимаю, 
&#039; что это массив).
&#039;
&#039; Но когда я попробовал написать так же в VBS, то полезли ошибки :(
&#039; Причём в VBA ни в одном из нижеприведенных вар-тов ошибок не было!

ArrStat(0) = &quot;тыква&quot;    &#039; 
ArrStat(1) = &quot;дыня&quot;     &#039; заполним статич. массив значениями
ArrStat(2) = &quot;банан&quot;    &#039;

                        &#039; при= статич. массив к перем-й Variant
                        &#039; *******************************************
                        &#039; пробую разный синтаксис (со скобками и без)
                        &#039;
&#039;HereIsArr1 = ArrStat() &#039; - со скобками
                        &#039;   ОШИБКА: &quot;Subscript out of range&quot;
                        &#039; 
 HereIsArr1 = ArrStat   &#039; - без скобок
                        &#039;   * тут ошибки нет

                        &#039; при= статич. массив к динамич-му массиву
                        &#039; *******************************************
                        &#039;
&#039;ArrDyn1()  = ArrStat() &#039; - скобки     = скобки
                        &#039;   ОШИБКА: &quot;Subscript out of range&quot;
                        &#039;
&#039;ArrDyn1()  = ArrStat   &#039; - скобки     = нет скобок
                        &#039;   ОШИБКА: &quot;Subscript out of range&quot;
                        &#039;
&#039;ArrDyn1    = ArrStat() &#039; - нет скобок = скобки
                        &#039;   ОШИБКА: &quot;Subscript out of range&quot;
                        &#039;
&#039;ArrDyn1    = ArrStat   &#039; - нет скобок = нет скобок
                        &#039;   ОШИБКА: &quot;Type mismatch&quot;</code></pre></div><p>Объясните — что за непонятки в VBS? Получается, что в VBS массив можно приравнивать только к переменной, но не к другому (динамическому) массиву?</p>]]></description>
			<author><![CDATA[null@example.com (EgorS)]]></author>
			<pubDate>Thu, 15 Aug 2013 17:10:31 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=74577#p74577</guid>
		</item>
	</channel>
</rss>
