パソコン仕事5倍塾
35,000人を指導した東大卒・元日本IBM社内講師が直伝
MENU
みねさんの投稿
(投稿ID: 4050)
小川 慶一さんのコメント
(コメントID: 5610)
Sub hoge() 'ary(0), ary(1), ary(2), ary(3), ary(4), ary(5) 'で構成された、要素数6, 最小インデックス0, 最大インデックス 5 の配列を作ります↓ Dim ary(5) As Long '結果を出力してみましょう↓ Debug.Print LBound(ary) '0 が出力されます Debug.Print UBound(ary) '5 が出力されます End Sub
みねさんのコメント
(コメントID: 6868)
(コメントID: 5613)
Sub fuga() Dim vList(1, 32) As Variant Debug.Print UBound(vList, 1) Debug.Print UBound(vList, 2) End Sub
(コメントID: 6869)
(コメントID: 5617)
Captcha:
たった1ヶ月で人生が劇的に変わりました
佐藤信さん
役員クラスの方から高い評価を受けるようになりました。
佐賀県 - 岩本徹さん
今までまったく知らなかったショートカットキーを使いまくっています。
東京都 - 鷹觜慶さん
年齢60才間近、営業で外回りの時間が多い私でも退社時間が1-2時間程度早くなりました。
東京都 - 宗内隆明さん
受講前もすでにパソコン得意でしたが、そんな私でも受講して本当に良かったと思えた講座です。
東京都 - 佐伯とも子さん
ここまで包括的に仕事に役立つ深い学びを受けれた講座は初めてでした
東京都 - 飯田倫子さん
2025年05月07日 08:26
2025年05月07日 08:13
2025年05月04日 20:00
2025年04月28日 08:52
2025年04月22日 05:41
2025年05月14日 10:40
2025年05月14日 09:33
2025年05月14日 09:32
2022年02月24日 10:59
表示できる投稿はありません。
この学習サイトの教材制作、サポート、システム開発をすべてやっています。
2022年02月02日 00:00
2022年02月02日 03:00
2022年02月02日 06:00
2022年02月02日 09:00
2022年02月02日 12:00
2025年04月15日 11:30
2025年04月08日 16:30
2025年04月07日 16:30
2025年04月04日 15:45
2025年03月27日 13:30
2025年05月14日 11:55
2025年02月04日 08:51
2025年02月03日 12:58
2024年11月27日 11:48
2024年11月25日 12:07
2025年03月26日 22:33
2025年03月26日 22:12
2025年03月24日 22:28
2025年03月19日 20:10
2025年03月18日 20:52
2025年04月16日 08:30
2025年03月18日 09:07
2025年03月18日 09:06
2025年03月15日 13:23
2025年02月26日 16:37
2025年04月02日 21:01
2025年04月02日 20:47
2025年04月02日 20:37
2025年04月01日 22:03
2025年04月01日 21:27
2025年04月16日 08:32
2025年03月18日 09:10
2025年03月18日 09:09
みねさんの投稿
(投稿ID: 4050)
LBound関数やUnbound関数の第二引数は、「配列の、左から数えて何次元目のところの最小値、最大値を求めるか」を指定するための引数です。
なので、この例の場合だと、計算結果の例は、以下のようになります。
LBound(vList, 1) → 0
UBound(vList, 1) → 1
LBound(vList, 2) → 0
UBound(vList, 2) → 31
というのが理解不能です。
二次元だと
1列目2列目ともにの最小の値が1 最大が31
だと思うのですが
なぜ
LBound(vList, 1) → 0
UBound(vList, 1) → 1
LBound(vList, 2) → 0
UBound(vList, 2) → 31
こうなってしまうのかわかりません。
具体的に35ページの青い点線でいう
どこからどこまでの範囲を 1とした場合と2とした場合で
指すのかおしえていただけるとありがたいです。
よろしくお願いします。
小川 慶一さんのコメント
(コメントID: 5610)
まずは確認。
一次元配列の場合の LBound関数、 UBound関数の計算結果については、よいでしょうか。
↑上記のとおり、最小値は0です。
同様に、二次元配列でも、最小値は0。
...という説明で、まずはどうでしょう?
> テキスト35ページの
>
> LBound関数やUnbound関数の第二引数は、「配列の、左から数えて何次元目のところの最小値、最大値を求めるか」を指定するための引数です。
> なので、この例の場合だと、計算結果の例は、以下のようになります。
> LBound(vList, 1) → 0
> UBound(vList, 1) → 1
> LBound(vList, 2) → 0
> UBound(vList, 2) → 31
>
> というのが理解不能です。
> 二次元だと
>
> 1列目2列目ともにの最小の値が1 最大が31
> だと思うのですが
>
> なぜ
> LBound(vList, 1) → 0
> UBound(vList, 1) → 1
> LBound(vList, 2) → 0
> UBound(vList, 2) → 31
>
> こうなってしまうのかわかりません。
> 具体的に35ページの青い点線でいう
> どこからどこまでの範囲を 1とした場合と2とした場合で
> 指すのかおしえていただけるとありがたいです。
> よろしくお願いします。
みねさんのコメント
(コメントID: 6868)
最小値の説明はわかりました。
最大値が↓の2つで何故違うのかがわかりません。
UBound(vList, 1) → 1
UBound(vList, 2) → 31
35ページの
点線の2列とも最大値は31番目だと思うのですが
UBound(vList, 1) → 1
になってしまう理由がわかりません。
よろしくおねがいします。
小川 慶一さんのコメント
(コメントID: 5613)
二次元配列を作るとは、直感的に言うと、長方形の入れ物を作るということです。
Dim vList(1, 32) As Variant
であれば、横2,縦33の長さの長方形ができあがる、ということです。
[a] 横サイズ2(0から1まで)
[b] 縦サイズ33(0から32まで)
UBound(vList, 1)は、上述[a]の1を取得するものです。
UBound(vList, 2)は、上述[b]の32を取得するものです。
という説明でどうでしょうか。
> 早速の返信ありがとうございます。
> 最小値の説明はわかりました。
> 最大値が↓の2つで何故違うのかがわかりません。
>
> UBound(vList, 1) → 1
>
> UBound(vList, 2) → 31
>
> 35ページの
> 点線の2列とも最大値は31番目だと思うのですが
>
> UBound(vList, 1) → 1
>
> になってしまう理由がわかりません。
> よろしくおねがいします。
みねさんのコメント
(コメントID: 6869)
ありがとうございます。
小川 慶一さんのコメント
(コメントID: 5617)
よかったです。
ひきつづきよろしくお願いいたします☆
> とても良く理解出来ました。
> ありがとうございます。