7
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

MarkItDownでWord/Excel設計書をマークダウン形式に変換してみた

7
Last updated at Posted at 2026-03-17

:seedling: はじめに

AI-DLCを使って、既存システムへの機能追加(ブラウンフィールド開発)をしたい…!

AI-DLCでは、設計・実装・レビュー・テストといった開発プロセス全体にAIを組み込みます。

そのために、まずはAIに読み込ませるドキュメントが必要になりますが、設計書は主にWord、Excelで作成済みだったので…

今回は MarkItDown というツールを使って、ドキュメントをMarkdownに変換する方法を紹介します。


:question:MarkItDownとは

MarkItDownは、Microsoftが公開しているドキュメント変換ツールです。

WordやPDFなどを Markdown形式に変換できます。

Word (.docx)
↓
Markdown (.md)

LLMに入力するなら、やはりマークダウンで渡すのがベストでは?
ということで、手元のWordやExcelで作成された設計書を簡単にマークダウン化してもらいましょう。


事前準備

Pythonのバージョン確認

まずPythonがインストールされているか確認します。

python --version

Python 3.10以上であればOK。


MarkItDownのインストール

※依存ライブラリが多いので、公式でも仮想環境での実行がオススメされています。

①仮想環境を作成

python -m venv .venv

②有効化

  • Mac / Linux
source .venv/bin/activate
  • Windows
.venv\Scripts\activate

③インストール

pip install 'markitdown[all]'

Word → Markdown 変換

変換はとてもシンプルです。
事前にドキュメントをプロジェクト配下に配置して、以下を実行!

markitdown sample.docx > sample.md

出力例

例えばWordに以下の内容があったとします。

タイトル

・手順1
・手順2

変換後のMarkdownはこうなります。

# タイトル

- 手順1
- 手順2

画像がある場合

Wordに画像がある場合は

images/

フォルダが作成され、Markdown内にリンクが貼られます。
※画像自体をマークダウン化したい場合は、さらに別でLLMを使用する必要があります。

例:

![image](images/image1.png)

フォルダ構成の例

project
├ sample.docx
├ sample.md
└ images
   ├ image1.png
   └ image2.png

:interrobang: 気になる精度は

ぱっと見はいい感じ。しかし気になる点もありました。

【Word】

1. 謎リンク発生

image.png

上記のようなページリンクは 1. 概要 4 のように変換され、機能していませんでした。

2. それ、要らないけどな…系

image.png

日付 版数 内容 作成者
2025/11/01 1.0 初版

空行の表は空行ありのまま変換されました(これくらい仕方ない?書いてあるものだし…)

3. 色は認識してくれない

たとえば「赤字は追記事項です」としても、そこまではマークダウンに反映してくれない。

【Excel】

4. 邪魔すぎるNaN

image.png

よくあるExcelでの表は以下になりました。

通知一覧表

Unnamed: 0 Unnamed: 1 Unnamed: 2 Unnamed: 3 Unnamed: 4 Unnamed: 5 Unnamed: 6 Unnamed: 7 Unnamed: 8 Unnamed: 9
通知機能一覧表 NaN NaN NaN NaN NaN NaN NaN NaN NaN
No. 通知名 機能分類 ※1 バッチ分類 ※2 情報元 通知先 通知方法 頻度 通知内容 補足
1 テスト通知 NaN NaN NaN NaN Slack 即時通知 NaN NaN

これはさすがに…といったところ。空白が全部「NaN」に。
また、1列目が空いてると人間的には見やすいですが、「Unnamed: 0」となってしまいました。

5. セル結合は無視される

やはりセル結合はマークダウン化には反映できなかったです。

まとめ

ドキュメントのマークダウン化は、シンプルなものならMarkItDownはオススメです。
テキスト、表そのものの出力精度は高いです。
特にWordなら、大体はイメージ通りの結果を出してくれます。
Excelは超シンプルな表なら良さそうですが、空白やセル結合があるとかなり微妙な結果になりました。

7
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?