Body Mass Index 判定プログラムを作る。

Slides:



Advertisements
Similar presentations
1 情報基礎 A 第 9 週 プログラミング入門 VBA の基本文法 1 準備・変数・データの入出力 徳山 豪・全 眞嬉 東北大学情報科学研究科 システム情報科学専攻 情報システム評価学分野.
Advertisements

Windows 環境から SAS を使う 長野 祐一郎 1. データのダウンロード 2. データの加工 3. プログラムの作成 4.TeraTerm によるプログラムの実行 5. 処理結果の確認 6.SAS のデータ処理を概観 今回の授業では、 Windows 環境で作成されたデータを.
情報処理 第9回第9回第9回第9回. 今日の内容 Excel の起動と画面構成 –Excel の起動 –Excel の画面構成と基本用語 データの入力 – 文字の入力 – 数値の入力 – 日時の入力 – オートフィル.
情報処理 第9回第9回第9回第9回. 今日の内容 Excel の起動と画面構成 –Excel の起動 –Excel の画面構成と基本用語 データの入力 – 文字の入力 – 数値の入力 – 日時の入力 – オートフィル.
情報基礎実習 I (第3回) 木曜4・5限 担当:北川 晃. プログラミング演習 2 つの数を入力し,「計算」ボタンをクリック すると,それぞれの計算結果を次のように 表示するプログラムを作れ.
VBA の基礎 (Visual Basic for Application) 国立教育政策研究所 坂谷内 勝.
コンピュータと情報 第10回 Excel を使ってみる. Excel の起動 ① 「スタート」ボタンをク リック ② すべてのプログラムにマ ウスカーソルをあわせる ③ 「 Microsoft Office 」 → 「 Microsoft Excel 2003 」 にマウスをあわせて,ク リック ④.
5.制御構造と配列 場合分け( If Then Else , Select Case ) 繰返し( Do While ) 繰返しその2( For Next )
1 WORD の起動法と終了法 ● WORD の起動法 (1) デスクトップの Microsoft Word アイ コンをダブルクリックする。 * (2) 「スタート」 ― 「すべてのプログラ ム」 ― 「 Microsoft Word 」と選ぶ。 (3) Word で作成された文書があるとき は、そのアイコンをダブルクリック.
第5章 JMPのインストールと基本操作 廣野元久
情報基礎演習I(プログラミング) 第9回 6月22日 水曜5限 江草由佳
SDOPxls2xml操作説明書 version1.0
エクセル(1)の目次 起動法、ブック、シート、セル ブックの開き方 エクセル画面 マウスポインターの種類 シート数の調節 データの入力法
情報処理実習 第05回 Excelマクロ機能入門 操作マクロ入門.
PC作業の一時停止 ●「スタンバイ(サスペンド)」: メモリには電源が供給される。実行中のデータがそのままメモリに保持されるため、作業を中断した状態から 数秒で再開ができる。省電力。 操作: 「スタート」→「電源オプション」→「スタンバイ」とクリックする。 ●「休止状態」: メモリの内容をハードディスクに退避してから全デバイスの電源をオフ。作業を中断した状態からの再開ができる。ノートPCでは電池が消耗しない。
情報処理 第8回.
2017/3/2 情報処理 第8回.
Microsoft PowerPoint98 Netscape Communicator 4.06[ja]
Microsoft PowerPoint98 Netscape Communicator 4.06[ja]
情報処理 第7回.
デスクトップを画像として保存する(1) ① デスクトップの画像をクリップボードへコピーする。
2017/3/7 情報処理 第8回.
表計算ソフトを使って 万年カレンダーを作ろう!
情報基礎実習I (第7回) 木曜4・5限 担当:北川 晃.
情報理工学部 情報システム工学科 ラシキアゼミ3年 H 岡田 貴大
ACCESSによる データベースアプリケーション開発実習 日本工業大学 情報工学科 “データベースの実際” 教材
エクセル(1)の目次 起動法、ブック、シート、セル ブックの開き方 エクセル画面 マウスポインターの種類 シート数の調節 データの入力法
VBA H106077 寺沢友宏.
マルチエージェント・シミュレーション(2)
エクセル(2)の目次 セル範囲の指定方法 データの消去法 アクティブセルの移動 セル内容の複写と移動 セル幅の変更方法
マルチエージェント・シミュレーション(2)
デスクトップを画像として保存する(1) ① デスクトップの画像をクリップボードへコピーする。
エクスプローラ ● エクスプローラ: ファイルやフォルダを階層構造で表示してあり、これらを操作するのに便利。
Netscape Communicator Eudora Microsoft Word
F5 を押すか、または [スライド ショー] > [最初から] をクリックして、コースを開始してください。
9 Microsoft Word(1).
(Wed) Edited by KON IT講習会 一太郎編.
プログラミング演習3 第2回 GUIの復習.
Microsoft PowerPoint Netscape Communicator
10 Microsoft Word(1) 10.1 Microsoft Word v.Xの概要 起動 終了
情報処理A 第?回 Excelを使ってみる.
Borland Delphi 6 でビジュアルプログラミング
Excel 2002,2003基本14 テンプレートを作る.
情報処理 第8回.
オブジェクト指向 プログラミング 第二回 知能情報学部 新田直也.
第二回 VB講座 電卓を作ろう.
プログラミング応用 printfと変数.
VBA ( Visual BASIC for Application) を使えるようにする方法
単語登録(1) ◎MS-IMEの「単語登録」に、単語、語句、記号など自分がよく使うものを登録しておくと、便利である。
2019/2/24 情報処理 第13回.
3.1 PowerPoint の概要 PowerPointを使ってできること
Windows XP  ウィルスバスターインストール方法.
コンピュータ プレゼンテーション.
スイッチを入れる前に… 講習を受けていない人は、まだスイッチを入れないこと。 まず講習を受けてセットアップを行ってください 注意.
2 Macintoshの基本操作(2) 2.1 ウィンドウ フォルダなどのアイコンを開くと表示される四角い枠.
PC作業の一時停止 ●「スタンバイ(サスペンド)」: メモリには電源が供給される。実行中のデータがそのままメモリに保持されるため、作業を中断した状態から 数秒で再開ができる。省電力。 操作: 「スタート」⇒「電源オプション」⇒「スタンバイ」とクリックする。 ●「休止状態」: メモリの内容をハードディスクに退避してから全デバイスの電源をオフ。作業を中断した状態からの再開ができる。ノートPCでは電池が消耗しない。
ここに 表題や引用文が入る 背景への図の使用とキャプションへのテクスチャの適用 (中級)
エクセル(2)の目次 セル範囲の指定方法 データの消去法 アクティブセルの移動 セル内容の複写と移動 セル幅の変更方法
情報基礎演習I(プログラミング) 第11回 7月12日 水曜5限 江草由佳
C言語 はじめに 2016年 吉田研究室.
表計算ソフトを使って 万年カレンダーを作ろう!
Smart Graphic Layout トピック ステートメント 赤色の背景に画像を含む SmartArt グラフィック (中級)
基礎プログラミング演習 第6回.
電気・機械・情報概論 VBAプログラミング 第1回 2018年6月25日
情報基礎演習I(プログラミング) 第8回 6月8日 水曜5限 江草由佳
ウェブデザイン演習 第6回.
エクスプローラ ● エクスプローラ: ファイルやフォルダを階層構造で表示してあり、これらを操作するのに便利。
場合分け(If Then Else,Select Case) 繰返し(Do While) 繰返しその2(For Next)
3.テキストボックスによる データ入力 データ入力と表示のプログラム.
6.ユーザ定義型.
Presentation transcript:

