2014年1月15日水曜日

【2013後期水2】情報処理実習(応用)Ⅳ 授業記録

------------------------------------------------------
シラバスはこちらから参照できます。
------------------------------------------------------

==============
第14回 1月15日
==============

・最終回。暴風警報発令による休講があったので14回でおしまいだが、この補講代わりの分は…ええと…思い出せないので過去の授業記録を遡ってみたら「今度4人が揃った時に改めて伝えることにしよう。」と書いていた。結局その日はこなかった。出席人数が一人だったり、20分遅れて来たり、5回連続で欠席してもう来ないかな?と思ったら突然来たり…と先の読めない授業だったのだが、成績のつけ方としては前回決めた方法が妥当なところだろう、ということでこれで決定。

・出席者はいかにも最終回らしく3名。ただし授業開始時間には誰も来ておらず、20分が経過してようやく3名が揃った。(本人の名誉(?)のために言っておくと、今日の20分遅刻の学生は「20分遅刻」の学生ではなく「教科書あり」の学生の方だった。もう来ないのかも?と思っていたのだけれど。)

・今日も完全に個人ペース。でも3名ともいろいろなトラップに引っかかってくれたので質問もいろいろ出てきた。一番進度の遅い学生だけ教室外で少しだけやってきてくれたのだが、それでもLesson 10個分程度のずれが発生。

・課題提出の方法は全ての実習用ファイルを圧縮してメール添付で提出ということにしたが、進捗状況でも大体の様子は分かるので、終了間際に3名の仮の点数をつけておき(低い順に70点、73点、75点。標語で言えば全員が「良」。)もしもこれを上回る点数がほしければあと1週間で課題をやって提出してくれれば、ということにした。75点の学生がぎりぎり80点ライン(「優」)まで乗せられるかどうかだが、しばらく様子見。

・教科書に掲載されているDCOUNT関数を使う問題が何度やっても正しい答えにならない謎に遭遇。自分のパソコンでやっても同じ。模範解答の通りに入れても違う結果が返ってくる。不思議だがよく分からない。この点だけは謎のままで最終授業を終了。来年の授業も同じ教科書を使うので、1年以内に(!)解決しておきたい。



==============
第13回 1月8日
==============

・この授業は教科書の「怒濤の練習問題100題」を「学習項目だけに絞り込んだ演習用ファイル」を使って仕上げの部分だけをひたすらやる(そうでないととてもじゃないが半期では終えられない分量だが、学習項目だけに絞れば何とか1冊終えられる)のだが、この演習用ファイルを準備するのがなかなか大変で、90分授業2回分のファイルを用意するのに下手すると3〜4時間かかる。(著作権の都合もあるのでこのファイルは公開できません…)ちょうどこの授業の前日夜がこの作成に追われており、いろいろ苦労した。(冬休み中にやっておけばよかった…とも)

・しかし、この授業は全く受講生の出席動向が読めない授業であり、これだけ時間をかけて資料を作っても学生が誰も来ないなんてことが容易に予想される。(でも来年度も同じ教科書・同じ演習用ファイルを使う予定なので、今年度肩すかしを食らってもさほどの痛手ではない)そして授業開始時間になっても誰も学生は来ず。残念だなあ…と思っていたら5分ほど経過してから「就活終了」の学生が1名来室。そして「20分遅刻」の学生がその10分後(今日は「15分遅刻」!)に来室。年末の授業で唯一出席していた「教科書あり」の学生は結局、今日は来なかった。

・今日の出席者2名は進度がバラバラだし雰囲気も全く異なる。「就活終了」(3名の中では一番遅れ気味、明るい性格だが、よく独り言をぶつぶつと言いながら取り組む、でも飲み込みは非常に早い、IT系企業に就職するのにスキル不足で少々焦り気味)と「20分遅刻」(3名の中では一番進んでいる、この学生が1人だけという週が続いたこともあり、以前は静かに課題に取り組むキャラだったが引っかかった箇所はかなり質問してくれるようになった)の2名の時は両者の手を同じタイミングで止めさせて解説するということは全く不可能なので、今日も自由質問形式。しかし両者のやっている内容があまりにも違いすぎているので(ifを使いセルが空白の時にhlookupの結果を出さない関数式をやっている一方で、四捨五入・切り上げ・切り捨ての違いを説明しなければならないなど)自分も頭の切り替えが大変だった。出てきた質問もsumif関数、countif関数、データベース関数のような高度な内容と列幅の調整など初歩的な内容がいろいろ。

