#menu(menu-pc):

***フォーム コントロールの使い方 [#x9288ee1]

Excel2007(エクセル2007)基本講座:フォーム 
コントロールの使い方

Excel2007ではフォームは開発タブから利用できます。     
このページはフォームコントロールの使い方を説明しています。

#contents
***開発タブを表示する [#v6b28a90]

Officeボタンをクリックし、[Excelのオプション]ボタンをクリックします。       
[基本設定]の「[開発]タブをリボンに表示する」にチェックを入れます。

&ref(form01.png,nolink,画像の説明,100%);
[開発]タブの[コントロール]グループにある[挿入]から[フォームコントロール]を選択できます。

&ref(form02.png,nolink,画像の説明,100%);
***フォームについて [#zf3f0ef1]

チェックボックスやオプションボタンなどをシートに貼付けて利用する方法の一例です。       

ActiveX コントロールにも同じようなボタンがありますが、ここで使用するのはフォーム コントロールです。

【完成例】

C:G列にチェックボタンなどの入力値を選択して、[入力]ボタンでSheet2へ入力します。         

A:B列は作業列として使用しています。これらはマクロでの処理を極力簡易にするためにシートでほとんどの処理をしています。       

&ref(form22.png,nolink,画像の説明,80%);
***オプションボタン    [#rd2d8978]

複数の選択肢から 1 つだけを選択するときに使用します。     
グループボックスを利用してグループ別に制御することが出来ます。     
【操作方法】     

[開発]タブの[コントロール]グループにある[挿入]を選択して、フォームコントロールの[オプションボタン]を選択します。

&ref(form03.png,nolink,画像の説明,100%);

シート内をクリックすると、オプションボタンが配置されます。


&ref(form04.png,nolink,画像の説明,100%);

文字部分をクリックして、カーソルを表示すれば文字を修正できます。

例ではオプションボタンを2個配置し、「男性」「女性」に変更しました。


&ref(form05.png,nolink,画像の説明,100%);


この2つのオプションボタンで1セットになるのでグループ化します。
[開発]タブの[コントロール]グループにある[挿入]を選択して、フォームコントロールの[グループボックス]を選択します。
オプションボタン2個を囲むように配置します。


&ref(form06.png,nolink,画像の説明,100%);


オプションボタンの書式設定をします。       

オプションボタンを右クリックし、[コントロールの書式設定]を選択します。       


&ref(form07.png,nolink,画像の説明,100%);

リンクするセルに「B3」セルを指定します。

女性の方のオプションボタンはグループ化されているので、自動的に「B3」に設定されます。
オプションボタンのON,OFFの状態をB3セルに入力するということです。 

ここの例では2こ配置していますので、どちらがONになっているか数値が入力されます。
男性なら1,女性なら2となります。 


&ref(form06.png,nolink,画像の説明,100%);

同様に年齢の区分をオプションボタンで作成します。
リンクするセルはB6とします。
グループボックスの名前を「性別」「年齢」にそれぞれ書き換えます。


&ref(form08.png,nolink,画像の説明,100%);
***チェックボックス [#b42e6c35]

オプションのONとOFFを切り替えます。

チェックが入っている時はTRUE、入っていない時はFALSEが返ります。     

[開発]タブの[コントロール]グループにある[挿入]を選択して、フォームコントロールの[チェックボタン]を選択し、シート内へ配置します。     

チェックボタンを右クリックし、[コントロールの書式設定]を選択します。

リンクするセルはB8とします。


&ref(form09.png,nolink,画像の説明,100%);
***スピンボタン    [#y4bf16c7]

値を増減することが出来ます。

上向きの矢印をクリックすると値が増加し、下向きの矢印をクリックすると値が減少します。     

[開発]タブの[コントロール]グループにある[挿入]を選択して、フォームコントロールの[スピンボタン]を選択し、シート内へ配置します。      

設置したスピンボタンを右クリックし、[コントロールの書式設定]を選択します。

現在値6,最小値1,最大値12,変化の増分1,リンクするセルD11とします。


&ref(form10.png,nolink,画像の説明,100%);

D11セルを選択し、[ホーム]タブの[表示形式]→[その他の表示形式]からユーザー定義で「0"月"」とし、中央揃えにしました。


&ref(form11.png,nolink,画像の説明,100%);


スピンボタンでは最小値と最大値は0~30000の範囲が設定できます。     
基準を本日「TODAY()」にして、スピンボタンで日付を上げ下げするには?     

スピンボタンをC2セルに配置します。       

スピンボタンの書式設定を現在値:15000、最小値:0、最大値:30000、変化の増分:1、リンクするセル:A2 とします。

表示するB2セルには=TODAY()+A2-15000 と入力します。

B2セルの表示形式は「長い日付形式」にしています。

これで、スピンボタンの上下でA2の値が上下し、これに連動してB2の日付も上下します。


&ref(form12.png,nolink,画像の説明,100%);
***コンボボックス [#j2a6073c]

ドロップダウン リスト ボックスに項目が表示でき、選択した項目の番号が返されます。     

表示するリストをH13:H20に入力しておきます。       

[開発]タブの[コントロール]グループにある[挿入]を選択して、フォームコントロールの[コンボボックス]を選択し、シート内へ配置します。(例ではD13セルの付近へ配置しています)。 

設置したコンボボックスを右クリックし、[コントロールの書式設定]を選択します。

入力範囲H13:H20,リンクするセルB14,ドロップダウンリストの行数8とします。


&ref(form13.png,nolink,画像の説明,100%);
***リストボックス    [#nc3df598]

リストを表示し、選択した項目の番号が返されます。     

[開発]タブの[コントロール]グループにある[挿入]を選択して、フォームコントロールの[リストボックス]を選択し、シート内へ配置します。     

設置したリストボックスを右クリックし、[コントロールの書式設定]を選択します。

入力範囲H13:H20,リンクするセルB17,選択の種類を「単一選択」とします。


&ref(form14.png,nolink,画像の説明,100%);
***ボタン [#caea3569]

リストを表示し、選択した項目の番号が返されます。     

【操作手順】     

[開発]タブの[コントロール]グループにある[挿入]を選択して、フォームコントロールの[ボタン]を選択し、シート内へ配置します。

ボタン内の文字列を「入力」と書き換えます。


&ref(form16.png,nolink,画像の説明,100%);

マクロの登録ダイアログが表示されますが、この段階では登録しないので「キャンセル」ボタンで閉じます。
***数式の設定    [#z071a120]

B列に返された値をマクロのコードでそれぞれの値に変換しても良いのですが、ここでは理解しやすくするためにシート内で処理します。     

A3セル「性別」はB3の値が1なら男性、2なら女性となるようにします。
=CHOOSE(B3,"男性","女性") または=IF(B3=1,"男性","女性") 

A6セル「年齢」は同様に=CHOOSE(B6,"10~29歳","30~49歳","50歳以上")       
A8セル「振込済み」は=IF(B8,"済","未")       
A11セル「誕生月」は=D11       
A14セル「第1希望」は=INDEX($H$13:$H$20,B14)       
A17セル「第2希望」は=INDEX($H$13:$H$20,B17)     

としました。     
フォームコントロールでの選択結果がA列に返されるようになりました。

&ref(form15.png,nolink,画像の説明,100%);
***シートへの入力マクロ    [#x1813a1a]

[Alt]+[F11]でVBEを開き、標準モジュールを挿入します。


&ref(form18.png,nolink,画像の説明,100%);


標準モジュールに下記のようなコードを入力します。
A列に数式で値を返しているので、単純にA列の値をシート2へ入力するコードにしています。


&ref(form17.png,nolink,画像の説明,100%);

このマクロを「入力」ボタンに登録します。     

「入力」ボタンを右クリックし、右クリックメニューの「マクロの登録」を選択します。       

マクロの選択でマクロ「入力」を選択肢[OK]ボタンをクリックします。


&ref(form19.png,nolink,画像の説明,100%);

各項目を選択して「入力」ボタンをクリックすると、Sheet2へは下図のように入力されます。

&ref(form20.png,nolink,画像の説明,100%);
***セルの書式を整える [#tf401878]

[ホーム]タブの[塗りつぶしの色]でC2:G19セルをグレーに塗りつぶしてみました。     

また、[正方形/長方形]で塗りつぶしなしで枠線のみを描画し影の効果を付けてみました。


&ref(form21.png,nolink,画像の説明,80%);

A:B,H列が目障りなのでフォントの色を「白」にすれば見えなくなります。


&ref(form22.png,nolink,画像の説明,80%);

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS