配列でデスリストと爆弾投下

メインメニューに戻る
VBA自作サンプルプログラム集に戻る
基本情報技術者試験トップへ
取りあえず事務職で働きたいから手っ取り早くExcel教えてくれ

今日は、憎たらしいヤツらを、
デスノートならぬ、デスリストという
配列に格納して、イミディエイトウィンドウを
デスノートに見立てて書き出していきます。

※ この例題はフィクションです ※
■ いのちは大切に!
■ 犯罪はダメ!
■ 法律を守ろう!

このような名前を用意します。
配列名は「汚名前」を使います。
憎たらしいヤツいっぱいいて、
一人ひとりに変数を定義するの、
面倒だから、「汚名前」という配列を
用意しました。

汚名前[0]=五木不利太郎
汚名前[1]=瀬久原次郎
汚名前[2]=丑三津土器三郎
汚名前[3]=氏煮画見四郎

配列は0から始まります。
この部屋番号みたいなものを、
添え字といいます。

配列に五木不利太郎~氏煮画見四郎までの
名前を格納して、それをイミディエイトウィンドウに
出力します。


Sub 配列1()
Dim 汚名前(3) As String, i As Integer
For i = 0 To 3
汚名前(i) = Worksheets(“デスリスト”).Cells(3 + i, 2).Value
Debug.Print 汚名前(i)
Next i

End Sub

出力結果です。

では次に、デスリストの配列に
格納されているヤツラに
いろいろな色の爆弾をぶつけて見ましょう。
Variant(バリアント型)という何でも入る型を使います。
段ボール箱に四次元ポケットの機能を付けたようなものです。

ここでも、配列は0から始まります。

インプットボックスに0から4までの数字を入力して、
爆弾を投下させます。

出力結果です。


Sub 配列2()
Dim 色爆弾 As Variant, 番号 As Integer
色爆弾 = Array(“赤”, “青”, “きいろ”, “緑”, “紫”)
番号 = InputBox(“赤:0、青:1、きいろ:2、緑:3、紫:4”, “どの色の爆弾 を投げますか?”)
MsgBox (色爆弾(番号) & “の爆弾を投下した!どっか~~ん☆★”)

End Sub

最後に、先ほどのデスリストを発展させます。
新たに、リストに「部李津古花子」も追加したい時、
自動的に追加になるようにします。

行の上端、下端、行数、このExcelの全ての行数を用意します。
スクロールして、スクロールして、ず~~~と下に、
全ての行数があります。
60000万ぐらいでしょうか。

そのず~~~と下から、上に向かって最初にぶつかるのが、
部李津古花子の行です。これは7行目で、「下端」です。
上端は、B1から最初にぶつかるのが、「汚名前」という見出しです。
+1すると、「五木不利太郎」の行になります。これが3行目です。

行数は、全部で5行で、配列は0から
始まるので、
7行目から3行目を引いた数が行数になります。


Sub 配列3()
Dim 汚名前() As String, i As Long, 上端 As Long, _
下端 As Long, 行数 As Long, このExcelの全ての行数 As Long
Worksheets(“デスリスト”).Activate
このExcelの全ての行数 = ActiveSheet.Rows.Count
下端 = Cells(このExcelの全ての行数, 2).End(xlUp).Row
上端 = Cells(1, 2).End(xlDown).Row
行数 = 下端 – 上端 – 1
ReDim 汚名前(行数)
For i = LBound(汚名前) To UBound(汚名前)
汚名前(i) = Worksheets(“デスリスト”).Cells(上端 + i + 1, 2).Value
Debug.Print 汚名前(i)
Next i

End Sub

実行すると、こうなります。

LBoundは一番小さい番号、UBoundは一番大きい番号です。

今日はここまで。
お疲れ様でした(=^・^=)

メインメニューに戻る
VBA自作サンプルプログラム集に戻る
基本情報技術者試験トップへ
取りあえず事務職で働きたいから手っ取り早くExcel教えてくれ

「配列でデスリストと爆弾投下」への1件のフィードバック

コメントは受け付けていません。