・次回が最終回なので、やっている途中でどんな風に成績をつけるかについて説明。いろいろ考えて、結局、教科書の課題を最終的にどこまで到達できるかによって成績をつけることにした。Lesson 49(IF関数の応用)まで終えたら「可」、Lesson 70(lookup関数・データベース関数・フィルタ機能)まで終えたら「良」、Lesson 80(ゴールシーク・集計)まで終えたら「優」、これ以上(マクロ・統計・ピボットテーブル)は「秀」というような目安を設けておき、2名がそれぞれどこまでやってどの成績標語を目指すか尋ねてみたら「就活終了」の学生はLesson 50まで、「20分遅刻」の学生はLesson 71までやる!と正直に言ってくれた。最低ライン狙いで素晴らしい!(苦笑)しかし2人とも実際には残り1回の授業でこの水準をクリアするのは結構大変だと思う。今日の時点で「就活終了」の学生はLesson 44まで、「20分遅刻」の学生はLesson 58までだったので。

・最終期限は再来週の火曜日。さて、どこまで進みますかね?そしてそもそも2名とも、来週来てくれますかね?「20分遅刻」さん、最終回ぐらい定時に来てよ!(笑)



==============
第12回 12月25日
==============

・さてさて、今日は何人集まるかな?と思いつつ誰もいない教室で授業開始時間を迎えたが、程なく「教科書なし」改め「教科書あり」(当たり前すぎる…)の学生が1名到着。いつもは授業開始時間から来ていることが多い「就活終了」の学生は欠席らしい。「20分遅刻」の学生からは欠席連絡を受けている。「にーさん」はやっぱり来ないね。というわけで1名だけの授業。

・せっかく教科書を買ったのに、前回から今回までの間に全く追いつき学習ができていなかったとのこと。期限に間に合いますかね?

・前回、グラフ作成の問題に躓いている様子だったので、最初の15分ほどでグラフ作成の問題をざっと説明。そして新たに複合グラフのところに入った。しかし教科書の説明が比較的わかりやすいので、問題なくクリア。しかし表の内容をよく読み、適切なグラフを選ぶという形の問題では予定通り少々躓いた模様。それでもグラフタイトル、軸ラベル、凡例の位置、データラベルなどを入れる作業は最初の説明が効いたのか(どうかは定かではないが)今日はかなり順調に進めてくれていた。

・グラフの問題で意外に手こずったようで、この時点で残り30分弱となった。この学生は学期始めの頃に関数の練習用ファイルを最終課題まで進めることができたほどなので、ある程度は自力でもできるだろうということで、教科書の問題をぱらぱらと眺めて、自力でできそうにないところだけに挑戦し、うまくいかなければヒントを出すということを繰り返していった。そして引っかかったところは予想通り、各教材での指示でも難しいところばかり。(例えば - をセルに一つだけ入力して繰り返し表示になるようにする方法や、countif関数の第2引数がセル番地ではなく””で囲んだ文字列に、さらにワイルドカードや「〜以外」を表す <> を使う例など。)

・Lesson 27から31までは全て終了、そして32からが飛ばしながら難しそうな箇所だけ、という進め方だったが、最後にやったのは44。年明けの授業までに57までやっておくというように指示して終了。



==============
第11回 12月18日
==============

・毎週毎週、出席者の動向が予想しにくい授業だが、今日は授業開始時点では1名だけ、しかも5回連続で欠席している学生が教室に現れるという全く予想外の展開。もう来ないと思っていた。就活理由か?と尋ねてみたら「教科書が買えていなかった。毎回コピーしてもらうのは悪いから授業に出てこなかった。」というよく分からない理由。だったら今日は教科書を買ってきたのか?と尋ねると、Amazonで最近注文したので明日届くとのこと。ますます不思議なキャラであった。仕方なく12ページ分ほど教科書をコピーして渡した。5回も休んでいるので取り戻すのは大変だと思うのだけれど、課題さえきちんとやってくれればそれで構わない。もちろん期限に間に合えば、の話だけれど。

・今日はこの「教科書なし」の学生が1名だけなのか…ということで彼を相手にした初めての「ストーカー機能」の利用。第1回〜第5回までかなり順調に進めることができた学生だったので、続きの範囲のExcelグラフの練習問題を多めに指示したが、グラフ作成は不慣れなのか、かなりもたついていた。