Body Mass Index 判定プログラムを作る。 VBA (Visual BASIC for Applications)で、 Body Mass Index 判定プログラムを作る。 ユーザーフォームを用いた プログラムの作成  Graphic User Interface  ( GUI ) の利用法

Excelメニューバーの表示タグをクリック。 右端のマクロのアイコンをダブルクリック。 マクロ作成のダイアログが現れる。

マクロ名にBMIと入力し、作成をクリック。

VBA作成画面が現れる。  挿入 – ユーザーフォームを選択。

ユーザーフォームと、ツールボックスが出現。 プロジェクトウィンドウにも、 フォーム - UserForm 1 が追加される。

ツールボックスが表示されない場合は、フォーム上を左クリック または、表示 - ツールボックス を選択、

プロパティウィンドウで UserForm1 を選択して、 (プロジェクトウィンドウで UserForm1をクリック) BackColor - パレット を開くと、フォームの色が選択できる。 フォーム辺縁の □ マークを ドラッグすると ユーザーフォームのサイズを 変更できる。

ツールボックスの ラベル(Aの文字が記されている)を左クリックして、 マウスの左ボタンを押したままフォームの中に移動させて(ドラッグ)、左ボタンを離す(ドロップ)。 この操作を Drag&Drop という。 フォームにラベルが付く。

