数式を使ってExcelの表をHTMLのテーブルにする数式を使ってExcelの表をHTMLのテーブルにする|あべっきぃの超ExcelTweet更新日:2017-03-07Excelの表をテーブルHTML化するにはExcelの表をHTMLのテーブルに変換するには、数式とコピーの繰り返しで作成可能です。ここではプログラム(VBA、マクロ)を一切使わずに、数式だけで作成する方法について説明したいと思います。ここでW3Cの詳細に則って作りたい方は、ここでの説明の一部を作りかえれば比較的簡単にできると思います。HTMLのテーブルの基本事項についてまずはテーブルのHTMLの説明です。■Excelの表をHTMLのテーブルにしたところ決してきれいな表とは言えませんが(笑)、とりあえずExcelのシートのA1:C4(4行3列)の表を使って矢印先のようなテーブルのHTMLを作ります。■Excelの表とその表のHTMLタグタグについての細かい説明は割愛しますが、上記画像の右側はWebページとして見たときに表示される表をHTMLタグで表したものです。(数式を使ってこれを後で作成します)既にお気づきの方もいるかもしれませんが、HTMLタグも規則性があります。この規則性を覚えれば数式を簡単に作ることができます。見出しの部分に着目すると、「<tr>」と「<td>」というタグがあります。これらがExcelで言うところの「行と列」になります。「<tr>」は「行(区切り)」を指していて、今回はExcelの表は4行なので4つの「<tr>」があります。「<td>」は「列(区切り)」を指していて、同様にExcelの表は3列なので3つの「<td>」があります。(「<td>」に関して言えば、CSVファイルのカンマ区切りと同じ使い方とも言えます)先頭の「<table>」と末尾の「</table>」は必ずセットで必要です。「テーブルのHTMLを作る時には必須」と、おまじない程度にして覚えておくと良いと思います。(「border=1」は罫線を意味していて、無くても大丈夫ですが、今回は分かりやすく説明するために入れています)数式を使ってExcel表をHTMLタグ化するそれでは実際にExcelの表と数式を組み合わせてHTMLタグ化したいと思います。1個ずつタグを設定するのは面倒なので、Excelの機能を使って少しでも簡素化したいと思います。■Excelの表の横にtr、td文字を置く上記のようにExcel表の1行目を下にずらし、右側には先ほどのテーブル化するのに使ったHTMLタグを入れます。なんとこれで作業の半分が終了しました!数式を入れるときには「絶対参照」が楽そして実際に数式を入れていきます。下記の図ではセルE2に「=$E$1&A2」と入れています。下記は↑の数式を拡大したものです。ここでのポイントは「絶対参照」です。想定としては、この数式の入ったセルをそのまま下にコピーすることを想定しています。そのため、「$」を入れることでコピーしても参照元のセルを変えないようにしています。本来は下のセルにコピーするだけでなく、このまま右側のセルにもコピーしたいのですが「tr」が不要のためできません。そこで同じようにF列の2行目のセルに数式を入れいます。上記のように「=$F$1&B2」と「$F」にするならば、セルG1の「td」は不要になりますが、ここでは3つのセルに数式を入れてそれをまとめてコピーしたいと思います。■3つのセルに数式を入れたところ後はこの3つのセルを下にコピーします。この作業でほぼ終了しました(「table」の文字はこのタイミングで入れても大丈夫ですが、今回は後で入れます)。HTMLファイルに「数式結果」をコピーする最後にHTMLファイルを開いてこの内容をコピーします。今回はメモ帳に貼り付けます。貼付後、おまじないの「<table>」、「</table>」を上下に入れてOKです。貼り付け後、空改行や「<td>」の横の空白は「タブ」と言われるもので、画面にテーブルとして表示されるときには無視されます。しても気になる場合はExcelの数式で直す(数式を付け足す)こともできます。上記のように数式の入ったセルを「&」で追加するだけです。これでこのセルをコピー&ペーストすればOKです。下記は実際にHTMLファイルとして保存してブラウザで開いたところです。「border=1(罫線、境界線)」有りと無しパターンです。簡単な表をHTMLで作成するならば、今回のような方法でもWebブラウザで閲覧でき、対応可能です。細かい表や、表の1行を1HTMLファイルとする場合、あるいはかなりカスタマイズしたい場合などは、プログラム開発した方がはるかに高速で便利です。!!仕事の効率化のために、Excel関数を学びたいと思ったが、よくある辞典や、テクニック集はレベルが高すぎて理解できない。