・そうこうしているうちに「20分遅刻」の学生が今日も「20分遅刻」で到着。全くもって期待を裏切らないものである。そしてこの2人は進度が全く違っていて、ほぼ毎回「20分遅刻」でも授業5回分ともなると100レッスンある教材で30レッスン分も差が開いている。もはや両者の進度を揃えるのは無理だと判断したので、個別に作業を進めながら、途中でいつでも質問してもらってよいということにした。授業時間中に出てきた質問は2人合わせて10件にもならなかったが、2人ならまだ「ストーカー機能」も使えるので、おかしな動きをしていないか適宜モニタし、必要な範囲で個別アドバイス。でも「教科書なし」の学生はしばらくExcelを触っていなかったのか、average関数の存在を忘れて単独セルを合計で割ろうとしていた。これはちょっと恥ずかしい。

・「20分遅刻」の学生はchoose関数の引数や、ifとvlookupを組み合わせた関数の作り方で少々苦労していたが、vlookupの仕組みはよく理解できているようで、少々手が止まっても試行錯誤でだいたい解決できていた。しかし教科書の練習問題にもうちょっとひねりを利かせた独自の出題箇所には見事に引っかかってくれた。

・「教科書なし」の学生はグラフ作成で少々つまづいていた様子。複合グラフの手前で止まってしまったが、大丈夫かなあ?まあ、関数のところに入れば、きっと一気に追い上げてくれるはず。

・来週の年内最後の授業は「20分遅刻」の学生は就活理由で欠席するとのこと。今日欠席だった「就活終了」の学生は来週来てくれるのだろうか?(この学生も少々遅れ気味だが「教科書なし」の学生よりは進んでいる。)「20分遅刻」の学生はあまり褒められた姿勢ではないけど、それでも進度的には一番進んでいるのが悩ましいところ。あと1名、第2回と第3回だけ出席している学生(「にーさん」とでも呼んでおきたい)は教科書はまだ一度もやっていないし、もう来ないと思うが、まさか来たりして…。さらに隠れキャラとしてまだ1度も教室に来ていない「登録オンリー」の学生が来たりしたら笑うぞ。この2名「にーさん」も期限までに課題さえやってくれるのなら…という気持ちは残っていることを付記しておきます。)(追記:このクラスには「登録オンリー」の学生は居ませんでした。勘違い。春学期の応用IIIの授業には2名いて、結局1度も出席しなかった。)



==============
第10回 12月11日
==============

・今日も前回と同じ2名が出席。前回との違いは「20分遅れの学生」が「7分遅れ」だったこと。ちょっとだけ進化したね!(笑)

・今日は二人の進度が全くずれていたので基本は質問対応で進めていったが、時々二人の画面を後ろから観察し、怪しげな動きがあったらストップをかけて個別に説明した。

・二人ともそれなりにセンスがあるのだが、時々面白いことをしてくれる。一人はaverage関数を使うべきところをsumで合計してから件数で割ろうとしていた。もう一人は下方向コピーで済ませられるところを同じ式を繰り返し入力している。もっとも、仮にこれが単純な関数なら気づくだろうけど、ワークシート上にある文字列をsumifやcountifの第2引数に使うことで同じ式を繰り返し作らなくても済むようにするといった方法はなかなか思いつかないものらしい。

・一人はchoose関数に入る直前ぐらいまで、もう一人は今日からグラフを作り始める課題に着手してぎりぎり半分ぐらいに到達したあたりでそれぞれ時間切れ。

・演習用のファイル(レッスン毎に学習目標を考え、その学習だけができるところまでお膳立てしたワークシートを用意しておき、その続きの作業だけをさせて完成させる。教科書の指示でもくどいものは敢えて解決済みの状態にしておくこともある。)のストックが今日の開始時で残り5つ分ぐらいになっていたので、ここ数日で続きのファイルを少し多めに用意。何とか次回分ぐらいまでなら軽くまかなえる程度にはストックができているが、まだ年内最後の授業の分まで考えるとひょっとすると足りないかもしれない。



=============
第9回 12月4日
=============

・今日もやっぱり学生は一人だけかなあ?しかも20分遅れて来るのかなあ?と思いつつ教室に向かったが、前の授業が少し延びてたので同じフロアの学生談話室で授業の準備をしていたら…何と3週連続で欠席だった学生がやってくるではありませんか。そして就活が終わったからまた授業に出てくるとのこと。少々驚いたがまあ良いことなので歓迎姿勢。

・そして授業開始時間を過ぎてもやはり「20分遅れの学生」は来ない。仕方ないので「3週連続欠席の学生」を相手に授業開始。とはいってもこの授業では教室外でも課題さえやっていれば合格点に達するようにはしているのだけれど、聞くと全然やっていないとのこと。まあ就活しながらでは難しいのも分からないことではない。

