XLSM から JSON への変換作業は通常、VBAではなくグリッドのデータ処理がメインです。マクロ有効な Excel ワークブックを開き、データの各行を JSON オブジェクトに変換して、そのペイロードを API、Web アプリ、またはデータベースに渡します。ほとんどのコンバーターはマクロを実行せず、保存されたセルの値と見出し(ヘッダー)を読み取ります。
このガイドでは、WPS Spreadsheets を使った実践的な XLSM から JSON への変換手順(ローカルでの .xlsm ファイル展開、テーブルのクリーンアップ、ブリッジとしての CSV 保存、JSON の生成)を解説します。また、オンラインツール、スクリプト、および注意すべき安全上の制限についても説明します。まずはワークブックを閲覧したいだけの場合は、XLSM ファイルの開き方をご覧ください。

XLSM から JSON への変換で実際にエクスポートされるデータ
XLSM は VBA を保存できる Open XML 形式のワークブックです。一方、JSON はオブジェクト、配列、文字列、数値、およびブール値から構成されるテキスト形式です。ユーザーが XLSM から JSON への変換を検索する場合、ほぼ確実にシートを「オブジェクトの配列(1行につき1オブジェクト、ヘッダー行をキーとする)」として取得することを目的としています。
この形式は、ほとんどの API に適しています:
1 行目は
Product、SKU、Priceなどのキーになります。2 行目以降の各行が 1 つのオブジェクトになります。
空白セルは、使用するツールによって
nullになるか、省略されます。数式は、ファイルが最後に保存された際にキャッシュされた計算結果の値としてエクスポートされます。
通常の XLSM から JSON へのエクスポートに含まれないもの:ボタンのコード、UserForms、ActiveX コントロール、およびほとんどの VBA モジュール。マクロを実行しないとレポートが再構築されない場合は、まず Excel または WPS でそのステップを完了させ、結果の値を変換してください。
XLSM を JSON にエクスポートする前のワークブックの準備
不適切な構造は、XLSM から JSON への変換が失敗する主な原因です。結合されたタイトル、空白のスペーサー行、および 2 行にわたるヘッダーは、キーが乱れる原因となります。変換前に 2 分ほどシートの整理を行いましょう。
以下のチェックリストをご活用ください:
フィールド名は 1 つのヘッダー行にまとめる
各ヘッダーの下に 1 行につき 1 つのレコードを保持する
JSON オブジェクトに含めるべきではない合計行を削除する
改行を含まない、固有でシンプルなヘッダー名を使用する
先頭のゼロが消えないよう、郵便番号や SKU はテキスト形式にする
ワークブックに複数のシートがある場合は、どのシートを信頼できる情報源(ソース・オブ・トゥルース)とするかを決定します。コンバーターは多くの場合、最初のシートのみをデフォルトとします。複数シートのモデルの場合は、シートごとに XLSM から JSON への変換を実行するか、出力オブジェクトで各シートに名前を付けるスクリプトを使用してください。

WPS Spreadsheets を使って XLSM を JSON に変換する方法
WPS Office は Excel 互換のスプレッドシート形式として .xlsm をサポートしているため、PC でファイルを開き、マクロを無効にしたままデータを確認し、クリーンなテーブルを保存できます。このワークフローにおいて、WPS がネイティブな JSON エディターである必要はありません。確実なデスクトップのパターンは、XLSM を開く → クリーンアップ → CSV として保存 → CSV を JSON に変換する、という手順です。これは、API やインポート用として完全な XLSM から JSON へのパイプラインとして十分に機能します。
ステップ 1:WPS のホーム画面から Spreadsheets を開く
WPS Office を起動し、Spreadsheets を選択します。Writer や Presentation ではなく、スプレッドシートのワークスペースを開きます。

ステップ 2:.xlsm ワークブックを開く
メニュー > 開く をクリックし、マクロ有効ファイルを参照して開きます。マクロを有効にするのは、送信者を信頼しており、値の更新に自動化が必要な場合のみにしてください。データのみを扱う XLSM から JSON への作業では、マクロを無効にしたまま、保存されている数値データから作業を行います。

