総視聴再生時間43万分以上(2017年5月13日現在)の動画で基本情報技術者試験の過去問&キーワード解説!スキマ時間に動画!〜これじょIT〜

PR広告

平成27年度春 基本情報技術者試験 午後 問13 ソフトウェア開発(表計算) 設問3

問13 ソフトウェア開発(表計算)

次の表計算、ワークシート及びマクロの説明を読んで、設問1~3に答えよ。

〔表計算の説明〕

 ある会社では、社員ごとの社内向け学習教材の学習進捗状況を表計算ソフトで管理している。

〔ワークシート:学習進捗管理(単元記述部分)〕 (1) 社員ごとにワークシート"学習進捗管理"が用意され、学習進捗状況が記載される。ワークシート"学習進捗管理"の単元記述部分である列A~Gの例を、図1に示す。

平成27年度春 基本情報技術者試験 午後 問13 ソフトウェア開発(表計算) 図1

(2) 学習教材は12の単元から構成されており、単元にはそれぞれ固有のIDが割り振られている。

(3) セル A2~A13 には、単元のIDが昇順に格納されている。単元のIDは100から 昇順に100刻みで付与されている。

(4) セル B2~B13 には、単元名が格納されている。

(5) 各単元は複数の項目から構成されている。セル C2~C13 には、単元に含まれる 項目の学習順序(以下、項目学習順序という)が格納されている。セルの値が"任意"の場合はどの項目から学習してもよいことを示し、セルの値が"順次"の場合は各項目を項目のIDが小さいものから順番に学習しなければならないことを示している。

(6) セル D2~D13 には、その単元の学習を開始してから完了するまでの学習に要する標準的な日数(以下、標準日数という)が格納されている。

(7) セル E2~E13 とセル F2~F13 には、それぞれ対応する単元の学習を開始した日(以下、学習開始日という)、学習を完了した日(以下、学習完了日という)がそれぞれマクロ StartLearning と FinishLearning を用いて設定される。日付は yyyy-mm-dd の形式で表示されるが、表計算ソフトの内部では1970年1月1日からの経過日数を整数値で保持している。計算にはこの内部の整数値を利用する。

(8) セル G2~G13 には、それぞれの単元の学習に関する判定結果が表示される。学習完了日が設定されたとき、学習に要した日数が標準日数以下の場合には"○"が表示され、そうでなければ"△"が表示される。学習開始日も学習完了日も学習に要した日数に含まれる。ここで、休日は考慮せず、休日も1日と数える。例えば、学習開始日が2014年5月10日で学習完了日が2014年5月12日の場合、学習に要した日数は3である。また、学習完了日が設定されていない場合には空値が表示される。

設問3

学習開始日を設定するマクロ StartLearning と学習完了日を設定するマクロ FinishLearning をワークシート"学習進捗管理"に格納した。マクロ StartLearning 中の【 】に入れる正しい答えを,解答群の中から選べ。

(1) セル O2 に学習を開始する項目のIDを入力し,マクロ StartLearning を実行すると,次の①,②をともに満たす場合,対応する項目の学習開始日にマクロが実行された日付を設定する。

① その項目が学習開始可能である。

② その項目の学習開始日が空値である。

 また,その項目が属する単元の学習開始日が空値ならば,単元の学習開始日にもマクロが実行された日付を設定する。

(2) マクロ StartLearning の実行時のセル O2 には,セル I2~I53 にあるいずれかの項目のIDが正しく入力されているものとする。

(3) マクロ StartLearning では,マクロの実行日を取得するために表1に示す関数を用いる。

平成27年度春 基本情報技術者試験 午後 問13 ソフトウェア開発(表計算) 表1

【マクロ:StartLearing】

○マクロ: StartLearing
○数値型: ItemRow, UnitRow
・ItemRow ← 照合一致(O2, I2〜I53, 0)
・UnitRow ← 照合一致(切捨て(O2, 02), A2〜A13, 0)
▲論理積(【  e  】)
|・相対(L1, ItemRow, 0) ← 本日()
|▲相対(E1, UnitRow, 0) = null
||・相対(E1, UnitRow, 0) ← 【  f  】
|▼
▼

