「マークダウンで書かなきゃいけないけど、マークダウン形式のテーブルの書き方になかなか慣れない…テーブルはやはり慣れ親しんだ Excel で書きたい!」と思い、 Office Scripts を利用して、Excel のテーブルをマークダウン形式のテキストに変換するコードを作成してみました。マークダウン形式に変換されたテキストは、[出力] タブから確認できます。
以下は、マークダウン形式に変換されたテキストのサンプルです。
|果物名|値段|賞味期限|在庫|商品ページへのリンク|備考| |---|---:|---:|:---:|---|---| |**りんご**|¥100 |2023/10/31|*在庫あり*|[りんごについて](https://dummy/)|甘くて美味しい!| |**バナナ**|¥80 |2023/11/5|*在庫なし*|[バナナについて](https://dummy/)|イチオシ!| |**みかん**|¥120 |2023/10/29|*在庫あり*|[みかんについて](https://dummy/)|ビタミンCが豊富!| |**ぶどう**|¥150 |2023/11/10|*在庫なし*|[ぶどうについて](https://dummy/)|皮ごと食べられます。| |**いちご**|¥200 |2023/10/30|*在庫あり*|[いちごについて](https://dummy/)|デザートに最適です。<br />パフェにどうですか?|
Office Scripts のコード
作成した Office Scripts のコードは次の通りです。
利用方法
テーブルの作成:まずは、Excel のシート内に変換対象のテーブルを作成してください。
列名の編集:変換後、列の値を左揃え、中央揃え、右揃えで表示されるように設定したい場合、列名の最後に次のテキストを追加してください。
- 左揃え:
_left
- 中央揃え:
_center
- 右揃え:
_right
追加した後ろの文字(_left
,_center
,_right
)は、変換する際に削除され、変換後のテキストには含まれません。また、追加しなかった場合は、左揃えになります。
- 左揃え:
スクリプトの作成:Excel のテーブルを マークダウン形式のテキストに変換するスクリプトを作成します。スクリプトは、リボンメニューの [自動化] > [新しいスクリプト] から作成できます。新しいスクリプト作成後、コードエディターに、上記に掲載されているコードをコピー & ペーストしてください。
スクリプトの実行:コードエディター内にある [実行] ボタンから、スクリプトを実行してください。実行が完了すると、[出力] タブに マークダウン形式に変換されたテキストが表示されます。
スクリプト名の変更・保存:もし継続してこのスクリプトを利用したい場合は、任意のわかりやすい名前に変更し、保存してください。
保存すると、リボンメニューの [自動化] > [Office スクリプト] セクションに保存したスクリプトが表示されます。
補足
Excel のテーブル上でフィルターをしていても、そのフィルターは変換には適用されません。フィルターされて表示されていないデータを含むテーブルすべてのデータが変換されて、出力されます。行・列の非表示も同様です。行や列を非表示にしていてもその非表示は適用されず、非表示にしている行や列も変換対象となり、出力されます。- [2023/10/23 追記] 表示されているデータのみ、マークダウンテキストに出力されるように修正しました。フィルター等で非表示になっている行や列は、マークダウンテキストに出力されません。
- アクティブシート内に複数のテーブルがある場合、マークダウン形式に変換された各テーブルが、改行区切りで出力されます。
- セルに文字の書式(太字や斜体、打ち消し線)を設定していた場合、変換後もその書式が適用されます。
- ハイパーリンクの表示も対応しています。