pickup

目次

ユーザーフォームで楽々入力

こんにちは。伊川(@naonaoke)です。

今回は、ユーザーフォームの作成方法について紹介します。

ユーザーフォームは、入力を楽にすることだけではありません。

ユーザーフォームに様々なVBAを仕込むことで、色々な処理ができるようになります。

問題提起

(株)IKAWAの柄久 瀬瑠子(エクセルコ)は、下記の依頼を受けました。
・データ入力を行うときに、入力漏れが多い。
・データ入力の漏れが内容にしてほしい。
どのような方法がいいだろうか?

解決策

回答
sesuo2.jpg
・ユーザーフォームを作成して、入力をカンタンにする。

 

スポンサーリンク

ユーザーフォームを作成する

作成手順 その1 実際のユーザーフォームを確認する


上の図のようなユーザーフォームを作成します。


「開発タブ」⇒「Visual Basic」を選択します。


「挿入」⇒「ユーザーフォーム」を選択します。


ユーザーフォームの原形が完成しました。

作成手順 その2 原形のユーザーフォームを装飾する



今回は、このラベル、テキストボックス、コンボボックスを使って装飾します。


上の図のようにラベル、テキストボックスを配置します。

作成手順 その3 文字の大きさを装飾する


Fontで、文字の大きさ、文字の種類を決めることができます。


作成手順 その4 コンボボックスを作成する。

店舗と客性別が、コンボボックスになっています。


 

Private Sub UserForm_Initialize()

With ComboBox1
    .AddItem "渋谷"
    .AddItem "新宿"
    .AddItem "池袋"
    .AddItem "銀座"
    .AddItem "六本木"
 
End With


With ComboBox2
    .AddItem "男性"
    .AddItem "女性"
    
 
End With

End Sub

ユーザーフォームや、VBAでコンボボックスを作成するのは、結構面倒です。

作成手順 その5 登録ボタンに、VBAを仕込んで、WorkSheetへ反映させる


詳しくは、上の記事を参照してください。

 

Private Sub CommandButton3_Click()

With Cells(Rows.Count, 1).End(xlUp)
.Offset(1, 0) = TextBox1
.Offset(1, 1) = ComboBox1
.Offset(1, 2) = TextBox2
.Offset(1, 3) = TextBox3
.Offset(1, 4) = TextBox4
.Offset(1, 5) = TextBox5
.Offset(1, 6) = TextBox6
.Offset(1, 7) = ComboBox2
.Offset(1, 8) = TextBox7
.Offset(1, 9) = TextBox8

End With
Unload UserForm1

End Sub

これで、完成です。

スポンサーリンク

ここがポイント

 

ここがポイント
Function8.png
Excelのユーザーフォームを作成するのは、ACCESSのフォーム作成より面倒です。しかし、汎用性があるので使いこなすと便利です。

 

スポンサーリンク

まとめ

今回のまとめ
sesuko3.jpg
ユーザーフォームを作成すると、入力漏れを無くすことができます。それほど難しくはないので、ぜひみなさんのスキルにしてください。





今回のサンプルファイルは、No46です。

毎日の業務が、3時間短縮できます

わからない事を延々と考えるのは、無駄です。

  • なんで作動かないの?
  • もうやだ!VBAなんか嫌い!
  • ネットで調べても情報がない!

必ず作動するコードが、ここにあります。

スポンサーリンク

Twitterでフォローしよう

おすすめの記事