ChatGPT

Excelの表をHTMLに変換するマクロをChatGPTで作成した

本記事には広告のリンクが含まれます。ご了承ください

Excelの表をシンプルなTableのHTMLに変換するマクロを作成しました。装飾とかは一切なし、結合されたセルがあればそれはHTML上でも結合してくれる、くらいのものです。ずっと

エクセルシートをHTMLテーブルに変換しちゃう君 (ββ)

を利用させていただいているのですが、人様のサイトはいつなくなるか分からないし、カスタマイズはなかなかできないし、ということで自作した次第。コード出しておくのでカスタマイズはご随意に。

動作説明

Excelにこんなデータがあったとします。

A1~C6までをマウスでドラッグして選択し、マクロを実行します。

処理が終わるとメッセージボックスが出ます。

そうすると、クリップボードに対応するHTMLが張り付いています。ペーストしてご利用ください。HTMLを貼り付けたイメージは以下です。

列1 列2 列3
項目1-1 項目1-2 項目1-3
縦に3つ結合 横に2つ結合
項目3-2 項目3-3
項目4-2 項目4-3
横に3つ結合

生成したコードは以下です。

めっちゃシンプルです。まあこのくらいで僕は足りているので。

飛び地のある表に関してはこんな風になります。

上図のが以下のように出力されます。結合とかをExcel上できれいにして、HTML作ってねって感じですね。

列1 列2 列3
項目1-1 項目1-2 項目1-3
縦に3つ結合 横に2つ結合
項目3-2 項目3-3
項目4-2 項目4-3
横に3つ結合
飛び地1 飛び地2 飛び地3

コードは以下

コードは以下です。Excelのマクロに登録すれば動きます。

難しいところはそう無いと思うので、CSSの指定など入れたい人はマクロを適宜修正すれば簡単に修正できると思います。

動作上の注意

動作確認したExcelのバージョンは以下です。これ以外の動作確認はしていません。特に32ビットとかどう動くかわからんです。

Microsoft® Excel® for Microsoft 365 MSO (バージョン 2310 ビルド 16.0.16924.20054) 64 ビット

Excelの表面をなめてクリップボード処理をしているだけなので悪さするとも思えませんが、このマクロを使うことでどのような損害が出ても僕は責任を持ちません。

このマクロ、ChatGPTで作った

このマクロ、ChatGPTで作りました。欲しいものを日本語で入力して、出力されたコードを貼り付けて動作テスト。何度か「追加発注」をしてコードを直してもらい、バグっぽい所は自分でちょっとだけ調べてコード修正しました。この程度のものなら30分くらいでできてしまうんですねえ。いい時代です。

-ChatGPT