VBA別館・Python別館

64464

オプションボタンをユーザーフォーム上で使う(完) - Tak

2018/08/29 (Wed) 17:35:21

オプションボタンはユーザーフォーム上で使うことが多いので、その練習をしてみましょう。


① ユーザーフォームを開く

・開発ーVisualBasicと行くと自動的にVBAのデザイン画面が出てきます。

・この後Userformを追加し、OptionButtonやCommandButtonも追加してプログラムを作ります。

どんなプログラムを作るかが、最初にやるべき仕事です。 明日までに考えておきます。

Re: オプションボタンをユーザーフォーム上で使う - Tak

2018/08/30 (Thu) 08:27:25

② 何をするかの列挙

何といっても何をどうしたいかが決まらないといけませんので、取敢えず次のようなことをするようにします。

・sheet上からCommanButtonクリックで、userformを開く

・Userform上のoptionButton1をクリックしたら、MsgBoxで「今OptionButton1を押しました」と表示させる

・同じことをOptionButton2,3でも行う

非常に簡単な処理ですが、これがスイスイ出来るようになると、VBAのこれからが楽になります。

ではまずSheetにCommandButtonを張り付けます。

このCommandButtonが役に立つには、まずUserform1にOptionButtonを張り付けてからですので、暫く後です。

Re: オプションボタンをユーザーフォーム上で使う - Tak

2018/08/30 (Thu) 13:26:28

③ sheet上にCpmmandButtonを張り付けます

・開発-Visual Basic

・CommandButtonマークをクリック

すると図の様になります。 このあとonoCommandButton1をクリックするとUserForm1が開くはずですが、まだUserFomを作成していないのでまだ開きません。

UserFrom1作成は次回。

Re: オプションボタンをユーザーフォーム上で使う - Tak

2018/08/30 (Thu) 13:34:19

④ UserForm1を作ります

図に従い、VBA枠を表示させます。 開発-Visual Basicとやればこの枠はが表示されます。

そしてその赤枠の中のユーザーフォームをクリックして下さい。 次回に続く。

Re: オプションボタンをユーザーフォーム上で使う - Tak

2018/08/30 (Thu) 19:06:46

⑤ UserForm1を挿入します

図のように出てきます。 皆さんのExcelの使用条件で必ずしも同じ図にはなりませんが、Excelの陰に隠れてたり、ユーティリティも出てたりします。

Re: オプションボタンをユーザーフォーム上で使う - Tak

2018/08/31 (Fri) 07:21:13

⑥ UserForm1のプロパティーを変更

・ShowModalのTrueをFalseにする-->これでフォームが開いているときにでも、シートへのアクセスができます(青枠)

・必要なら名前(Caption)も好きに変更してください(青枠)

Re: オプションボタンをユーザーフォーム上で使う - Tak

2018/08/31 (Fri) 07:38:36

⑦ UserForm1へOptionButton、CommandButtonを載せます

・ツールボックスをクリック(茶色枠)

・オプションボタンを3個載せる(赤枠)

・コマンドボタンを2個載せる(青枠)

図の様になります。

これで、SheetからUserFormを呼びだす準備ができました。 どうやって呼び出すかを考えてみて下さいね。

Re: オプションボタンをユーザーフォーム上で使う - Tak

2018/08/31 (Fri) 15:41:20

⑧ Userformを呼び出すcodeです

Option Explicit

Private Sub CommandButton1_Click()
 UserForm1.Show <--書くのはこれだけです。
End Sub

これらは決まり文句ですから、カードでも作って書き留めておきましょう。

はい、図の様にオプションボタンが3個、コマンドボタンが2個張り付いているユーザーフォームが表示されましたね。

Re: オプションボタンをユーザーフォーム上で使う - Tak

2018/09/01 (Sat) 15:03:31

⑨ codeを書きましょう

図の様に;

・開発-デザインモード

・コマンドボックスをクリック

・コードの表示をクリック

するとVBA枠が表示されます。

Re: オプションボタンをユーザーフォーム上で使う - Tak

2018/09/01 (Sat) 15:12:59

⑩ ⑨の続き

まだ図の赤枠部分しか書かれておりません。 これがUserform1を開くためのcodeです。

Sheetに或るCommandButton1の働きは、UserForm1を表示するだけの役目ですので、これで終わりです。

次回はUserFormへ場所が変わりますので、そこのパーツの処理をそれぞれ書きます。

名前
件名
メッセージ
画像
メールアドレス
URL
文字色
編集/削除キー (半角英数字のみで4~8文字)
プレビューする (投稿前に、内容をプレビューして確認できます)

Copyright © 1999- FC2, inc All Rights Reserved.