・「20分遅れの学生」が一人の時は「ストーカー機能」を利用していたので「3週連続欠席の学生」にもこれを使おうとしたら少々抵抗された。まあそれはそれで構わないので時々後ろから画面をのぞき込みながら作業を進めてもらっていたら「20分遅れの学生」が20分遅れて到着。まったく期待を裏切らない…。これで4週連続なので、実質的にはほぼ授業1回欠席と変わらない。

・でも「20分遅れの学生」は「3週連続欠席の学生」よりも進度的にはかなり先をやっている。前回やり残したグラフの問題だけやってもらい、ここでちょうど二人の進度を揃えることができそうだったので、新たにExcel関数を扱う単元に同時に突入。

・やはりこの2名の進度にはだんだんと差が開いてくる。「3週連続欠席の学生」はsum, average, max, minなどの関数もすぐに思い出せない様子だったので、これは先が思いやられると思いながら恐怖のrank.eq関数。ここでは絶対参照の知識が必要なのだが、意外にも「3週連続欠席の学生」がすんなりと理解してくれた。ゴメンナサイ見くびってました。まあ本人に言わせると「物覚えは早いが忘れるのも早い」ということだったが。

・ただ、「3週連続欠席の学生」は練習問題の「処理条件」を読んで関数式を作るという作業は少々苦手っぽい。まあ確かに国語力も必要だろうとは思う。

・絶対参照を行列固定ではなく行固定だけにするという方法を使うことで効率よく作成できる練習問題があったのだが、「20分遅れの学生」もこれは最初思いつかなかった様子。なので、この問題に「3週連続欠席の学生」が少々遅れて到達したタイミングで行固定だけにしてシンプルに解決する方法を説明したところ二人とも仕組みは理解してくれた様子。

・二人の進度に若干のずれが生じたものの、教科書のLesson 39付近までは進んだ。今日は来週以降の進度動向はまだ読めないが、年内にあと3回あるので、関数は全部終わらせ(Lesson 63まで)シート操作、並べ替え、データ抽出、条件付き書式(Lesson 73)ぐらいまでは進めたい。

・当初の予定では来週の第10回で教科書は全て終わるはずだったのだが、暴風警報発令で1回飛んだり、「20分遅れの学生」が4回連続で20分遅れだったり、最初の頃に出席者が交代で入れ替わったり…なんだかんだの影響で予定通りには進んでいない。それに教科書を使い始めた頃にちょっと時間を掛けすぎた気もする。まあ様子を見ながら進めていきましょうかね。



=============
第8回 11月27日
=============

・今日も授業開始時間には誰も学生が来ていない…そしてやっぱり20分遅刻ですか。そして3回連続で1名だけの状態が続いている。もう他の学生さん来ないんですかね?

・前回配布したファイルの続きを実施。学生が一人だけだと「ストーカー機能」が効果的に使えるので、引っかかっているところの把握が非常に簡単。今日の内容はグラフをいろいろ作るという内容だったので、関数の実習とは違ってスムーズに進めることができた。グラフの編集などにもかなり慣れている様子(時々、凡ミスがあるけど)。しかも一人だけだと進み具合が早いこと早いこと。前回からの3回分のつもりで用意していた教科書14課分のファイルがどんどん終わっていき、結局1課分を残すだけとなった。20分遅刻してきているというのにこの進度。

・休んでいる学生には気の毒だが(…などと考える必要もないけど)出席学生の進度が予想以上に早いので、予定よりも1週繰り上げてどんどん進めておきますよ〜。ちなみに教科書のLesson 30まで終わりました!



=============
第7回 11月20日
=============

・授業開始後20分まで誰も学生が来なかった。今日は「流会」かな…と思っていたときに前回の出席者が1名様ご到着。

・前回までの範囲はExcelの教科書でもセル内容などを全て手入力する練習なども兼ねていたが、今日の範囲は絶対参照とグラフなので、予め教科書に記載されている手順書きの一番最初の段階(データのみ入力が終わり、書式の変更や関数などは未入力)のファイルを教科書に従って14課分を用意しておいた。(なぜこのファイルが教科書に付属していないのか理解に苦しむのだけれど、作るとしてもさほどの時間はかからない)これを授業3回分の課題としてmoodleから提供。(残念ながら著作権の都合によりこのブログではこの練習ファイルを提供できません)

・絶対参照は理屈だけでも理解している学生とそうでない学生では授業進度が雲泥の差となるのは同業者の皆様ならお分かりいただけるはず。たまたま今日出席の学生は絶対参照の仕組みは理解できていたのでさっと終わらせることができた。(履修登録している4名の学生のうち、多分2名は怪しい。既に2週連続で欠席しているでこの先どうなるか分からないけど。)また、グラフについても教科書の追加課題としていろいろなメニュー等を自由に試すことを指示していたが、これについての理解も深いようで、さほどの問題はなかった。

・しかし前回同様「ストーカー機能」を利用しながら学生の操作内容を逐一チェックしていると時々おかしな操作方法が見受けられた。(罫線を引くのに妙にもたついたり、オートフィルがうまくいかなかったり、グラフを描くときに「合計」や「平均」の欄まで範囲に含んでしまって変なグラフができたり…)1対1での授業の強みを活かして、気になったことはすぐにその場で対応。

・20分遅れで始まったものの、予定進度として想定していたところまでは授業時間内に終わってしまった。来週はこの続きから。

・先週・今週と出席していない学生はmoodleにファイルがあるので、自力で進めておいて欲しい。そもそも授業に来るかどうかも少々不安ではあるけど。



=============
第6回 11月13日
=============

・チャイムが鳴った。そして受講生全員が遅刻…。

・さて、今日の授業はどうなる?と思いつつ10分待ったところで学生が1名到着。やれやれ…と思いつつ、前回・前々回とも欠席の学生だったので、この2週間でやったこと(教科書の進度など)を簡単に説明し、前回の授業で方針を決めた(以下の第5回のところにも記載の)成績評価方法について説明し、教科書の過去の範囲をやってもいいし、新しいところをやってもいいが、どちらにするか選んでもらったところ、過去の範囲は自力でできるということなので(多分そうだろうと思ったが)ここは後日提出してもらえれば5点×2回で最大10点分として評価に加えることにし、今日は教科書のLesson 15/16の「データの移動とコピー」から開始することにした。

・学生が一人だけということもあるし、前から一度使ってみようと思っていた「ストーカー機能(笑)」(教室内の学生の操作状況などを一覧表示したり、一括して機能制限を掛けることができるユーティリティの個人画面キャプチャを一人の学生のために利用し、しかも中央モニタにその学生の操作画面を出しながらその場でアドバイスするという、何とも贅沢な教室設備の利用方法)を試してみた。学生が新しいLessonに入ったタイミングで同時に自分も作成を開始し(もちろん学生の操作よりもはるかに短時間で同じものを作ってしまうわけだが)自分のが完成したら学生の操作をしばらく眺めるということを繰り返した。「教育工具」の本来の使い方とは異なるわけだが、いろいろ新鮮な発見があった。なるほど、学生の目線ではこの問題を解決するのにこんな方法から試そうとするのか…という意味だが、試行錯誤の仕方がなかなか興味深かった。

・教科書の問題もそれなりにややこしいので、利用できる機能を一通り紹介してから問題に入るという「はしごかけ」で例によっていろいろ「余計なこと」も紹介。やはりこの授業には、(わざとらしく、という意味も含めて)「学生と一緒にもがいてみる」という方法が有効なのかもしれないなあ、と省察。

・結局、教科書のLesson 17/18「セルの書式設定と罫線」までしか進まなかったが、今日出席の学生には出席+演習課題をきちんとクリアしてくれたので、満点の7点ということにした。

・次回は絶対参照とグラフの作成あたりをやってみる予定。そして次々回まででLesson 31「グラフのまとめ」あたりまで進めたら良いのだけれど、どうなることやら。



=============
第5回 11月6日
=============

・授業開始時点で教室にいたのは…2回目の授業で一度見かけたきりの学生が1名のみ。そしてしばらくして前回出席の学生が登場し、2名でのスタート。

・この授業は3年次配当の科目でもあるので、就活理由で欠席する学生がいたりするのも織り込み済みなのだが、そろそろ成績をどんな形でつけるのか、学生にも具体的に伝えておく必要があるのかもしれないと思い、2名を相手に説明。第1回〜第3回で扱ったExcel関数の自習用ファイル(1)〜(7)については、出席回数や到達度の如何を問わず、全員一律で成績の20点分とし、これは履修登録者全員に基礎点として与えることにした。(Excel関数をがっつりやる授業なので、教科書での学習を進めていく中で、この自習用ファイルの内容を改めて復習することになるし、教科書よりも詳しい解説を入れているところもあるので、こちらはまたいつでも参照してくれるだろうから。)そして残りの80点分について、休講の1回分を除くと11回で、1回あたり7点を上限として毎回の授業で評価するということにした。また、就活等の理由で欠席した場合も、このブログで毎回どのあたりまで進んだかを書くので、その範囲だけを自力でやれば、1回あたり上限5点として成績に加えることにした。(もっとも、あまりに欠席が続けば、そのうちついてこれなくなることも織り込み済み。)授業に出席した場合の点数が高いのは出席点という意味ではなく、教科書に書かれていない内容も授業で扱うので、その部分に関する追加ポイントという位置づけ。そしてこれが60点を超えれば単位認定。

