Excel2013Excelの表から、HTMLを作成するということが、実務ではまだまだ発生します。そんなときに、文字列を連結する演算子「&」を使った数式を入力してテーブルタグを作成するということを行ったりします。非常に便利な方法ですが、列数が増えると、数式を手入力するのが面倒です。Applications)で作ってみました。Sub例えば、A列からG列までの表があるときに、H1セルを選択しておいてから、上記のマクロを実行すると、A1:G1セルからHTMLのTABELの1行にするタグを、H1セルに数式の形で入力してくれます。HTMLファイル上の個別の列にスタイルを指定したいこともありますから、上記のマクロ実行後に作成された数式を修正して、その後ダブルクリックなどでオートフィルしてすべての行のタグを作る仕様としました。サンプルマクロの解説データが消えるとイヤですから、アクティブセルにデータが入っているときは、問答無用でマクロを終了しています。Subアクティブセルが空っぽなら実際にマクロが開始してTR・TDタグを作成します。厄介なのがHTMLタグを作るためには「"」や「&」を入力しなければならないところです。「"」を文字列として使うためにVBAでは「""」(ダブルクォート2個)と指定する関係で、コード上で文字列を括る「"」とつながった「"""」(ダブルクォート3個)があちこちにあります。VBAで文字列の連結は演算子「&」を使いますが、今回のマクロでは数式の中に「&」を入れる必要があります。すると、数式として利用する「&」なのか、VBAのコード上で文字列を連結する「&」なのかが区別しにくくなります。そのため、反則技ですが、本来は足し算をする演算子「+」を使ってVBA上の文字列の連結を敢えて行っています。&」でないとダメなので、加算演算子「+」で代用するのではなく、本来の「&」を使っています。他の部分はおそらく大丈夫だと思いますが、上記のマクロが万一うまく動かないようなときは「+」を「&」に修正してください。最後にテーブルタグを作る数式をアクティブセルに書き込んでいます。Officeの使い方などを紹介し続け(2012年頃からはVBA関連記事が多め)、毎日5万人の方にご覧いただいています。