第2講 はじめてのVBA体験
第5話 コード(プログラミングの文章)の2行目解説
プログラムコード再掲
入門
Private Sub CommandButton1_Click()
   Range("A6") = "VBAのプログラミング体験"
End Sub
Private Sub CommandButton2_Click()
   Range("A6") .Select
   Selection.ClearContents
   Range("A1").Select
End Sub

2行目以降解説していきましょう。
   Range("A6") = "VBAのプログラミング体験"
のRange("A6")は、
エクセルシートの初心者セルA6を意味します。
ですから2行目
   Range("A6") = "VBAのプログラミング体験"
は、セルA6を選択してそこに『VBAのプログラミング体験』という内容を入力しなさいという意味になります。
エクセルの場合文字は""で挟むことになっていました。
VBAでも同じです。
ただの数字5を入力する場合には
   Range("A6") = 5
です。ただし、数字を入れる場合には必ず半角にしてください。
   Range("A6") = 5
だとエラーします。全角5の方は、数字でなく文字であると解釈されますので、
   Range("A6") = "5"
としなければならないのです。
プログラミングの世界では、数字の5と文字としての5を区別しますので、
注意が必要です。
尚、セルの選び方にはCells(6,1)というものもあります。
これもセルA6を意味します。
エクセルの場合、列・行の順でセルを表示しますが、
Cellsでは、行・列の順になり、アルファベットは数字になります。
この列・行と行・列が反対になっていることで、頭が混乱しますが、本講義では
後の繰り返し処理に向いているCellsの方を主に使います。
ですから、
   Range("A6") = "VBAのプログラミング体験"

   Cells(6, 1) = "VBAのプログラミング体験"
としてもよいわけです。皆さん、タイピングし直して実行ボタンを押して実験してみてください。
基礎

5行目を解説しましょう。
   Range("A6") .Select
.は『の』を意味し、Selectは選択を意味します。
したがいまして、5行目の意味はセルA6を選択せよです。
6行目
   Selection.ClearContents
は選択したものを、クリアしなさいの意味です。
クリアはきれいにする、消去するという意味です。

7行目
   Range("A1").Select
はA1を選択しなさいですが、何故これがあるのでしょうか。
試しにこれを削除して、
Private Sub CommandButton2_Click()
   Range("A6") .Select
   Selection.ClearContents
End Sub
として、消去ボタンを押してみてください。
vba
Private Sub CommandButton2_Click()
   Range("A6") .Select
   Selection.ClearContents
   Range("A1").Select
End Sub
の場合は
2013でした。
要するに、
Private Sub CommandButton2_Click()
   Range("A6") .Select
   Selection.ClearContents
End Sub
の場合は、A6が選択状態になっているのに対して
Private Sub CommandButton2_Click()
   Range("A6") .Select
   Selection.ClearContents
   Range("A1").Select
End Sub
の場合は、もう一度A1を選択し直して、A1セルが選択された状態で終わっているわけです。
ですから7行目
   Range("A1").Select
はなくてもよいのですが、見栄えの問題です。
仮にC264あたりが選択されていると、そこが選択されて
2010という状態で終わり、
実行ボタンなどが見えなくなってしまいます。
それを防ぐために
   Range("A1").Select
が入れてあるのです。

第4話へ 第6話へ



トップ


初心者のためのc++ vc++ c言語 入門 基礎から応用までへ
初心者のための excel 2007 2010 2013 vba 入門 基礎から応用まで
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
vb講義トップへ
VB講義基礎へ
専門用語なしのC++入門へ
専門用語なしのJava入門へ
専門用語なしのVBA入門

数独のページ
魔方陣のページ
数学研究室に戻る
本サイトトップへ