・ちょっとだけゲーム的要素があってもよいのかも?と思ったので、教科書のそれぞれの課題に取り組む前に、大体何分ぐらいあればできそうかという見通しを宣言させてから実際にやってみるということにした。短時間で必要な表計算を行うのも立派な応用スキルだし、作業量の見積もりができることも重要だろうと考えた。また、実際にそれが予定時間で解決できない場合にどうしたら解決できるか、という発見があれば記憶にも残りやすいのでは?と考えたが、この取り組みは出席者2名のExcel利用経験に大きな差があったため、早くも教科書の1つめの課題をやっている時点で瓦解。

・とはいっても今日やったのは「罫線の引き方」「セルの書式設定」「簡単な関数」「オートSUM」「ふりがな」「行列の編集」という、かなり初歩的な内容。それでもExcel利用経験の多い1名の学生にも引っかかるところがあった様子。また、彼が5分で作る!と宣言したものが7分経っても完成しなかったなど、いろいろ手こずるところもあった様子。一方、もう1人の学生の方はsum関数の使い方やオートフィルあたりで少々もたつくところもあったが、後半かなり追い上げてきてくれた。まあ、いずれにしても少しずつ進めてくれたら良い。

・教科書にある「離れた範囲のデータの合計」という単元では関数ペーストを使い、sum関数を入れて、必要な範囲を目視で選んで合計するという、あまりExcelらしくない、というよりもかなり邪道な解決方法が書かれていた。そこで1名の学生にはsumif関数を使って解決するように指示。少々複雑な絶対参照も必要だったので、少し手こずった様子だが、ヒントを出すことで無事解決してくれた。

・なんだかんだで学生2名の進度はそれぞれLesson 14(行列の編集)と12(ふりがな)をクリア。(教科書にはLesson 100まであるのでまだまだ先は長い!)そして今日の獲得ポイントとして両名に6点ずつつけることにした。これで今日の時点での合計点は33点と26点。後者の学生も前回範囲をやってくれれば5点を上乗せするということを伝えて授業終了。



=============
第4回 10月23日
=============

・授業開始時点で教室にいたのは…0名!どしたらよかろ…と思いながらしばらく待っていると1名が到着。当該学生、気を使ってくれているつもりなのか、「今日は全員欠席ということにしましょうか?」などと言ってくれて苦笑。いやいや、そんなことないですって。

・今日から教科書『初歩から実用まで 100題で学ぶ表計算 Excel 2010対応』(日経BP社)を使うことは通知していたにも関わらず、せっかく出席した1名の学生はまだ購入していないとのこと。仕方ないので冒頭の10ページほどをコピーしに控え室に下りていってさらに5分のロスタイム。教科書忘れということなので減点。ちょっと気の毒だけど。

・この学生は今期登録者の中では一番Excelの利用経験があるので、教科書の冒頭の「データの入力」「四則演算」あたりから愚直にやるのは無駄なような気がするかもしれないが、応用IVという名前の科目なので、それなりに応用レベルのことをやるつもりでこういう授業設計にしている。もちろん教科書の一番最初にある「Windowsの基礎知識」「データの保存と呼び出し」あたりは不要だが、「文字の入力」のところではなぜかファンクションキーはF6〜F10しか扱われていないので、Excelでよく使われる F2やF4についても補足。

・「データの入力」は連続データのオートフィルでどういうデータなら入力できるのかをいろいろ試行錯誤してみるということが今日設定していた目標。自分自身もいろいろ事前に試したわけではなく、その場で一緒に試行錯誤してみるというのがいいかな、と思っていた。例えば教科書の例で「弥生、卯月、皐月、水無月」や「子、丑、寅、卯」がオートフィルできるので、だったら漢数字で「三月、四月、五月、六月」なんかが可能かどうか?とか。(できるかどうか試してみましょう)うっかりブックマークするのを忘れていたが、この授業の数日前にどこかのWebページで、プログラミングだったかの上達方法として、隣で熟達者が操作するのを見ながらどんどん質問していくという方法が有効だったというのを見たので、ちょっとそのあたりも意識。ちょっと違うか。)

・また、カーソルキーによる移動をなるべく使わないように(ホームポジションからなるべく動かさないように)Tab, Shift+Tab, Enter, Shift+Enterや、いくつかのショートカットキーを紹介し、特にTabとEnterはとっさの時にいつでも使えるように、少々無理しながら指で覚えるような練習。(さらに左手の小指の付け根でCtrlキーを押すというような「匠の技」も!)