プロパティで Label 1 を選択して、Font の文字を左クリックすると、 このボタンをクリック。 好きな字体を選択

プロパティで Label 1 を選択して、Caption の文字を左クリックすると、 プロパティ Property : 個々のツールの属性、特性、機能

各ツールには、いろいろなプロパティが用意されている。 適当に選択して気に入ったプロパティを探してください。 このプロパティをいじると、 ラベルが浮き上がったり 凹んで表示されたりする。

同様の操作で、Labelを2個フォームに追加して (Label 2, Label 3 を UserForm 1 の上に配置) caption を Height (cm) = , Weight (kg) = と入力。 (日本語でもOK)。

ツールボックスからテキストボックス(ab|と記されたツール) を、フォームに drag & drop。 位置とサイズを調節して 身長と体重を入力する場所に 2個 配置する。 テキストボックスは数や文字を入力したり表示するツール。

ツールボックスからコマンドボタン(四角で表示されたツール) を、フォームに drag & drop。 位置とサイズを調節して適当な場所に 配置する。 コマンドボタンは、プログラムを実行させるツール。

Command Button1 のプロパティ の Caption をクリックして、その右欄に、 ボタンに表示する文字( Calc BMI など )を記入。

Command Button 1 の下に、BMI の 計算結果を 表示するための テキストボックス ( TextBox 3 ) と、 ラベル (Label 4) (Caption を BMI = にする)を配置。

Command Button 1 をダブルクリックする。 プログラムを記入するウィンドウが出現する。 CommandButton1 が クリックされたときに 実行するプログラムをここに書く。

BMI の計算式をプログラムで記述する。 TextBox1の数字を変数hに代入する式は、 h = TextBox1.text TextBox3 に BMI の数字を代入する式は、 TextBox3.text = b

正式には、実数変数 h、w、b を使用するときには プログラムの最初に  Dim h, w, b as Double と、宣言するべきだが、 Visual Basic では、変数を宣言しなくても、 変数を使うことが出来る。  宣言されずに使われる変数は、バリアント型変数 とよばれる。 プログラムが適当に変数の型を判断する。 このように小規模なプログラムの場合は問題なく 利用できるが、長いプログラムを書くときには うっかり別の変数に同じ名前の変数名を使う エラーを起しやすいので注意が必要。

プログラムの実行。三角印の実行ボタンをクリックして、 身長、体重を入力し、Calc BMI ボタンをクリック。 プログラムの終了は、四角印の実行停止ボタンをクリック。

終了ボタンの追加。Command Button2 をフォームに追加し、 プロパティ のCaption を End などと記入。 Command Button2 ダブルクリックして、プログラムに End を記入。プログラムを実行して終了ボタンが作動することを 確認して下さい。

プログラムの保存。 Excel のウィンドウの メニュー - 名前を付けて保存。 Excelマクロ有効ブック形式で BMI.xlsm などの名前にして 保存してください。

保存したマクロ付きExcelファイルを開いて、 マクロのアイコンをクリックして、マクロ実行ボタンをクリック。

保存したマクロ付きエクセルファイルのマクロが セキュリティ制限で起動しないことがある。

保存したマクロ付きエクセルファイルのマクロが セキュリティ制限で起動しないことがある。 これを解除する方法 メニュー – Excelのオプションを選択。

セキュリティセンター – セキュリティセンターの設定を選択。

すべてのマクロを有効にする を選択。 OKをクリック。 いちど Excel を終了させてから再度ファイルを開く。

BMI の 判定結果を表示するプログラムを追加。 フォームにテキストボックス(TextBox4)を追加。

Calc BMI ボタンをダブルクリックして、 If 文による判定式を記述して、プログラムを実行。

