次の方法で共有


配列に割り当てることができません

配列の各要素には、それぞれ個別に値を代入する必要があります。 このエラーの原因と解決策を以下に示します。

  • 値を代入する要素を指定せずに配列変数に 1 つの値を代入しようとした。

    配列要素に 1 つの値を代入するには、添え字で要素を指定する必要があります。 たとえば、整数配列の場合 MyArrayMyArray = 5 は無効ですが、次の式は有効です。 MyArray(UBound(MyArray)) = 5

  • 配列全体を別の配列に代入しようとした。

    たとえば、が配列であり、Arr2別の配列である場合Arr1、次の 2 つの割り当てはどちらも無効です。

        Arr1 = Arr2    ' Invalid assignment. 
        Arr1() = Arr2()    ' Invalid assignment. 
    

    ある配列を別の配列に割り当てるには、割り当ての左側にある配列がサイズ変更可能であり、配列の型が一致していることを確認します。

    配列全体を Variant に格納して、配列全体を含む単一の Variant 変数を作成することができます。

           Dim MyArr As Variant 
           MyVar = Arr2() 
    

    その後、その Variant 内の配列の要素を参照するには、通常の配列と同じように添え字を使用します。以下に例を示します。

      MyVar(3) = MyVar(1) + MyVar(5) 
    

詳細については、該当する項目を選択し、F1 キー (Windows の場合) または HELP (Macintosh の場合) を押してください。

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。