基本情報技術者過去問題 平成27年春期 午後問13

問13 

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

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

〔ワークシート:学習進捗管理(単元記述部分)〕
  • 社員ごとにワークシート"学習進捗管理"が用意され,学習進捗状況が記載される。ワークシート"学習進捗管理"の単元記述部分である列A〜Gの例を,図1に示す。
  • 学習教材は12の単元から構成されており,単元にはそれぞれ固有のIDが割り振られている。
  • セル A2〜A13 には,単元のIDが昇順に格納されている。単元のIDは100から 昇順に100刻みで付与されている。
  • セル B2〜B13 には,単元名が格納されている。
  • 各単元は複数の項目から構成されている。セル C2〜C13 には,単元に含まれる 項目の学習順序(以下,項目学習順序という)が格納されている。セルの値が"任意"の場合はどの項目から学習してもよいことを示し,セルの値が"順次"の場合は各項目を項目のIDが小さいものから順番に学習しなければならないことを示している。
  • セル D2〜D13 には,その単元の学習を開始してから完了するまでの学習に要する標準的な日数(以下,標準日数という)が格納されている。
  • セル E2〜E13 とセル F2〜F13 には,それぞれ対応する単元の学習を開始した日(以下,学習開始日という),学習を完了した日(以下,学習完了日という)がそれぞれマクロ StartLearning と FinishLearning を用いて設定される。日付は yyyy-mm-dd の形式で表示されるが,表計算ソフトの内部では1970年1月1日からの経過日数を整数値で保持している。計算にはこの内部の整数値を利用する。
  • セル G2〜G13 には,それぞれの単元の学習に関する判定結果が表示される。学習完了日が設定されたとき,学習に要した日数が標準日数以下の場合には"○"が表示され,そうでなければ"△"が表示される。学習開始日も学習完了日も学習に要した日数に含まれる。ここで,休日は考慮せず,休日も1日と数える。例えば,学習開始日が2014年5月10日で学習完了日が2014年5月12日の場合,学習に要した日数は3である。また,学習完了日が設定されていない場合には空値が表示される。

設問1

ワークシート"学習進捗管理"に関する次の記述中の に入れる正しい答えを,解答群の中から選べ。

 それぞれの単元の学習が標準日数内に完了したかどうかを表示するために,次の式をセル G2 に入力し,セル G3〜G13 に複写する。
  IF(F2=null,a)
a に関する解答群
  • IF(F2−E2+1≦D2,'○','△'),null
  • IF(F2−E2≦D2,'○','△'),null
  • IF(F2−E2−1≦D2,'○','△'),null
  • null,IF(F2−E2+1≦D2,'〇','△')
  • null,IF(F2−E2≦D2,'○','△')
  • null,IF(F2−E2−1≦D2,'○','△')

解答選択欄

  • a:

解答

  • a=

解説

この設問の解説はまだありません。
〔ワークシート:学習進捗管理(項目記述部分)〕
  • この学習教材の項目の総数は52である。ワークシート"学習進捗管理"の項目記述部分である列I〜Mの例を,図2に示す。
    pm13_2.gif/image-size:419×367
  • セル I2〜I53 には,項目のIDが昇順に格納されている。項目のIDは,その項目が属する単元のIDの下2桁を01から始まる連番にしたものである。
  • セル J2〜J53 には,項目名が格納されている。
  • セル K2〜K53 には,それぞれの項目が学習開始可能であれば"可"が表示され,そうでなければ"不可"が表示される。学習開始可能であるとは,次の条件@,Aをともに満たしていることをいう。
    1. 項目が属する単元が学習開始可能である。単元が学習開始可能であるとは,単元のIDが100であるか,又は,より小さいIDの単元の学習が全て完了していることをいう。
    2. 次の条件(a)又は(b)のどちらかを満たしている。
      (a) 項目が属する単元の項目学習順序が"任意"である。
      (b) 項目が属する単元の項目学習順序が"順次"であり,その項目のIDの下2桁が01であるか,又は,その単元の中でより小さいIDの項目の学習が全て完了している。
  • セル L2〜L53 とセル M2〜M53 には,それぞれ対応する項目の学習開始日,学習完了日がそれぞれマクロ StartLearning とマクロ FinishLearning を用いて設定される。

設問2

ワークシート"学習進捗管理"に関する次の記述中の に入れる正しい答えを,解答群の中から選べ。ここで,関数"表引き"は,行の位置として0が指定された場合には,null を返すものとする。
  • それぞれの項目が学習開始可能か否かを表示するために,セル K2 に"可"を入力する。
  • 次の式をセル K3 に入力し,セル K4〜K53 に複写する。
    pm13_3.gif/image-size:416×223
b に関する解答群
  • 照合一致(切捨て(I2,−2),$A$2〜$A$13,0)
  • 照合一致(切捨て(I2,−2),$A$2〜$A$13,0)−1
  • 照合一致(切捨て(I2,−2),$A$2〜$A$13,0)+1
  • 照合一致(切捨て(I3,−2),$A$2〜$A$13,0)
  • 照合一致(切捨て(I3,−2),$A$2〜$A$13,0)−1
  • 照合一致(切捨て(I3,−2),$A$2〜$A$13,0)+1
c に関する解答群
  • "順次"
  • "任意"
d に関する解答群
  • L3=null
  • L3≠null
  • M2=null
  • M2≠null
  • M3=null
  • M3≠null

解答選択欄

  • b:
  • c:
  • d:

解答

  • b=
  • c=
  • d=

解説

この設問の解説はまだありません。

設問3

学習開始日を設定するマクロ StartLearning と学習完了日を設定するマクロ FinishLearning をワークシート"学習進捗管理"に格納した。マクロ StartLearning 中の に入れる正しい答えを,解答群の中から選べ。
  • セル O2 に学習を開始する項目のIDを入力し,マクロ StartLearning を実行すると,次の@,Aをともに満たす場合,対応する項目の学習開始日にマクロが実行された日付を設定する。
    1. その項目が学習開始可能である。
    2. その項目の学習開始日が空値である。
     また,その項目が属する単元の学習開始日が空値ならば,単元の学習開始日にもマクロが実行された日付を設定する。
  • マクロ StartLearning の実行時のセル O2 には,セル I2〜I53 にあるいずれかの項目のIDが正しく入力されているものとする。
  • マクロ StartLearning では,マクロの実行日を取得するために表1に示す関数を用いる。
    pm13_4.gif/image-size:303×81
pm13_5.gif/image-size:378×212
e に関する解答群
  • 表引き(K2〜K53,ItemRow,1)='可',表引き(E2〜E13,UnitRow,1)=null
  • 表引き(K2〜K53,ItemRow,1)='可',表引き(E2〜E13,UnitRow,1)≠null
  • 表引き(K2〜K53,ItemRow,1)='可',表引き(L2〜L53,ItemRow,1)=null
  • 表引き(K2〜K53,ItemRow,1)='可',表引き(L2〜L53,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〜L53,ItemRow,1)=null
  • 表引き(K2〜K53,ItemRow,1)='不可',表引き(L2〜L53,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)

解答選択欄

  • e:
  • f:

解答

  • e=
  • f=

解説

この設問の解説はまだありません。
【27年春期 午後問題】
 問1 問2 問3 問4 問5 問6 問7 問8 問9 問10 問11 問12 問13
© 2010-2019 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop