SYSTEM DEVELOPMENT

STUDY GROUP

退勤時間の自動入力 @勝手に自習編

地味にめんどくさい勤務表@Googleスプレッドシートへの退勤時間の入力を、自分宛メールの送信一発で完了できるようにしてみた
完全自動にはならないけれど、半自動くらいにはできる。はず。

[課題・目標]

Google Apps Scriptとやらの、特定時刻トリガー機能を使い、
自動振り分け可能な自分宛てメールの送信時刻を抜き取って、勤務表の退勤時刻を自動入力できるようにする(無料で!)
自アカウントのGoogleドライブ上に新規にスプレッドシートを作成してそのマクロを使う形にし、現行の勤務表には一切手を加えない方針で進める。
a) スプレッドシートから、自分宛てのメールを触れるか
b) メールの日時を抜けるか
c) 他のスプレッドシートを開けるか
d) 特定のシートを開けるか
e) 特定のセルを選択できるか
f) 特定のセルに書き込みできるか
g) スプレッドシートを閉じておいても、機能するか

[達成度]

90%
来週1週間、試験運用してみようと思う
[おこなったこと]
a) 自分宛てのメールを触る

b) メールの日時を抜く
https://tonari-it.com/gas-date-object/
c)d)e)f)
他のスプレッドシートを読み書き(URLは直に指定している)
http://qiita.com/nurburg/items/744ec53477f4ae328555
半角全角変換方法(シート名が全角なのよね)

findCell(シート関数のMATCHが使えるのかとおもてた)
https://stackoverflow.com/questions/19457371/find-value-in-spreadsheet-using-google-script
オフセット(findでセルが返ってくるので、オフセットするのが楽)
http://www.relief.jp/docs/google-spreadsheet-gas-offset.html
g) 閉じていても機能するか(コレのお陰で、手放しで使えるモノになる)
http://www.rich.co.jp/blog/tech/16030401/
定形メール送信(Android)
「メール一発送信」

[反省]

現状、自分宛てのメールが未読の状態であれば、自動処理が走り、処理が終わると既読に変更するので、重複処理はされない。
1日のうちに何度も退勤メールが届いたり、日付をまたぐと、どうなるのか。
大部分書いた、本報告書が、何かの手違いで消えてしまい…。
思わぬTake2になっ(ry
自分的にはすんごい便利なった♪
Googleスプレッドシートを使った勤怠管理のシステムは世の中にたくさんあるみたいだけど、現状、それほど複雑なものは必要なく、俺にはコレくらいがちょうどいいby孤独のグ(ry

[改善・予定]

日付をまたいだときは、どうするのか考える。翌9時までは1日のうちとしてカウントするか?つまり32時59分まであり得ると?

menu