Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

Excelのワークシートに交通費を入力するプログラムの作成

InputMan for .NET 4.0Jを使ったExcel入力フォームの作成

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2006/06/30 20:00

 InputMan for .NET 4.0J Windows Forms Editionは、VSに組み込まれている標準コントロールよりも、さらに進んだ機能を持ったコントロール群を提供するコントロールパックです。そこで、今回この中からエディット、カレンダー、電卓、コンボボックス、コンテナの各コントロールを使い、Excelのワークシートに交通費を入力するプログラムを作成してみました。フォームから氏名や日付、交通機関の種類、金額などを入力すると、その内容をExcelのワークシートに転送します。

目次
入力内容をExcelに転送/日付はカレンダーから入力する
入力内容をExcelに転送/日付はカレンダーから入力する
電卓で計算して入力することも可能
電卓で計算して入力することも可能

はじめに

 「InputMan for .NET 4.0J Windows Forms Edition」(以降、InputMan for .NET 4.0J)は、Visual Studioに組み込まれている標準コントロールよりも、さらに進んだ機能を持つコントロール群を提供するコントロールパックです。

 そこで、今回この中からエディット、カレンダー、電卓、コンボボックスのコントロールを使い、Excelのワークシートに交通費を入力するプログラムを作成してみました。フォームから氏名や日付、交通機関の種類、金額などを入力すると、その内容をExcelのワークシートに転送します。

 InputMan for .NET 4.0Jの使い方はとても簡単で、付属のインストーラでコンピュータにインストールすれば、ツールボックスにコントロールを追加するだけですぐに使用できます。

対象読者

 Visual Basic 2005を使ってプログラムを作ったことのある人、Excdl VBAが使える人が対象です。

必要な環境

プログラム実行時の注意事項

 本稿の実行ファイル(バイナリファイル)を動かすには、zipファイルに同梱してある以下のファイルが必要になります。

  1. Inputman.exe(実行ファイル)
  2. GrapeCity.Win.Input.v40.dll
  3. Interop.Excel.dll
  4. ja\GrapeCity.Win.Input.v40.resources.dll
  5. 外出交通費精算.xls

 1.から3.のファイルは、同じフォルダに格納します。4.はそのフォルダ内にフォルダ「ja」を作成し格納します。これらは、本稿で扱っているInputMan for .NET 4.0Jのコンポーネントを格納しているランタイムライブラリです。

 また、5.のファイルをドライブCのルートにおいてください。データを格納するExcelのブックです。

GUIの作成

 GUIのほとんどは、InputMan for .NET 4.0Jのコントロールを使用します。

GUIの使用コントロール
GUIの使用コントロール

コントロールの追加

 InputMan for .NET 4.0Jをインストールしたら、ツールボックスに専用のタブを作成し、InputMan for .NET 4.0Jのコンポーネントを追加します。追加するコンポーネントは、[.NET Frameworkコンポーネント]の[名前空間]が「GrapeCity.Win.Input」のコンポーネントです。

GrapeCity.Win.Input名前空間のコンポーネントを追加する
 GrapeCity.Win.Input名前空間のコンポーネントを追加する

 データの入力部分は、まずコンテナコントロールを配置し、そこにエディットとコンボを配置します。

コンテナの機能

 コンテナコントロールを使うと、ラベルを使わずに各コントロールにキャプションを設定できます。

 各コントロールの[キャプションスタイルの設定]を選ぶと、キャプションの配置位置やテキストのエフェクトを設定できるようになります。

プロパティにキャプションが追加される
プロパティにキャプションが追加される

エディットのプロパティ設定

 エディットは、ShowHistoryプロパティをTrueにしておきます。こうすると、エディットに1度入力した文字列がリスト表示され、リストから選択して入力することができる入力履歴機能を使うことができます。

エディットの入力履歴機能
エディットの入力履歴機能

 また、Formatプロパティを使用すると、エディットへの入力制限を設定できます。例えば、[氏名]入力欄は全角文字のみ受け付け、[金額]欄は半角の数字しか受け付けないようにすることができます。

エディットの入力制限の設定
エディットの入力制限の設定

コンボのプロパティ設定

 コンボは、ドロップダウンリストとして使用します。また、リストの組み込みはコレクションエディタで行います。なお、InputMan for .NET 4.0Jのコンボは、リストに文字列だけでなくアイコンも組み込めますので、Visual Studio標準のImageListコントロールにアイコンを組み込み、コンボのImageListプロパティに設定すると、このアイコンを使うことができます。

リストにアイコンを表示
リストにアイコンを表示

カレンダーのプロパティ設定

 カレンダーは、日付をマウスで入力できるコントロールです。いろいろなスタイルを選べ、CalendarDimensionプロパティで、2ヶ月以上のカレンダーを同時に表示させることができます。

 年月日の表示を和暦で表示させるには、HeaderFormatプロパティに「ggg e年 M月」という書式を設定し、UseHeaderFormatプロパティを Trueに設定します。

 カレンダーと電卓は重ねて配置しておきます。

電卓のプロパティ設定

 電卓コントロールは、数値の入力に電卓の計算結果を使うことができるコントロールです。例えば、交通費を特急料金と普通運賃を加算して計上する場合など、合計金額だけを使いたい場合に、入力コンポーネントの横に電卓を表示できる優れものです。

 普通の電卓として使用するのであれば、特にプロパティウィンドウでの初期設定は必要ありません。すぐに使える手軽さが特徴です。

バルーンチップのプロパティ設定

 BaloonTipコントロールは、ツールチップをバルーン形状で表示するコントロールです。バルーン内にラジオボタンやOKボタンを配置できる、一種のコンテナコントロールの機能を持った、変わったコントロールです。

バルーンチップを編集するエディタ
バルーンチップを編集するエディタ

 ここでは、普通のツールチップとして使用しますので、バルーンテキストと配色だけ設定します。バルーンチップは、各コントロールそれぞれに設定します。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 瀬戸 遥(セト ハルカ)

    8ビットコンピュータの時代からBASICを使い、C言語を独習で学びWindows 3.1のフリーソフトを作成、NiftyServeのフォーラムなどで配布。Excel VBAとVisual Basic関連の解説書を中心に現在まで40冊以上の書籍を出版。近著に、「ExcelユーザーのためのAccess再...

バックナンバー

連載:ComponentZine(InputMan)

もっと読む

All contents copyright © 2006-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5