メインメニューに戻る
VBA自作サンプルプログラム集に戻る
基本情報技術者試験トップへ
取りあえず事務職で働きたいから手っ取り早くExcel教えてくれ
※ この例題はフィクションです ※
■ いのちは大切に!
■ 犯罪はダメ!
■ 法律を守ろう!
4つのループを見ていきます。
こんな感じの画面を用意します。
● 1つ目:セルの内容が「チャラ男」である間は
ナイフでぶっ刺して「×」を付けてやっつける。
条件判断は【前】
● 2つ目:セルの内容が「チャラ男」である
間はナイフでぶっ刺して「×」を付けてやっつける。
条件判断は【後 (ナイフの扱いに慣れていない人) 】
● 3つ目:セルの内容が「宝石箱」が現れるまで、
ナイフを振り回して「×」を付けてやっつける。
条件判断は【前】
● 4つ目:セルの内容が「宝石箱」が現れるまで、
ナイフを振り回して「×」を付けてやっつける。
条件判断は 【後 (ナイフの扱いに慣れていない人) 】
まずは1つ目最初。
● 1つ目:セルの内容が「チャラ男」である
間はナイフでぶっ刺して「×」を付けてやっつける。
条件判断は【前】
最初に、セル(3,4)つまり、
D列3行の値が「チャラ男」かどうか
判断します。
チャラ男ですので、「×」でやっつけます。
Offsetで一つ右に移動します。
そこでもセルの値がチャラ男かどうか
判断します。
その繰り返しで、
最後のチャラ男までやっつけます。
Sub ループWhile前判断()
Cells(3, 4).Select
Do While ActiveCell.Value = “チャラ男”
ActiveCell.Value = “×”
ActiveCell.Offset(0, 1).Select
Loop
End Sub
こんな感じでやっつけられました。
● 2つ目:セルの内容が「チャラ男」である間は
ナイフでぶっ刺して「×」を付けてやっつける。
条件判断は「後」
「後」判断は【ナイフの扱いに慣れていない人】を
イメージして下さい。
「チャラ男」かどうか判断しないで、
ナイフでぶっ刺してしまいます。
その後に「あ~~、チャラ男じゃなくて、
ブリッコだった」と気づいて後悔します。
つまり、最初にセル(6,4)、
D列6行を×にしてしまいます。
×にした後で条件判断をします。
”ブリッコ”ですので、条件に当てはまりませんが、
すでに×でやっつけられています。
Offsetで一つ右に移動します。
今度はその失敗でナイフの扱いに
慣れてきたので、
そこでもセルの値がチャラ男かどうか
判断出来ます。
その繰り返しで、
最後のチャラ男までやっつけます。
こんな感じでやっつけられました。
Sub ループWhile後判断()
Cells(6, 4).Select
Do
ActiveCell.Value = “×”
ActiveCell.Offset(0, 1).Select
Loop While ActiveCell.Value = “チャラ男”
End Sub
ここからUntilに入ります。
ルールとして、
「宝石箱」は攻撃しません。
チャラ男、ブリッコ、オツボネおば、騙す人、悪い人達を
攻撃します。
● 3つ目:セルの内容が「宝石箱」が現れるまで、
「×」を付けてやっつける。
条件判断は前
最初に、セル(10,4)つまり、
D列10行の値が「宝石箱」かどうか
判断します。
まだ、「宝石箱」が現れていないので、
ナイフを振り回して「×」でやっつけます。
Offsetで一つ右に移動します。
移動してもまだ、「宝石箱」になっていないので、
やっつけます
その繰り返しで、
最後に「宝石箱」になった所で攻撃をやめます。
こんな感じでやっつけられました。
Sub ループUntil前判断()
Cells(10, 4).Select
Do Until ActiveCell.Value = “宝石箱”
ActiveCell.Value = “×”
ActiveCell.Offset(0, 1).Select
Loop
End Sub
最後です。
● 4つ目:セルの内容が「宝石箱」が現れるまで、
「×」を付けてやっつける。
条件判断は後
条件判断が「後」なので、またまた
【ナイフの扱いに慣れていない人】になります。
セル(13,4)つまり、
D列13行の値が「宝石箱」かどうか
判断します。
宝石箱はやっつけないというルールですが、
扱いに慣れていない為、最初の宝石箱を
やっつけてしまいます。
そこで、あ~~失敗したと後悔します。
同じ失敗をしないように、気を付けた所で、
次に進んで、
まだ、次の「宝石箱」になっていないので、
「×」でやっつけます。
Offsetで一つ右に移動します。
移動してもまだ、「宝石箱」になっていないので、
やっつけます
その繰り返しで、
最後に「宝石箱」になった所で攻撃をやめます。
Sub ループUntil後判断()
Cells(13, 4).Select
Do
ActiveCell.Value = “×”
ActiveCell.Offset(0, 1).Select
Loop Until ActiveCell.Value = “宝石箱”
End Sub
お疲れ様でした。
今日はここまでです。
メインメニューに戻る
VBA自作サンプルプログラム集に戻る
基本情報技術者試験トップへ
取りあえず事務職で働きたいから手っ取り早くExcel教えてくれ