・というわけで、一見すると単純な文字入力ぐらいのページなのだが「教科書を教える」のではなく「教科書で教える」ようにすればいろいろな工夫ができるものだな、と改めて認識。

・学生の顔色を見ていると退屈そうだったので最後に一つだけ、ガツンと強烈な課題を、と思い、四則演算のファイルを作ったあと、教科書の内容ではまだまだ先に出てくるif関数の入れ子とvlookupで判定結果を入れる例をやってみたが(どちらも既にこの授業では扱っているが)余裕でクリアしてくれた。ちょっと易しすぎたのかも?とも思ったが、それでもvlookupになると少々作業がもたもたしている様子だった。彼には今後、スピードアップを求めていくことにしよう。

・それでも物足りない様子を感じていたようなので、授業の前日にはてなブックマークでも注目されていた三重大学の奥村晴彦先生の「ネ申Excel」問題の論文をプリントアウトして渡した。次回以降の授業でこれについてディスカッションするかも?

・そういえばこのクラスも先週の暴風警報発令で休講になっているのだが、その分のカバーをどうするのか、うっかり伝えるのを忘れていた。学生が1人しかいなかったショックが大きく…。今度4人が揃った時に(そんな日が来るのか!?)改めて伝えることにしよう。

・この授業がこれから何人出席する授業で推移していくかは予断を許さない状況なのだが(そこまで大げさなものでもないが)だいたいこういう登録人数の時は1回の授業を7点ぐらいのスコアにし、出席してきちんと指示した課題をやれば7点、(取り組みによって少しずつマイナスすることもある。教科書忘れも減点とか。)欠席しても授業でやった課題をやっていれば6割程度の点数を与えるという形で点数をつけていった積算で成績を出すことになりそう。だからといって授業に出なかったらどこかで課題にもつまづくことになり、途中でついてこれなくなる、というような作戦。



=============
第3回 10月9日
=============

・就活だったかの理由で1人は欠席予告があったので、今日は3名。そして3名ともスタート地点とゴール地点がバラバラなので、今日も個別学習を中心にExcelの関数をいろいろと。(来週からは教科書を使いながらなるべく足並みを揃えたい…)今日もB6サイズの罫紙を出席カード代わりに配布し「学習したことを報告」する内容を数行程度で書いてもらった。

・第1回から出席している学生は何とかExcel関数の最終課題まで到達(終了後は来週から使う教科書の最終章のピボットテーブルのところのコピーを渡して自習してもらった)。第1回に欠席した2名は何とかvlookup関数のあたりに片足を踏み入れた程度。まあきちんと理解できているかどうかは別として、関数に困ったときはいつでもこのファイルでの練習に戻ってきてくれたらいい。

・基本的に自習で進めることができる教材だが、90分の間で質問は延べ数で5件ほど寄せられ、直接解説したり教卓PCで同じように操作して解説したりした(関数式を手入力している途中でセル範囲をなぞって範囲指定がうまくいかない時の対処法(下からなぞるとやりやすい)や、四捨五入の方法など)が、かなり手持ち無沙汰だったので、かなり長い間放置していたこのシリーズの教材の最終問題の解説を作ることにした。

・第1回の記事中からもリンクを貼っている自作のExcel関数実習用ファイル一式(.lzhで圧縮、改変・再配布自由)は少しずつステップアップしながらExcel関数の学習を行うことができるようになっているが、文字列操作を扱う(7)のファイルだけは非常に取っつきにくい内容になっている。ここ数年はこのファイルをExcelをやる授業での進度調整(どうしても1回目は欠席する学生がいたりするので…)に使っていたので、(7)までは進まない学生が多かったのだが、今年は1名が何とかこれもクリアできた様子だった。それを記念して…重い腰を上げて長い関数式を書いてみた。

・これは0123-45-6789のような電話番号を3つのパートに分けるという単純な文字列処理なのだが、一番右端の番号が4桁と決まっているのであればかなり易しくなる。しかし世の中には0120-444-444というような電話番号があったりする。この場合は2カ所のハイフン位置を検出するようにFIND関数を入れ子にすれば解決するのだが、配布ファイルにも「ここから先は、もっと関心ある諸君だけでどうぞ。(笑)」という形で解答を掲載していなかった。



