第30話 職人のこだわり
おれたちは3人がかりで大群を仕留めた。サイトウが来てすぐ出現したやつらではない。それから片付けては出現の波が5,6回は繰り返されている。少なくとも時間に関してだけいえば後から参加したサイトウですらもう8時間ぶっつづけで関数を処理している。イノウエはもう16時間。あくびが目立つようになってきた。おれだってもう10時間ぐらいになるだろう。この程度の残業なら慣れたものだがworkerの仕事は肉体労働だ。脚も腕も肩も、全身が疲れてきた。
出てくる関数が毎回少しずつ変わるが、まったく変わらないこともある。徒労もいいとこだが、ユーザーの行動は理解できる。おれもシートを構築するときは何度も試行錯誤してやり直す。数式を展開したらエラーや想定と異なる数値を返している行に気づいたら修正しなくてはならない。
それにただ動けばいいってものでもない。可能な限りシンプルで理解しやすい数式にすること。これは他人のためではない。時間が経って再度メンテナンスをしなくてはならない自分のためだ。だいいち職場にExcel職人はおれしかいないのだ。
たとえばこのシートのユーザーは最終的にIFERRORをやめて以下のような記述にした。
=IF(ISBLANK(参照する行の値), "", {数式})
意図はわかる。IFERRORは使い勝手はいいのだが、エラーがあればなんであれ切り捨てる乱暴な関数でもある。本来ならば本筋の数式を修正しなくてはならないようなエラーに気づけなくなってしまう可能性もある。
このユーザーの数式は、理解のしやすさという点ではよくできている。ISBLANKは見ての通り値が空白かどうかを判定する関数だ。数式で参照する値が空白であれば、数式を実行せずに処理する。そういう構造が極めて理解しやすい。
そのこだわる姿勢は評価するがおれならIFERRORで済ませるだろう。IFERRORのほうが数式全体がシンプルにおさまるし、そこまで読みやすさを追求しなくてはならないほど全体の数式も複雑というわけではない。なによりも本筋の数式をIFのFALSEの値で実行するというのがどうにも気持ち悪い。処理する値の形式が決まっているのならISTEXTやISNUMBERを使って以下のように書くだろう。
=IF(ISTEXT(参照する行の値), {数式}, "")
決してユーザーを否定するつもりはない。ただおれならこう書くというだけだ。それぞれの手慣れたやり方でやること自体にも価値がある。こだわりをもって仕事をしているExcel職人を、おれは尊敬する。だから身体中がぼろぼろになってもおれは関数を処理し続ける。それにユーザーだって、自分のこだわりがworkerの残業を生んでいるなど知るよしもないのだから。
「私もう限界です…」
イノウエがへたりこんで言った。
「ああおつかれさん、ふたりとも休憩行ってくれ。しばらくおれがやっとくわ」
「え、いいんですか?サイトウさんだってもう結構長いですよ」
「ああ、おれは慣れてるから大丈夫だ」
「じゃあすいません。いったん休ませていただきます」
そのとき、カバンからブザー音が鳴った。
「お、別の階に出たようだな。まぁあとは集計行のはずだから多くはないだろ。おめえらはおれにまかせて休め」
サイトウ、なんていい上司なんだ。生きていた頃の職場ではなにかと言って仕事を押し付けて帰っていく上司ばかりだった。転生してよかった。
おれは車に戻って椅子に寝転がる。イノウエは帰ってきた瞬間ベッドに倒れて寝息を立てていた。おれも寝るか、と思ったそのときトランシーバーからサイトウの声がした。
「ああ…、タカハシ、すまんが戻ってきてくれないか…」
残業は続くようだ。
※今回の関数
ISBLANK https://support.google.com/docs/answer/3093290
ISTEXT https://support.google.com/docs/answer/3093297
ISNUMBER https://support.google.com/docs/answer/3093296
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます