fc2ブログ

超入門Excel関数・VBA

エクセルVBA

・基本

基本

マクロの記録

マクロの実行

記録したマクロの統合・呼び出しを行う

VBA編集画面に関して

VBA編集画面のツールバーの設定

オプション設定に関して

処理の新規作成・削除、保存と読込に関して

標準モジュールとプロシージャについて

処理のテスト方法(ステップイン)

処理のテスト方法(入力カーソルを使用する)

処理のテスト方法(再生と停止)

イミディエイトウィンドウに関して


・セル関連

セルの指定(アクティブと選択の違い)

セルの指定(範囲指定)

選択の基本2

選択範囲を追加する

セルへの値入力の基本1

セルへの値入力の基本2

移動の基本

情報を取得する

コピー、切り取り、貼り付け

挿入

選択の応用

空白セルに移動する

範囲内に空白以外のデータがあるかを調べる


・変数関連

基本 / 宣言の基本 / 宣言の基本2 / 宣言の基本3

変数型の詳細 / 変数の重要な話

計算をする / Option Explicitの必要性


・If、Select分岐関連

If分岐 基本 / Select分岐 基本


・ループ処理関連

基本

Do Until(成り立つまでループ)

Do While(成り立つ間ループ)

Do 途中判定と応用

For 基本

変数で回数を指定する

空白や指定した列、行数までの移動


・メッセージ表示関連

メッセージを表示する

文章入力に関して


・イベント関連

基本 / ブック / シート


・ファイル、フォルダ関連

同じ箇所にフォルダを作成する


・関数関連

Fix関数


・その他

ユーザー関数 volatileの注意点

オフセットとセルの結合に関して 参照する時等

オフセットとセルの結合に関して 移動する時


・実践

アンケートシートを作成する1 / ←2

←3 / ←4

VBAユーザーフォーム

・基本

基本


埋め込み型

・フォームコントロール

ボタン

コンボボックス

リストボックス

チェックボックス

オプションボタン

スピンボタン

スクロールバー

入力フォームを作ってみる(概要説明)

入力フォームを作ってみる(氏名、管轄)

入力フォームを作ってみる(売上集計日)

入力フォームを作ってみる(商品情報)

入力フォームを作ってみる(実データの入力範囲)

入力フォームを作ってみる(登録処理の作成)

入力フォームを作ってみる(仕上げ)


表示型

・基本

基本(フォームの新規作成方法)

コントロールの位置とサイズ調整方法

複数のコントロールの位置とサイズ調整方法

コントロールのレイヤー設定

コントロールに処理構文を作成する


・コントロール

スピンボタン


・イベント

基本

AfterUpdate(入力内容の確定直後)

BeforeUpdate(入力内容の確定直前)

Change(内容変更時)

Change(Tab-Multi)

Click(マウスクリック時)

Enter(フォーカス取得時)

Exit(フォーカス移動直前時)

Initialize(フォームの起動時)

QueryClose(フォームの終了時)

その他1 / その他2


・プロパティ

基本

(オブジェクト名)(コントロールの名前)

AutoTab(選択状態の自動更新)

BackColor(背景色)

BorderColor-BorderStyle(枠線の色と表示)

Caption(表示文字列)

ControlSourse(リンクさせるセル)

ControlTipText(ポップアップの文字列)

Enabled(操作の有効無効)

EnterKeyBehavior(Enterキーの動作)

Font-Forecolor(表示文字列の色と種類)

Height-width(高さと幅のサイズ)

Left-Top(表示位置)

Locked(編集の有効無効)

MaxLength(文字数の制限数)

MultiLine(改行の有効無効)

ScrollBars(スクロールバーの表示設定)

ScrollHeight-ScrollWidth(スクロール可能な範囲)

ShowModal(ユーザーフォームの操作方法)

SpecialEffect(枠線の種類)

StartUpPosition(ユーザーフォームの表示位置設定)

TabIndex-TabStop(選択の順番と有効無効)

Tag(識別用設定値)

TakeFocusOnClick(クリック時のフォーカス取得)

TextAlign(文字列の横揃え位置)

Visible(表示、非表示)

Zoom(表示倍率)


・作成例

フォームの範囲外をスクロールバーで表示する

オプションボタンで選択されたものを見つける

選択項目によって説明文を切り替える

フォームの自動サイズ調整をする

コントロールのフォーカスを移動する

モーダレスフォームの処理実行分岐をする

選択項目によって説明文(ラベル)を切り替える

テキストボックスなどに、使用者に値を入力してもらう際
ある程度の操作説明が表示されていると
使用者に使いやすくなります

とはいえ、説明文をいれるとなると
コントロールの置き場所に困ってきます

コントロールごとに、説明文を作成していては
2倍の範囲が必要になるようなものだからです

そこで、ラベルコントロールに説明文を記載し
その説明文を選択しているコントロールによって
表示を切り替える
ことにより
スペースの確保ができます


Private Sub TextBox1_Enter()
Label1.Caption = "1つ目のテキストボックスを選択中"
End Sub
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Label1.Caption = ""
End Sub
Private Sub TextBox2_Enter()
Label1.Caption = "2つ目のテキストボックスを選択中"
End Sub
Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Label1.Caption = ""
End Sub
Private Sub TextBox3_Enter()
Label1.Caption = "3つ目のテキストボックスを選択中"
End Sub
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Label1.Caption = ""
End Sub

選択項目によって説明文(ラベル)を切り替える
3つのテキストボックスがあり、それを選択すると
ラベルの説明文が切り替わっていく処理です


Private Sub TextBox1_Enter()
Enterは、このコントロールにフォーカスが来たとき
つまり選択されたときに発生するイベントです

Label1.Caption = "1つ目のテキストボックスを選択中"
選択されたときに、Label1のCaptionを切り替えます
Captionは表示される文字列です

そして、そのままでは当然ラベルはその文字列が表示されたままです
表示をクリアする処理も作ってあげましょう


Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Exitは、このコントロールのフォーカスが抜けたときに
発生するイベント
です

ここで、ラベルの表示をクリアします

Label1.Caption = ""
""ということは、空白となるのでクリアとなります


あとは、テキストボックスの数だけ同じ処理を作成します
切り替える文字列を任意のものに変更すればいいだけですね

この処理はかなりめんどくさいです
コントロール全てに2つずつイベント入れていかなければいけませんので・・・
スポンサーサイト



トラックバック

http://daigorosan.blog129.fc2.com/tb.php/176-78c8faf2



 | トップに戻る | 

最新コメントリスト


だいごろリンクリスト


トップに戻る

Powered by FC2ブログ

Copyright © 田中大五郎のExcelVBAばなし All Rights Reserved.