e に関する解答群

  • ア 表引き(K2~K53,ItemRow,1)='可',表引き(E2~E13,UnitRow,1)=null
  • イ 表引き(K2~K53,ItemRow,1)='可',表引き(E2~E13,UnitRow,1)≠ null
  • ウ 表引き(K2~K53,ItemRow,1)='可',表引き(L2~L13,ItemRow,1)=null
  • エ 表引き(K2~K53,ItemRow,1)='可',表引き(L2~L13,ItemRow,1)≠ null
  • オ 表引き(K2~K53,ItemRow,1)='不可',表引き(E2~E13,UnitRow,1)=null
  • カ 表引き(K2~K53,ItemRow,1)='不可',表引き(E2~E13,UnitRow,1)≠ null
  • キ 表引き(K2~K53,ItemRow,1)='不可',表引き(L2~L13,ItemRow,1)=null
  • ク 表引き(K2~K53,ItemRow,1)='不可',表引き(L2~L13,ItemRow,1)≠ null

f に関する解答群

  • ア 表引き(E2~E13,ItemRow,1)
  • イ 表引き(F2~F13,ItemRow,1)
  • ウ 表引き(F2~F13,UnitRow,1)
  • エ 表引き(L2~L53,ItemRow,1)
  • オ 表引き(L2~L53,UnitRow,1)
  • カ 表引き(M2~M53,ItemRow,1)
  • キ 表引き(M2~M53,UnitRow,1)

解説

【マクロ:StartLearing】のロジックについての問題です。問題文にある通りStartLearingは「学習開始日を設定するマクロ」です!

・ItemRow ← 照合一致(O2, I2〜I53, 0) のItemRowは照合一致(O2, I2〜I53, 0)の式から項目IDを示しており、

・UnitRow ← 照合一致(切捨て(O2, 02), A2〜A13, 0) のUnitRowは照合一致(切捨て(O2, 02), A2〜A13, 0)の式から単元IDを示します。

O2には、単元IDが入ります。仮に301が入った場合

ItemRowは照合一致(301, I2〜I53, 0)となり、8が返ります。

UnitRowは照合一致(切捨て(301, 02), A2〜A13, 0)となり、3が返ります。

【 e 】には論理式「ウ 表引き(K2~K53,ItemRow,1)='可',表引き(L2~L13,ItemRow,1)=null」が入ります。StartLearingは該当する項目IDの学習開始日が入おらず、該当項目IDの学習開始可能が「可」となっている場合に日付を入力します。

該当する項目IDの学習開始日が入おらずが「表引き(L2~L13,ItemRow,1)=null」の部分となり、該当項目IDの学習開始可能が「可」となっている場合が、表引き(K2~K53,ItemRow,1)='可'の部分となります。

例の場合(O2が301)はItemRowが8となるので、表引き(K2~K53,8,1)となります。表引き(K2~K53,8,1)は'可'となります。L9に値がなければ日付けをいれます。表引き(L2~L53,8,1)とすると、L9の値が取得することができます。

論理式がtrueになった場合、該当項目IDに本日の日付を入れます。・相対(L1, ItemRow, 0) ← 本日()。例の場合(O2が301)はItemRowが8となるので、相対(L1, 8, 0)となり、L9に本日の日付が入ります。

次に、該当する単元IDに学習開始日がない場合は、項目IDの学習開始日を入力します。例の場合「表引き(L2~L53,8,1)」の結果のL9の日付が、相対(E1, 3, 0)=セルE4に入ります。

平成27年度春 基本情報技術者試験午後 問13 ソフトウェア開発(表計算) 目次

  1. 問題文とキーワード
  2. 設問1
  3. 設問2
  4. 設問3

一覧に戻る

タグ: ,,,,

PR広告

フェイスブックコメント

平成28年度秋 基本情報技術者試験 午後 テキスト・動画解説

平成28年度秋 基本情報技術者試験 午前 テキスト・動画解説

平成28年度春 基本情報技術者試験 午後 テキスト・動画解説

平成28年度春 基本情報技術者試験 午前 テキスト・動画解説

平成27年度秋 基本情報技術者試験 午後 テキスト・動画解説

平成27年度春 基本情報技術者試験 午後 テキスト・動画解説

平成27年度春 基本情報技術者試験 午前 テキスト・動画解説

平成26年度秋 基本情報技術者試験 午前 テキスト・動画解説

平成26年度春 基本情報技術者試験 午前 テキスト・動画解説