「娘の名前を変数にしないで!」PTAにVBAを持ち込んだ夫の末路
【外伝3】「関数之助、PTAに突っ込む〜マクロが爆ぜた日〜」
PTA通信をマクロで自動生成!?
家庭にもExcelを持ち込む夫・関数之助と、限界を迎える妻・弥生の春が始まる。
これは、エクセルで家族を壊しかけた男の記録である――
【第一話:お便り、地獄より届く】
春。
弥生の元に届いた1枚のプリント。
「新年度PTA役員のお知らせ」
※保護者は交代で「通信係」を担当していただきます
その瞬間、背後から聞こえた声…
「通信…?つまりドキュメント生成業務じゃな?わしの出番かッ!」
関数之助、まさかの立候補の春であった。
【第二話:奉行の仕様書(迷惑)】
役員集会にて、関数之助が配った紙の束。
「これがわしの提案する『PTA通信の自動化仕様書』である!」
「マクロは発動形式:OnWorkbookOpenじゃ!」
皆、黙る。
「おたく…どこまでExcelでやる気…?」
関数之助「連絡網?Excel表じゃ!
お便り?VBAでWord連携じゃ!
子どもの忘れ物? ⇒ If .帽子 = "" Then MsgBox "かぶれぇぇぇ!"
【第三話:弥生、完全にブチ切れ】
深夜2時。
家庭内、マクロデバッグ音が鳴り止まぬ。
弥生「お願い…わたしの育児を関数で語らないで…」
関数之助「わしは…ただ、楽にしてやりたくて…」
弥生「その気持ちは、うれしい。
でもわたしは、娘の名前を変数で呼ばれたくないのよ!!」
【第四話:PTA通信マクロ、公開】
翌週、PTAで関数之助がついに完成版を披露。
タイトル:「通信の書状_生成ツール.xlsm」
【VBA PTA通信マクロ(抜粋)】
Sub 通信生成()
Dim 月 As String
月 = Format(Date, "mmmm")
With Worksheets("お便り")
.Range("A1").Value = "〇月のごあいさつ"
.Range("A2").Value = "新学期が始まりました。"
.Range("A3").Value = "保護者の皆様、以下のToDoを確認ください。"
.Range("A5").Value = "- 運動会:準備(" & Format(Date + 7, "yyyy/mm/dd") & ")"
End With
MsgBox "通信完成しました。印刷しますか?", vbYesNo
End Sub
【第五話:子ども、バグに泣く】
娘・関奈ちゃん(5才)が泣きながら帰ってきた。
「今日…うちだけプリントに“Nullです”って書いてあった…」
関数之助、気づく。
“育児”にOptional引数はないんや…
【最終話:弥生のひとこと】
ある朝、弥生がそっと言った。
「あなたのExcelには、“私”も“子ども”もいない。
…ただ、整ったセルがあるだけ。」
関数之助、つぶやく。
「=IF(愛し方が間違っておったなら, 修正せねばなるまい, TRUE)」
【エピローグ】
・関数之助、マクロを封印。今は手書きで通信を代筆している
・弥生は手紙の最後に、「Excelで悩んでる奥様へ」の一文を入れた
・娘・関奈ちゃんは「わたし、なまえセルじゃないからね!」と元気
めでたし、時々Alt+F11。