ステップ 3:ヘッダーをクリーンアップし、使用範囲を整える
1 行目に JSON で使用したいキーが含まれていることを確認します。テーブルの上にある装飾的なタイトル行を削除するか、実際のテーブルを Data という名前の新しいシートに移動します。グリッドを離れる前に、日付や小数が正しく表示されているかチェックしてください。
ステップ 4:ブリッジファイルとして CSV 形式で保存する
メニュー > 名前を付けて保存(またはファイルメニューから「名前を付けて保存」)を選択し、ファイルの種類を CSV または Text CSV に設定してコピーを保存します。CSV はテーブルをフラットに保ち、Excel 特有の装飾を削除します。多くの無料コンバーターやスクリプトは CSV を入力として受け付けるため、マクロファイルをアップロードするよりも、XLSM から JSON への最終工程が簡単かつ安全になります。

ステップ 5:クリーンなテーブルを JSON に変換する
CSV を信頼できるローカルコンバーターにアップロードするか、短いスクリプト(pandas を用いた Python、SheetJS を用いた Node、および同様のライブラリがすべてサポートしています)を実行します。オブジェクトの配列を出力し、テキストフィールドを文字列として保持するツールを推奨します。完了すると、WPS のテーブルを 1 行ずつ反映した JSON が生成されます。

後で逆方向の変換が必要になった場合でも、WPS は JSON を Excel に変換する方法 もサポートしています。
XLSM を JSON に変換するオンラインツールとスクリプト
ファイルがすでにクリーンな状態であれば、オンラインの XLSM から JSON コンバーターを使って 1 回のアップロードで作業を完了できます。優れたツールはワークブックを静的に解析し、VBA を一切実行せず、オブジェクトの配列を出力として選択できます。給与、顧客、または健康関連のデータを扱う場合は、出所不明なサイトを避け、代わりにローカルスクリプトを使用してください。
開発者向けには、SheetJS、openpyxl と JSON ダンプの組み合わせ、または商用の Excel API などのライブラリが .xlsm を読み込み、JSON を出力できます。一般的なオプションは以下の通りです:
アクティブシートからのオブジェクト配列
シート名をキーとするネストされたオブジェクト
整形済み(Pretty-printed)JSON と最小化(Minified)JSON
キャッシュされた値の代わりに数式テキストを保持する切り替え
夜間に定期的な XLSM から JSON への変換ジョブが必要な場合、クリックスタイルのツールよりもスクリプトの方がスケーラビリティに優れています。人間が作成した構造が乱れたワークブックには WPS でのクリーンアップ手順を残し、ヘッダーが安定してから自動化を行いましょう。
すべての XLSM から JSON へのワークフローで遵守すべき安全上の制限
マクロワークブックは、コードが含まれたメールの添付ファイルと同様に扱ってください。XLSM から JSON への変換を謳うコンバーターは、マクロを実行する必要はありません。サイトからブラウザでマクロを有効にするよう求められた場合は、操作を中止してください。
以下の点にもご注意ください:
JSON では、後で再インポートするために VBA を保持することはできません。
グラフ、ピボットキャッシュ、および名前付き範囲は破棄される可能性があります。
パスワードで保護されたワークブックは、変換前にロックを解除する必要があります。
シート内の個人データはプレーンテキストの JSON になるため、慎重に保管してください。
ダウンロード後に Windows がファイルをブロックした場合、信頼できるファイルのみプロパティからブロックを解除し、WPS で開き直してください。マクロが無効な状態でも、XLSM から JSON への変換は完了できます。

よくある質問
XLSM から JSON への変換にはマクロも含まれますか?
通常は含まれません。標準的なコンバーターはセルのデータをエクスポートします。マクロ名はオプションのメタデータにのみ表示される場合があります。VBA が引き続き必要な場合は、元の .xlsm を保持するようにしてください。
Microsoft Excel がなくても XLSM から JSON への変換は可能ですか?
はい、可能です。WPS Spreadsheets でファイルを開き、テーブルをクリーンアップして CSV をエクスポートしてから変換します。Open XML を認識するオンラインのパーサーやスクリプトを使えば、.xlsm を直接読み込むこともできます。
XLSM から JSON への出力がネストされていたり、空になっていたりするのはなぜですか?
間違ったシートの選択、空白のヘッダーセル、または結合されたタイトル行が一般的な原因です。データシートに 1 つのヘッダー行を設けて再試行してください。数式が空白で表示される場合は、ワークブックを開き、再計算して保存してから、再度変換を行ってください。
XLSM から JSON への変換に CSV は必須ですか?
いいえ、必須ではありません。しかし、アップロード前にマクロを削除したい場合には実用的なブリッジ(橋渡し)となります。直接的な XLSM パーサーではその手順を省略できます。ワンクリックの利便性よりも、プライバシーやマクロのリスクを重視する場合には CSV を使用してください。





