第1講 始めようVBA!
第4話 消去ボタンとそのプログラミング
では次に消去ボタンを作ってみましょう。
赤い囲いの挿入をクリックします。
ActuveX コントロールのボタンアイコンをクリックしてください。
適当な位置でドラッグして
Cation、Font、BackColor、ForeColorなどを使い
とします。
やり方を忘れた方は、第2話に戻り確認してください。
消去ボタンが出来たら、消去ボタンをダブルクリックします。
すると自動的にVisual Basicに切り替わり
Pribate Sub Comman2_Clickができあがります。
Tabキーを押して次のようにコーティングします。
Private Sub CommandButton2_Click()
Cells(5, 1).Select
Selection.ClearContents
End Sub
そして、カーソルがPribate Sub Comman2_Click()と
End Subの間に来ていることを確認した上で、
ボタンを押します。
Alt+F11でエクセルに戻ると、となっています。
実行と消去を交互に押して、それぞれのボタンの機能を確認しましょう。
実行でコメントが出て、消去で消されています。
さらに、次のコードを加えましょう。
Private Sub CommandButton2_Click()
Cells(5, 1).Select
Selection.ClearContents
Cells(1, 1).Select
End Sub
今度は消去ボタンを押すと
A5の内容が消えて、A1にカーソルが来ています。
コードの意味を説明しましょう。
Cells(5, 1).SelectはセルA5を選びなさいの命令です。
Selection.ClearContentsは選んだものの内容を空にしなさいの命令です。
そして、Cells(1, 1).SelectはA1を選びなさいです。
ですから、A5の内容が消され、最後A1が選択状態になったわけです。
Cells(1, 1).Selectはなくてもよいわけですが、見栄えを変えているだけです。
再び実行と消去を繰り返し押してみましょう。
尚、コーティングは
Private Sub CommandButton2_Click()
Cells(5, 1).Select
Selection.Delete
Cells(1, 1).Select
End Sub
としても現象としては同じになりますが、
実はこちらはA5を削除しています。
それに対して、Selection.ClearContentsはセルの内容のクリアです。
実行ボタンを押して、A5で右クリックすると、
サブメニューに
削除と数式と値のクリアがありますが、
どちらを選んでもA5の内容は消えます。
この削除に対応するのがSelection.Deleteであり、
この数式と値のクリアに対応するのがSelection.ClearContentsです。
違いは何かを確認するために、
A6に実験とキーボードから入力してください。
そして、
Private Sub CommandButton2_Click()
Cells(5, 1).Select
Selection.Delete
Cells(1, 1).Select
End Sub
の場合と
Private Sub CommandButton2_Click()
Cells(5, 1).Select
Selection.ClearContents
Cells(1, 1).Select
End Sub
の場合で消去ボタンの働きがどのように違うか確認しましょう。
Private Sub CommandButton2_Click()
Cells(5, 1).Select
Selection.Delete
Cells(1, 1).Select
End Sub
の場合は、実験が1個上にずれてしまいました。
理由は、A5のセルを削除したからです。
それに対して
Private Sub CommandButton2_Click()
Cells(5, 1).Select
Selection.ClearContents
Cells(1, 1).Select
End Sub
は
実験はずれません。
A5の内容をクリア(空にする)しただけだからです。
ClearContentsの場合は他のセルに対して影響を与えませんが、
Deleteは影響を与えてしまいます。
ですからDeleteを使用する場合は、慎重にやらなければなりません。
では問題です。
プログラムコードを改良して、
実行ボタンを押すととなり、
消去押すと
となるようにしましょう。
New! eclipse c++ 入門
vc++講義へ
vb講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座へ
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
専門用語なしの C言語 C++ 入門(Visual C++ 2010で学ぶ C言語 C++ 入門)
専門用語なしの excel vba マクロ 入門 2013 2010 2007 対応講義 第1部
数学研究室に戻る