・仮に電話番号がA4のセルに入っている場合の解答例は以下の通り。
  市外局番 =LEFT(A4,FIND("-",A4,1)-1)
  市内局番 =MID(A4,FIND("-",A4,1)+1,FIND("-",A4,FIND("-",A4,1)+1)-FIND("-",A4,1)-1)
  番号   =MID(A4,FIND("-",A4,FIND("-",A4,1)+1)+1,LEN(A4)-FIND("-",A4,FIND("-",A4,1)))
(でも最後の部分はRIGHT関数とLEN関数を使えばもうちょっと短く書ける。この場合は以下の式になる。)
       =RIGHT(A4,LEN(A4)-FIND("-",A4,FIND("-",A4)+1)

こういう文字列処理に関心がある方は、この式と解説を含めた(7)のファイルをこちらに置いておきます。ご自由にお使い下さい。



=============
第2回 10月2日
=============

・履修登録人数が4名で、前回がそのうち1名しか来ていなかったが、今日も授業開始時点では1名だけ、しかも前回とは違う1名だった。どうしたらよいものか?と思ったところで前回欠席の別の2名が入室。つまり前回欠席だった学生が3名とも出席し、前回出席だった学生が欠席となるのか?という気がしたので、前回と全く同じ授業内容を繰り返したらよいのかも?…と思ったら前回出席の1名も到着。(前回欠席者のうち2名は就活による欠席だったとのこと)ともあれ、これで履修登録者は全員揃ったわけだが、進度がバラバラということになった。

・とはいえこういうことも予想はしていたので、今日の進め方は前回同様、Excelの実習用ファイル一式を個人のペースで進めていくことにした。試験用紙と書かれた罫紙を全員に配布し、各自のペースで進めながらどこまでいったかを報告するという形を採用。

・今回から出席の3名もExcel実習用ファイルの一番最初から実施。このクラスでは関数を手入力しながら覚えるというポリシーだが、このあたりで引っかかっている者もいた。関数の綴りを間違えたりイコールを入れ忘れたり。最初のあたりだけは一斉指導としたが、そのうち全員がバラバラで違うことをやるようになったので、個別サポートに切り替え。4人ともいろんな箇所で引っかかっていた。

・解説を見ながらやったり、見ないでやったり、途中を飛ばしていきなり難しいものにチャレンジしたりといろいろだったが、全員が最初の3つのファイルは何とか終えた。また前回から出席している学生は6つめのファイルまで終わったとのことだった。

・来週も同じ実習用ファイル一式を使うが、7つめのファイルも終わるかもしれないので、何か別のファイルも用意しないといけないかもしれない。教科書は再来週から使うことを指示。



=============
第1回 9月25日
=============

・昨日の時点で履修登録人数が3人で、今朝見たら1人増えて4人になっていた。そして…教室には1人しか来ていなかった。まさに #大学初回授業あるある ですな…。

・この授業は今年初めて使うExcelをがっつりやるテキストを採択したが、今日は様子見の学生もいるはず、ということで、毎年使っている自作のExcel関数実習用ファイル一式(.lzhで圧縮、改変・再配布自由)をmoodleに掲載。この授業は応用IVなんていう名前がついていてもExcelは全く初めてという学生でも大丈夫な授業設計にしているが、今日の学生はExcelやプログラミングの経験も少しあるとのことだった。そこで実習用ファイルを進めながら、いろいろと高度な(マニアックな)話も入れていった。例えば rand() 関数を使って 1〜3のいずれかの数をランダムで出す方法を考えてもらうなど。(解答例として =mod(int(rand()*100),3)+1 を提示。もう一歩踏み込めば簡単なじゃんけんゲームが作れる。)他に =B19=C19 のような通常ではなかなか思いつかないような関数式(Enterするとセルの値に応じて TRUEやFALSEが返ってくる)や、=AND(条件式1, 条件式2, 条件式3) などとやってTRUEやFALSEを返す実験など。これらをIF関数の第1引数に入れることができることを知っておくとIF関数の仕組みも一層はっきりと理解できるのではないだろうか?

・こんな感じで余計なこと(!)もいろいろやりながら最終的に実習用ファイル(3)の終わりまで終了。かなりExcelとの「相性」が良さそうな学生だったので、引っかかるところもほとんどなかった。

・来週から参加する学生もいるだろうし、レベルやExcelの利用経験もバラバラだろうけど、この授業は各自が設定した目標をクリアすれば単位だけは認定するというつもりの授業設計なのである程度までは進度がバラバラなのは構わないのだが、ちょっと心配なのは最初の3週間ぐらいを欠席してからようやく現れる学生とか…まあ様子を見ながら進めていくというわけでひとまず今回は20分ほど早めに終了。(初回としては十分すぎる分量。実際に上記リンクから実習用ファイルを試してみて下さい。)