第38話 合成関数妖怪

「こんなかんじでARRAYFORMULAを処理していくわけだ。やっかいな相手ではあるが、数千行関数が敷き詰められるよりは、おれたちにとっちゃあ楽なわけよ」


「そうですね。でも正直ぼくには危なかったです。数が少なくても倒せなかったらまずいですよね。その、サイトウさんの運動神経はworkerになる前からなんですか?それとも特別な訓練をしているんですか?」


 サイトウのいうことはもっともなのだが、およそただのおっさんとは思えない驚異的な戦闘スキルが前提になっている。やはり建設会社というのは言葉のあやで、ヤクザの鉄砲玉兼総務のExcel職人だったんじゃないか。


「いんや、別にたいして運動するような人生は送ってこなかったしこれといって努力もしてねえよ。まあこの仕事もなげえからな、慣れってやつだよ」


 絶対に無理だ、本当はヤクザなのだと思い、これ以上サイトウの過去を質問するのはやめようと誓った。詰め所にもどったらジムのような設備があるか聞いて通うようにしよう、そう心に決めた。落ち着いて整理し、サイトウの体感でのworker生活が100年を超えているということに思い至れば、これはさほどおかしな話ではない。だが、この時点ではこの世界での1年の長さというものを実感をもって理解することができていないのだった。


「このクエストは序の口だ。もう1件いくぞ」


 これで序の口だったのか。少し生きて帰れる自信をなくした。




 #######################



 次のクエストのシートにいくと、なんとも説明のしにくい生物がいた。顔はイヌ、胴体はなんだか首をさかいにくっきり毛並みが違って丸っこい。足は黄色い毛皮で迫力のある爪をしている。尻尾があるべき場所からはヘビが生えている。


「なんですか、あれは?」


ぬえだな」


「NUE?聞いたことない関数ですね」


「いや、妖怪の鵺だ。知らねえのか?」


「ああ、そういうことですか。鵺ってなんか鳥みたいな声で鳴く妖怪じゃなかったでしたっけ」


「詳しいなおめえ、おれは洋画にでないモンスターはよくしらねえ。ただなんとなくああいう雰囲気だと思ってたよ」


 そう言われるとたしかに鵺っぽい姿だ。聞いたことのある姿とは若干の違和感があるけど、まぁ鵺ってそういうとらえどころのない感じだったと思うので正しいのかもしれない。


「それであれは何の関数なんですか?」


「あれもARRAYFORMULAだ。ARRAYFORMULAが取り憑いて複数の関数が合体してるな」


「そんなことあるんですか」


「たまにあるぞ。あの鵺はちょくちょくパーツが違うことはあるが、ARRAYFORMULAがあるシートではよく見かけるな」


「なるほど。それでなにが合体してるんでしょうか。頭のイヌはLEFTですか?」


「そうだ。尻尾のヘビはINDIRECT」


「文字列をセル範囲に変換するやつですよね。多数のシートから動的に情報まとめたりするときに使ってました。こういう感じですよね」


 INDIRECT(シート名が書かれたセル&"!A1")


「そうだ。特にExcelと違いはない。それから足のトラはCOUNTAだな」


「範囲内の値の数のカウントですよね。COUNTと違って数値意外もかぞえられるやつ。例えば、『Excel』、『タカハシ』、『2019』という3つのセルを対象とした時、COUNTAなら3、COUNTなら『2019』だけを数えて1になる」


「おめえ、誰にしゃべってんだ?」


「すいません、Excelに詳しくない人にもわかるように説明的にしゃべってしまいました」


「なにを言っているんだ、まあいいや。あと胴体のタヌキはROWだな」


「あの胴体タヌキだったんですね、というのはいいとしてROWですか。珍しいですね。一応使ったことはあります。引数1つでセルの行番号を返すやつですよね。例えばROW(C19)ってなら19、ROW(B9)なら9」


「今日はやけに説明的だな、気持ちわりい」


「すいません、なにか義務感みたいなものがあって…。しかしあんな合体してる関数の中身よくすぐわかりますね」


「ああ、LEFTはたまたまなんだがな、INDIRECT、COUNTA、ROWの組み合わせはARRAYFORMULAの中でよく見るんだよ。ROWはないときも多くて、特にINDIRECTとCOUNTAだな」


 そういってサイトウは壁に説明を書きはじめたが、のんきにしゃべっているうちに鵺がすぐそこに迫っていた。



 ※今回の関数

 INDIRECT https://support.google.com/docs/answer/3093377

 COUNTA https://support.google.com/docs/answer/3093991

 COUNT https://support.google.com/docs/answer/3093620

 ROW https://support.google.com/docs/answer/3093316


  • Twitterで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます