
ICT支援員業務日誌「冬休みの宿題」
先週の金曜日が2学期の最終勤務日で、翌日から3週間の冬休みが始まりました。ICT支援員は朝寝坊していいのですが、習慣で朝5時半に目が覚めてしまいます。しかし、しばらくは目を閉じて宿題を考えて過ごしました。
2学期の終わりに保護者懇談会のあった日、担当者から
「以前から使っている児童別に懇談日時を決めて個票を印刷するEXCELマクロが上手く機能せず、関係ない別クラスの個表や白紙が何十枚と余分に出てくるので、マクロを直してほしい。」
今年度は終わったので来年度からでいいからと、マクロの修理を頼まれました。このオファーを自信満々で引き受けたのはいいのですが、見たことのないコマンドばかりが並んでいて悪戦苦闘を5日間続けましたが、結局、判りませんでした。
「偉そうに引き受けましたが、どこが間違いかは判りません。何より、見たことのないコマンドが並んでいて、お手上げです。」
担当者に素直に白旗を掲げたのは、マクロを直さなくても「0」から自力で作ろうと思い立ったからでした。この宿題を冬休み最初の朝、布団の中で考えていました。その朝から、まる2日間、没頭して作り上げました。
以下は作成した3つのシートの内容です。マクロは使わずに関数だけ使いました。Windows機を持っていないのでGoogleのスプレッドシートを使いました。差込印刷の機能はないので、ネットで見つけたGASを使いました。上手くできたと思ったのでブログにアップします。
以下は作成した3つのシートの内容です。
写真は関数がうまく機能しない箇所が出てきたときチャットGPTに助けてもらった画面です。
【懇談会日程調整】シート
縦(ABCDE列)のセルに全校児童の4桁の学籍番号(A)・学年(B)・組(C)・番号(D)・名前(E)を配置する。
横の2行に1:30〜4:40まで10分おきの時間を配置する。これを4日分続ける。
担任は各児童の懇談日と日時が交差するところに◯を打つ。
児童の右端に◯を付けたセルの懇談日と時間を「:」でつないだデータを表示させる。
更にその右端に兄弟姉妹の名前を書き、その右に兄弟姉妹の名前で検索した懇談日と時間を「:」でつないだデータを表示する。こうすれば担任が時間を決める時に兄弟の懇談日時を見ることができる。
クラスごと同一時間に重複がないかチェックします。
同一児童に重複がないかチェックします。
転入生があった場合は最終行に学年(B)・組(C)・番号(D)・名前(E)を記入すると学籍番号が計算されるので、学籍番号を使って並び替えをします。
転出児童は消さないと差込印刷で個票が出てくるので学年(B)・組(C)・番号(D)・名前(E)をクリアします。学籍番号などが初期化されるので、学籍番号で並び替えます。
【クラス別印刷】シート
上の行に学年・組を入力できるセルを配置する。
横軸に懇談の日にちを配置する。
縦軸(A列)に1:30〜4:40まで10分おきの時間を配置する。
縦軸と横軸が交差するセルに名前を入れたいので、【懇談会日程調整】シートから、1.で入力した学年・組の児童で、しかも懇談日と時間を「:」でつないだデータが同じ値をもつ児童の名前を検索して表示する。
学年と組を変えると即座に別のクラスの一覧表に変わります。
【差込データ】
【懇談会日程調整】シートから学年・組・番号・名前と懇談日と時間を参照して表示する。
この参照したデータを元にして、差込印刷を行う。