【Excel×Linux】ExcelでLinuxを操作するという猛者がいた件

↑これはキャッチアイコンです笑

▶ YouTubeで見る

✅ 2025年、X(旧Twitter)とYouTubeで話題沸騰

2025年、X(旧Twitter)とYouTubeで突如話題となった「Microsoft ExcelでLinuxを操作する」という衝撃的なプロジェクト。

ことの発端は、エンジニアのNSG650氏がX上で投稿したある一枚の画像でした。

その投稿に刺激を受けたEnderman氏が、NSG650氏の公開したソースコードを基にプロジェクトを引き継ぎ、
なんと実際に動作するExcel上のLinux環境を完成させてしまったのです!


■ プロジェクトの概要

Enderman氏は、NSG650氏が公開していたコードを自ら精査・改良し、チップ(寄付)も行った上でプロジェクトを継続。
YouTube上でその成果を公開しました。

操作方法は非常にシンプルで、

  • A列にはLinuxのログが流れ、
  • C2セルにコマンドを入力することで実行できます。

⚠ 現時点での課題

Enderman氏によると、まだいくつかの課題が残っているそうです。

現在の制限事項:

  • Vimの操作に制限あり:
    通常は Esc キーでモードを切り替えますが、現状は実装されていないとのこと(対応の余地あり)。
  • 複数行のコマンドが実行できない:
    1行単位でしか入力を受け付けない仕様。
  • ASCIIエスケープシーケンスの問題:
    内部的な処理で対応しきれていない部分があるとのことで、今後の改良が期待されます。

■ Enderman氏のコメント

Enderman氏は、動画内で次のように語っています:

「このプロジェクトはNSG650氏の公開がなければ実現しなかった。
本当に感謝しているし、ぜひ彼の活動もチェックしてみてほしい」

開発者同士のリスペクトが感じられるやり取りにも、ネット上では称賛の声が集まっています。


■ ダウンロード情報

今回のExcelファイル(.xlsm)およびDLLファイルは、Enderman氏のYouTube動画の概要欄からダウンロード可能です。
興味がある方は、ぜひ一度試してみてください!


■ 最後に:VBAソースコードを見てみた

筆者自身も、VBAコードを実際に覗いてみました。
驚いたのは、中身がとても簡素に作られていたことです。

もっと複雑な処理が行われていると思いきや、意外とシンプルな構造で、
工夫次第ではさらに拡張も可能と感じました。

興味のある方は、コードもぜひ覗いてみてください。
「Excel × Linux」というまさかの組み合わせ、あなたも触ってみたら驚くはずです。

まず初めにファイルを開くと自動的にコードが流れるようになっており、moduleにあるRunLinuxを実行させます。

moduleでは関数の宣言と実行環境がWindowsとMac対応のSleep関数の宣言が記載しており、

VBAでRISC-Vエミュレータ(mini_rv32ima)をDLL経由で呼び出して、Excelのセルとやりとりしています。

RunLinuxでは簡単に、

ログクリア→エミュレータ初期化(DLL内の init 関数を呼出)→メインループ→出力処理→入力処理(C2セル)→ユーザー入力待機処理

という流れとなっており、実はUserの実行環境によってMacかWindowsかで処理内容を変更しています!

Sleep実行

Macは特殊な事情でめちゃくちゃ長くなっています。(Mac側はAPIが usleep(マイクロ秒単位=1/1000ミリ秒)しかないため、大きな値を直接渡すと整数オーバーフローが起こる可能性?)

VBAで指定秒数だけ待機するための関数でCPU使用率を抑えて、Excelがフリーズしないように待つための工夫がされている

※丁寧に深夜0時をまたいだときの対策もされている!凄い。

最後にRISC-Vエミュレータの出力やログを1行ずつExcelに記録していく。A列にログが出力されていき、35行目でリセット(削除され再度下に出力)

という感じの中身でした。

ダウンロードするファイルの中に「linux.dll」もありましたが、そちらは解説しません!

気になった方は是非ダウンロードしてみてください!

■ 関連動画・引用元リンク

本動画:

▶ YouTubeで見る


NSG650氏:

https://x.com/nsg650/status/1916886746169844002

Enderman氏:

https://x.com/endermanch