BMIの計算をさらに細かく解析するプログラムを追加する。 Command Button1の中に全部書くと長くなるので、 プログラムを関数に分割して作成する方法を習得する。 BMIとは世界共通の肥満度の指標。 BMI=体重(kg)/(身長(m)x身長(m))。標準は22です。 これが+20%,つまり26.4以上なら立派な「肥満」といえます。 (例)身長170cm, 体重70kgならBMI=70÷1.7÷1.7で約24.2。 標準(最も理想的なBMI値)が22ですから、 +10%の肥満といえます。

標準(理想)体重の計算方法は? 上記のBMIから算出するのが世界的な標準です。 これは 標準体重=22x身長(m)x身長(m)で計算できます。 (例)身長170cmなら22x1.7x1.7=約63.6kgが標準体重です。 その他の計算方法で最も日本で使われているのが「ブローカの桂変法」という方法です。 これは 標準体重=(身長(cm)-100)x0.9で計算できます。 (例)身長170cmなら(170-100)x0.9=63kgが標準体重です。 ただ、この方法は身長が低い場合に低値になりすぎるため、 身長150cm以下では0.9倍せずに(身長-100)とします。 身長150-160cmの場合は50-54kgの間にあればよいとされています [正確には50+(身長-150)x0.4で計算されます]。

挿入 ー 標準モジュール をクリック。 モジュールウィンドウが出現する。 コマンドボタンなどのツールとは独立したプログラム (コード)(モジュールコード)を記述する場所。

モジュールウィンドウの General (共通) Declaration(宣言) に、共有実数変数 h, w, BMI を宣言する。 Public h, w, BMI As Double 全ての関数で共有(public)できる変数が宣言される。

Public h, w, BMI As Double の下に一行あけて Sub calcBMI と記入して、Enter キーを押す。 自動的に () と End Sub が記述され、関数の体裁になり、 モジュールの見出しが、General calcBMI となる。 共有関数 calcBMI 関数 の作成を宣言したことになる。 この中に、BMI を計算するコードを 移動させる。

左下のボタンをクリックすると関数が独立して表示される CommandButton1の、BMI を計算するコードを カットして、 かわりに calcBMI と書く。  モジュールコードの中で、カットしたコードをペーストする。 TextBoxなどのツールは、 どこに配置したツールか記述する必要があるので、 TextBoxは、UserForm1!TextBoxに書き換える。 Format関数は、表示したい数字の桁数を ##.### で指定できる。 左下のボタンをクリックすると関数が独立して表示される

UserForm1をクリックしてから(フォーカスをあてる、という) (フォームの枠を濃い青にしてから)三角のプログラム実行ボタンを押す。 モジュールコードのウィンドウ枠が濃い青の状態で実行ボタンを押すと calcBMI だけが単独で実行されるのでエラーが生じる。

UserForm1 の Caption を Body Mass Index にしたほうが 体裁が良いので、変更する。

calcBMI 関数 の End Sub の下に一行あけて Sub judgeBMI と記入して、Enter キーを押す。 自動的に () と End Sub が記述され、関数の体裁になり、 モジュールの見出しが、General judgeBMI となる。 共有関数 judgeBMI 関数 の作成を宣言したことになる。 この中に、BMI を判定するコードを 移動させる。

CommandButton1の、BMI を判定するコードを カットして、 かわりに judgeBMI と書く。 モジュールコード中で、カットしたコードをペーストする。 モジュールコード中のTextBoxを、UserForm1!TextBox に書き換える。 プログラムの実行結果が変わらないことを確認して下さい。 共有変数 で宣言された BMI の値が、関数 calcBMI から judgeBMI に 渡されていることを理解してください。

肥満度を計算、表示する fatness関数 を追加してください。 フォームに肥満度を表示するTextBox5 を追加して配置してください。 Format() 関数は、数字を文字(string)に変換して、 表示桁数を指定する関数。ここでは小数点以下2桁までの表示を指定。 文字と数字はプラス記号で繋げられないため、使用している。

体重を判定する judge_weight 関数 を追加してください。 フォームに 標準体重、判定を表示する TextBox6 と TextBox7 を 追加して配置してください。

Excel, VBA は奥が深い。 マクロを究めると驚異的なプログラムをVBAで作れる。 ぜひ高度な Excel 使用法に挑戦して下さい。 Excel が得意になると 技師の業務が楽しくなる。 研究作業にも Excel の 知識は非常に役立つ。 Excel に詳しい技師は Respect される。