表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
異世界転生したけど、スキルが『Excel』だけだった。でもマクロ組んだら魔法より強かった件  作者: まこーぼ


この作品ページにはなろうチアーズプログラム参加に伴う広告が設置されています。詳細はこちら

7/51

第7話:摩擦熱のFor Nextループ 〜マクロが灯す文明の光〜


 目の前には、最高の食材と、最悪の欠落があった。

 新鮮なホーンラビットの肉ブロック。

 そして、圧倒的な熱源の欠如。


 俺はため息をつきながら、泉の近くの乾燥した岩場に腰を下ろした。

 周囲から集めてきた枯れ枝(`item_branch_dry`)と、少し太めの倒木(`item_log_rotten`)を並べる。

 着火剤代わりになりそうな乾燥した苔も用意した。


 だが、点火の手段がない。

 原始的な「きりもみ式」や「弓切り式」の火起こし。知識としては知っている。木の棒を木の板に押し当てて、猛烈な勢いで回転させ、摩擦熱で火種を作る方法だ。

 しかし、あれは重労働だ。今の俺の体力(HP)は満タンだが、スタミナと技術が追いつくとは思えない。途中で腕が疲れて止まってしまえば、熱は冷め、努力は水の泡になる。


 「継続的な高速反復運動」。

 それが火起こしの本質だ。

 人間が苦手とし、コンピュータが最も得意とする分野。


 俺はニヤリと笑った。

 Excelには、そのための機能があるじゃないか。

 「マクロの記録」機能が。


 俺は手頃な太さの木の枝を一本手に取り、倒木の平らな面に垂直に立てた。

 両手で枝を挟み込む。

 深呼吸。これから行うのは、偉大なる儀式の「ひな形」作りだ。


 意識のメニューバーから [開発] タブを開く。

 左上にある赤い丸ボタン。

 [マクロの記録] を選択。


 ダイアログが出る。

 `マクロ名: Fire_Ignition`

 `ショートカットキー: Ctrl + q` (急ぐからな)

 `保存先: 作業中のブック` (この世界)


 [OK] を念じる。


 ピロン。

 ステータスバーに「記録中」のアイコンが表示された。

 ここからの俺の動作は、すべてコードとして記録される。余計な動きはできない。


 俺は両手のひらを擦り合わせ、挟んだ木の枝を回転させた。

 ズリッ、ズリッ。

 右手が前へ、左手が後ろへ。

 その逆。

 一往復。

 しっかりとした摩擦を感じながら、丁寧に、確実に。


 動作終了。

 すぐに [記録終了] ボタンを押す。


 ふぅ、と息を吐く。

 たった一回の往復運動。これだけでは熱の「ね」の字も生まれない。

 だが、種は蒔かれた。


 俺はすかさず VBE(Visual Basic Editor)を開いた。

 `Module2` が生成されている。

 中身を確認する。


 ```vba

 Sub Fire_Ignition()

  '

  ' Fire_Ignition Macro

  '

  Selection.Object("branch_01").Rotate Right:=15, Speed:=Normal

  Selection.Object("branch_01").Rotate Left:=15, Speed:=Normal

 End Sub

 ```


 世界の記述は、やはりオブジェクト指向らしい。俺の動作が `Rotate` メソッドとして記録されている。

 このまま実行しても、一回こするだけで終わってしまう。

 ここからがプログラマーの領分だ。


 俺はコードを書き換える。

 回転の回数を、人間には不可能な領域まで引き上げる。


 ```vba

 Sub Fire_Ignition()

  Dim i As Long

 

  ' 高速処理のための画面更新停止(物理的なブレをなくすため)

  Application.ScreenUpdating = False

 

  ' 1万回のループ

  For i = 1 To 10000

  ' 速度パラメータを Max に書き換え

  Selection.Object("branch_01").Rotate Right:=15, Speed:=Max

  Selection.Object("branch_01").Rotate Left:=15, Speed:=Max

 

  ' 100回ごとに排熱処理(という名の酸素供給)がないと発火しないかも?

  ' いや、摩擦熱だけで押し切る

  Next i

 

  Application.ScreenUpdating = True

 End Sub

 ```


 よし。

 1万回往復。速度MAX。

 これを実行した時、俺の腕が物理的にどうなるか(ねじ切れるか、勝手に動くのか)分からない恐怖はある。

 だから、今回は `Selection` (選択範囲)を「俺の腕」ではなく、「木の枝そのもの」にフォーカスしておく。

 俺は手を離し、ただ木の枝が倒木の上に立っている状態(不安定だが、少し穴を掘って固定した)にした。


 対象選択: `木の枝`

 実行キー: Ctrl + q


 カチッ。


 ブゥゥゥゥゥゥン!!!


 低周波のような唸り声が、森に響いた。

 俺の手は触れていない。

 だが、木の枝が、視認できないほどの速度で回転を始めたのだ。

 残像すら見えない。ただ、そこにある枝の輪郭がブレて、半透明の霧のように見えるだけ。


 キュイイイイイイイ!!

 木と木が擦れ合う音が、もはや悲鳴のような高音に変わる。

 一瞬で紫煙が立ち上った。

 焦げ臭い匂いが爆発的に広がる。


 「い、いけっ!」


 ボッ!


 煙の中に、小さなオレンジ色の光が生まれた。

 火だ。

 それは瞬く間に乾燥した苔に燃え移り、赤々とした炎へと成長した。


 俺は慌ててマクロを強制停止(Escキー連打のイメージ)させた。

 そのまま回し続けていたら、摩擦熱で枝がプラズマ化していたかもしれない。

 回転が止まる。

 先端が炭化した枝が、コロンと転がった。


 成功だ。

 目の前で揺らめく炎。

 文明の象徴。

 俺は小枝を継ぎ足し、火を育てた。パチパチという爆ぜる音が、これほど心を落ち着かせるものだとは知らなかった。


 MPバーを見る。

 `MP: 10/10` → `2/10`

 ごっそり減っている。物理現象への干渉、それも高速ループ処理は燃費が悪いらしい。

 軽い眩暈を感じるが、今は食欲が勝る。


 俺は適当な生木(湿っていて燃えにくい枝)を拾い、皮を剥いで串を作った。

 そこに、先ほど解体したホーンラビットの肉ブロックを突き刺す。

 塩も胡椒もない。

 だが、今の俺には不要な装飾だ。


 肉を火にかざす。

 ジジッ……。

 表面の水分が蒸発し、脂が溶け出す音。

 ピンク色の肉が、徐々にキツネ色へと変わっていく。

 一滴の脂が滴り落ち、炭火に当たってジュワッと煙を上げる。

 その煙が肉を燻し、香ばしい匂いをまとわせる。


 たまらない。

 匂いだけで白飯が食えそうだ。

 腹の虫が暴動を起こしている。

 「結合エラー:消化不良」なんてバッドステータスはもうない。あるのは純粋な「空腹」だけだ。


 中まで火が通ったか?

 俺は肉を凝視した。

 数式バーを見る。

 `焼きウサギレア`

 まだか。


 じっくりと回しながら焼く。

 表面がカリッと焦げ、脂が泡立っている。

 `焼きウサギミディアムウェル`

 今だ。


 俺は串を火から離し、熱々の肉にかぶりついた。

 アグッ。


 「――ッ!!」


 熱い。

 だが、その熱さと共に、強烈な旨味が口の中で爆発した。


 カリッとした表面の香ばしさ。

 その奥から溢れ出る肉汁。

 噛み締めると、繊維の一本一本が弾力を主張し、噛めば噛むほど濃厚なエキスが染み出してくる。

 野生の味だ。

 スーパーで売っているブロイラーのような淡白な味ではない。

 血の気が多く、少し鉄分の味がする、力強い生命の味。


 臭みはある。ハーブもスパイスもないから当然だ。

 だが、その臭みさえも、今の俺には最高のスパイスだった。

 これが「生きる」味だ。

 トカゲをデータとして吸収した時とは違う。

 俺は今、自分の口で咀嚼し、喉を通し、胃袋に落とし込んでいる。


「うまい……」


 涙が出そうだった。

 ただの焼いた肉が、こんなに美味いなんて。

 社畜時代、デスクで流し込んでいたコンビニ弁当や、接待で食べた味のしない高級フレンチが、霞んで消えていく。


 俺は夢中で肉を貪った。

 骨の周りの肉までしゃぶり尽くし、指についた脂まで舐め取った。


 完食。

 およそ300グラムはあった肉塊が、数分で胃の中に消えた。

 胃袋からじんわりと熱が広がり、手足の先まで血が巡っていく感覚。


 MPバーが少し回復した。

 `MP: 2/10` → `4/10`

 食事による微量回復効果か。


 満腹感と共に、強烈な睡魔が襲ってきた。

 緊張の糸が切れ、MP枯渇の反動が来たようだ。

 火はまだ燃えている。

 この火があれば、獣もある程度は遠ざけられるだろう。

 俺は倒木に背中を預け、火の暖かさを感じながら目を閉じた。


 Excelスキルがあれば、なんとかなる。

 火も起こせるし、狩りもできる。

 この異世界で、俺は生き残れる。

 いや、生き残るだけじゃない。

 このふざけた世界を、俺好みの「快適なワークシート」に変えてやるんだ。


 そんな野望を抱きながら、俺の意識は `Application.Quit` されたかのように、深い眠りの底へと落ちていった。


 ……その時。

 眠りに落ちる寸前の俺の耳に、ピロリン、という通知音が聞こえた気がした。

 

 `[Achievement Unlocked]: 原始の炎`

 `[New Skill]: マクロ記録 (Lv.1) を習得しました`


評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

↑ページトップへ