☆の数が多いほど難しい(感覚的に)ので、自分のレベルに合わせて利用してください。
練習問題1(☆☆)
data115.xlsx の 試験成績 シートには、仮想的な試験の点数データが入っている。このデータを使って、不合格者数が20人程度になるように合格点を調整したい。
練習問題2(☆)
練習問題3(☆☆☆)
ある農家では出荷する作物を重さを用いて、S, M, Lの3種類に分けて出荷することにしている。重さとランクと関係は以下の表の通りである。ただし、あるランクに入る作物は、最低重量≦作物重さ<最大重量を満たすが、Lサイズは重量の上限を定めない。 data115.xlsx の 作物 シートに入っているデータを使って、それぞれの作物を(S, M, L)にランク付けした結果を表示する計算式を「ランク」列に入力しなさい。
ランク | 最小重量(g) | 最大重量(g) |
S | 0 | 50 |
M | 50 | 100 |
L | 100 |
方針:
※計算式の中に数値として埋め込むと、後で見たときにその数値の意味がすぐには分からない。こういう「後になったら訳がわからない数字」(俗称 magic number)はできる限り使わない方がよい。
練習問題4(☆☆☆)
出荷規格が変わって、130g以上の作物はLLランクとすることになった。この判断ができるようにdata115.xlsx の練習問題4シートに適切な計算式を入力しなさい。ただし、計算式の中に具体的な数値を埋め込まず、ランクの表の中の数値を参照して書くこと。
練習問題5(☆☆☆☆)
ある試験の評価は、素点が60点未満で「不可」、60〜69点で「可」、70〜79点で「良」、80〜89点で「優」、90〜100点で「秀」であるとするdata115.xlsx ブックの成績評価シートのデータを使って、成績評価を行う計算式を作成しなさい。
練習問題6(☆☆☆☆☆)
労働基準法では法定労働時間を超えた場合には賃金率(時給)に割り増しが必要となる。具体的には1日に8時間以上働いた場合は、8時間を超えた部分については25%以上の割り増しが必要となる。
data115.xlsx の 残業手当 シートには、タイムカードで記録した始業時刻と終業時刻が記録されている。このデータを使って、
という操作を行いなさい。
Tips. Excelでの時刻と日付の扱い
練習問題7(☆☆☆☆☆).
練習問題6の計算式では、所定労働時間と賃金割増率はそれぞれ 8時間、25%という定数で計算式に入れてあった。これをそれぞれG2, G3セルに入っているデータを参照するように変更しなさい。
練習問題8(☆☆☆☆☆)
練習問題6と同じデータを、Excelのシリアル値を使って入力したものが残業手当2 シート。このデータを使って同じような計算をしてみなさい。
(注意)書式が「時刻」や「日付」になっているセルのデータをつかって計算すると、計算式が入っているセルの書式も自動的に時刻や日付になってしまう。ここでは、「就業時間」の計算式が入っているセルが自動的に「時刻」に書式設定されてしまう。当然、就業時間としてはマトモに表示されないことになるので、書式を「標準」に再設定する必要がある。
例題1. メタボリック診断
2008年の春から実施されている健康診断におけるメタボリック判定は、ウェストサイズが男性の場合85cm以上、女性の場合90cm以上であればいくつかの検査値と組み合わせて判定することになっている。つまり、性とウェストサイズの2つの条件を組み合わせて判断を行うことになる。
Step 1. 条件を整理する
この条件を整理するとこんな感じ。性と85cm, 90cmが条件になってることがわかる。
ウェスト85cm未満 | ウェスト85cm以上 | ウェスト90cm以上 | |
女性 | 非メタボ | 非メタボ | メタボ |
男性 | 非メタボ | メタボ | メタボ |
Step 2. 疑似コードを使って条件を IF関数の書式に落とし込んでいく
これをIF関数の書式に落とし込んでいくことを考える。まず性で判断することを考えると、
IF(女性?, ウェスト90cm以上ならメタボ, ウェスト85cm以上ならメタボ) ①
という感じになる(*2)。もちろんこのままではExcelに入力できないが、こんな感じの擬似コードで問題を整理するのは悪くない。
さらに、「ウェスト90cm以上ならメタボ」「ウェスト85cm以上ならメタボ」という部分はそれぞれIF関数を使って記述することができる。
IF(ウェスト90cm以上, "メタボ", "非メタボ") ②
IF(ウェスト85cm以上, "メタボ", "非メタボ") ③
さて、①〜③を組み合わせてみるとこんな風になる。
IF(女性?, IF(ウェスト90cm以上, "メタボ", "非メタボ"), IF(ウェスト85cm以上, "メタボ", "非メタボ"))
Step 3. データが入っているセルなどを考慮して、Excelの関数として記述する
セルF2 ← =IF(B2="女性", IF(E2>=90, "メタボ", "非メタボ"), IF(E2>=85, "メタボ", "非メタボ"))
できあがりはこんな感じ
(*2)この式は性別が「女性」と「それ以外」に分けているが、「それ以外」の方の処理は「男性」を前提とした処理になっている。女性でも男性でもないような性別の人がいるデータ群を扱う場合はもう少し考慮する必要があるが、ここではそこが本質ではないのでスルーする。
Tips: IF関数とフローチャート
練習問題9(☆☆)
BMIは25以上で「肥満」、18.5未満で「低体重」、その中間が「普通体重」とされている。data115.xlsx ブックの BMI シートに入っているBMIのデータとIF関数を使って、それぞれの人が「低体重」、「普通体重」、「肥満」のいずれであるかを表示する計算式を「体重区分」列に入力しなさい。
練習問題10(☆☆☆☆)
例題2で扱ったメタボリック検診の条件は、以下のように整理することができる。この条件を用いたIF関数で例題2と同じ処理を行ってみなさい。
((性別=男性) かつ (ウェスト >=85cm)) または ((性別=女性) かつ (ウェスト >= 90cm)) であれば「メタボ?」
ヒント: Excelでは、「かつ」を表すためには AND関数、「または」を表すためには OR関数を用いる
練習問題11(☆☆☆☆)
A, B, Cの三科目を受験し、合格するためには以下の2つの条件のいずれかを満たしている必要がある。data115.xlsx ブックの 試験得点 シートのデータを使って、合否を判定する計算式を作りなさい。
©2014, Hiroshi Santa OGAWA
このページにアダルトコンテンツ、XXXコンテンツ類は一切含まれていません。暴力反対.