Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


29354 / 76732 ←次へ | 前へ→

【52660】Re:OptionBaseステートメント
発言  ichinose  - 07/11/24(土) 10:09 -

引用なし
パスワード
   皆さん、おはようございます。

>
>>>>MyWeek = Array("日", "月", "火", "水", "木", "金", "土")
>>>> For i = 1 To 7
>>>このコードで上の方ですが、エラーが出ました。
>
>モジュールの先頭に、
>
> Option Base 1
>
>を忘れてませんか?
>
>>>MyWeek = Array("", "日", "月", "火", "水", "木", "金", "土")
>>>に変更すると、正しく動きました。
>>>こんな考えで正しいのでしょうか?
>>元々のサンプルコードが間違えていたんでしょうね。
>>Helpより
>>>Array 関数を使用して作成した配列のインデックスの最小値は、常に 0 です。
>>>ほかの種類の配列とは異なり、Option Base ステートメントに最小値を指定
>>>しても影響を受けません。
>え〜?
>'//////////////////
>Option Base 1
>Sub test()
>  Dim dt
>  dt = Array(1, 2)
>  MsgBox dt(1)
>End Sub
>'//////////////////
>これで試すと、Base 1の時は1を、Base 0の時はちゃんと2を返しますけど・・・
Option Base 1
Sub test()
  Dim myarray As Variant
  myarray = VBA.Array(1, 2)
  MsgBox LBound(myarray) & "----" & UBound(myarray)
End Sub

とすると、確かに

>>>Array 関数を使用して作成した配列のインデックスの最小値は、常に 0 です。

となりますけどね!!

0 hits

【52620】OptionBaseステートメント MMG 07/11/21(水) 20:06 質問
【52621】Re:OptionBaseステートメント かみちゃん 07/11/21(水) 20:20 発言
【52623】Re:OptionBaseステートメント りん 07/11/21(水) 20:25 発言
【52625】Re:OptionBaseステートメント neptune 07/11/21(水) 20:38 発言
【52630】Re:OptionBaseステートメント Yumi 07/11/21(水) 21:49 お礼
【52641】Re:OptionBaseステートメント MMG 07/11/23(金) 13:54 質問
【52642】Re:OptionBaseステートメント neptune 07/11/23(金) 14:04 回答
【52658】Re:OptionBaseステートメント りん 07/11/24(土) 9:52 発言
【52660】Re:OptionBaseステートメント ichinose 07/11/24(土) 10:09 発言
【52662】Re:OptionBaseステートメント りん 07/11/24(土) 10:34 発言

29354 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free