プログラミングの勉強 その4変数でセル指定

年収アップの方法

エクセル表のセルの指定(選ぶ)に変数を使うと、人間の代わりにプログラムに働いてもらいやすくなります。

 

これまでの勉強では、

cells(1,1).value

のように、セルを数字で指定していました。

 

 

これを変数にすると、便利になるのでトライしてみましょう。

その前に、このページから読み始めるとわからないと思うので、勉強を始める人は

 

プログラミングの勉強のコツ【これなら続けられる】

 

から読む事をオススメします。

モチベーションを高めたい人は

 

独学でプログラミングの勉強をして年収が数倍に上がった件

 

から読む事をオススメします。

スポンサーリンク
スポンサーリンク

セルを変数で指定してみる

コピペ用です

Dim hensuu As Long

hensuu = 15

Cells(hensuu, 2).Select

 

過去の勉強と同様に、緑の部分をコピペしてください。

 

hensuu = 15

で、15が入っています。

 

 

プログラムを実行すると

 

Cells(15,2)を選択して終わります。

 

エクセル表で、選択中のセルを示す緑の枠が

Cells(15,2)にあるのが確認できます。

 

セルを変数で指定して値を操作する

 

コピペ用です

Dim hensuu As Long

hensuu = 1

If Cells(hensuu, 1).Value = “” Then

    Cells(hensuu, 2).Value = “空白です”

End If

 

先ほどは

.Select

でセルを選択するだけでしたが、今度は

 

.Value

で、値を操作します。

 

エクセル表には何も記入しないでください。

 

プログラムを見ていきましょう。

hensuu = 1

で、hensuuに 1 を入れています。

 

次にIf文の意味を解説します。

hensuu には、 1 が入っているので

 

Cells(hensuu,1)=Cells(1,1)

です。

 

もし Cells(1,1) が 空白だったら

Cells(1,2) に 空白です という文字を表示します。

 

Cells(hensuu, 2).Value = “空白です”

となっていますが

“←は、プログラム上で文字を扱うためのものなので、表には出てきません。

 

同じIf文が使える

今度はエクセル表の

Cells(2,1) に、

東京都

と入力してください。

 

 

 

コピペ用プログラムです。

Dim hensuu As Long

hensuu = 1

If Cells(hensuu, 1).Value = “” Then

    Cells(hensuu, 2).Value = “空白です”

End If

hensuu = hensuu + 1

If Cells(hensuu, 1).Value = “” Then

    Cells(hensuu, 2).Value = “空白です”

End If

 

 

このプログラムの赤枠のIf文は、全く同じです。

 

一つ目の赤枠の上で、hensuuに 1 を入れています。

赤枠内では、セルは1行目の値が操作されています。

 

結果は、先ほどと同じく

Cells(1,2) に 空白です と表示されます。

 

二つ目の赤枠の上にある

 

hensuu = hensuu + 1

 

でhensuuに+1をして、hensuuに 2 が入った状態です。

 

If文が実行されて

Cells(2,1)

には、東京都 という文字が入っていて空白ではないから

 

Cells(2,2)には、

空白です の文字は表示されません。

 

実行結果はこのようになります。

Cells(1,1)

が空白なので、cells(1,2)に 空白です の文字が表示されています。

 

値のチェック

このプログラムは、入力漏れをチェックするものです。

 

例では空白か否かだけですが、文字数や内容のチェックなど、人間がチェックするのと同じ条件をセットできます。

間違っていたら、セルに色を付けるなどもできます。

 

エクセル表の機能で、入力の段階でガチガチに制約をかけると、使い勝手が悪くなって利用者が面倒になります。

 

なので、入力した後に機械にチェックをさせています。

こういう気の使い方をすると、職場で皆が使いやすいものが作れます。

 

変数で操作するメリット

上記のプログラムでは、同じIf文を2回書いています。

もし1000のデータを扱うなら、If文を1000回書くことになります。

 

そうすると面倒なので、セルを変数で操作するメリットがありません。

そういう時に使うのが、ループ文という繰り返しの処理です。

 

これを使うと、If文は1回だけ書けば良いので、プログラムの記述がシンプルで楽になります。

ループ文は人間の思考と離れているので、少しとっかかりにくいです。

 

また別の機会に解説します。

今回は、セルを変数で操作する事だけ知っていただけば大丈夫です。