エクセルで作成した表をHTMLのテーブルに変換
お世話になります。
掲題の通り、エクセルで作成した表をHTMLのテーブルに変換したいと
考えておりますが、事情があってエクセル内でマクロ(VBA?)で実行したいです。
理由は、私自身であればそもそもHTML直打ちないしWEB系ソフトで
テーブルを作ることが出来るのですが、今回はWEBの知識ゼロの
メンバーも含めて人海戦術的にHTMLのテーブルを色々なパターンで
作る必要があるからです。
作ることになるテーブルはサイズ表であるため、
一番小さい場合は
「サイズ展開が1つに対し、縦の長さ、横の長さを表示する」ものになります。
テーブルにはサイズ展開のタイトル行と、縦・横のタイトル列を含みますので
つまりテーブルとしては、2列×3行になります。
行が一番増える場合は
「サイズ展開が1つに対し、縦の長さ、横の長さ、高さを表示する」ものになります。
テーブルにはサイズ展開のタイトル行と、縦・横・高さのタイトル列を含みますので
つまりテーブルとしては、2列×4行になります。
また、上記はどちらのサイズ展開が1サイズ分しかない場合となりますが
このサイズ展開はアイテムにより異なり、最小で1、最大で6まであり得ます。
ちなみに、タイトル行の文言もタイトル列の文言も何パターンかあります。
このような状況のときに、エクセルに入力されるのは最大7列4行ですので、
そのエリアを見て、値が入力されているかいないかにより表のサイズを見極め、
また、その入力されている値を参照して、テーブル化したいというのが希望です。
このとき、コマンドボタンを用意して、表に入力をした後でそのボタンを押せば、
求めるテーブルタグ表記が別の場所に自動セットされる、という仕様を求めています。
とにかく、沢山サイズを測りまくる他のメンバーがなるべくとっつきやすい方法を
模索しています。
ちなみに、上記のような事が出来ない場合は、エクセルないし紙に書いてもらった
サイズ表を見ながら私がテーブルタグ化していく、となるので進みが一気に遅くなる
ため、出来るだけ他メンバーが簡単にテーブルタグ化まで出来ることが
強い希望となります。
ちなみにテーブルの幅は入力している列数によりwidthを50ずつ増やしたいです。
添付した画像は、色々な大きさの表があり得ることを示しています。
複数のテーブルを用意して、ひとつのボタンで結果を得ようとしているものではありません。
特定のエリアを決めて、そこに他メンバーが順番にエクセルの表をコピペして、
その後ボタンを押して結果を取得し他の場所に保存。
そしてまた次の表をセットして・・・という作業の流れになるかと思っています。
ちなみに、VBAを自分でコーディングした経験はありません。
関数で出来ないことを質問した結果、マクロでの対応を進められて、
標準モジュールにコピペしてそれを使ったことがある程度です。
そのため、「開発」タブからコマンドボタンを選んで用意しましたが
そのボタンを押したらVBAのアクションが実行される仕組みも
調べないとわからないレベルです。
解決方法をご教示頂ければ幸いです。
そもそもこういった制御は出来ない、ですとか
こういった代替方法がある、など、実現方法に
こだわりはありません。
よろしくお願いいたします。
お礼
拝見しました、参考にさせていただきます。 ORUKA1951さんありがとうございます。