[1] KIhtml(ExceシートをHTML変換) Ver1.03(2023/03/11)
1.概略
 ・Excelシートに記述したテキスト文と、罫線で囲った表、グラフ・図形をHTML変換。
 ・シート単位で変換しますが、指定すればブック内の全シートを連続変換できます。
 ・Excel2010、Excel2016、Excel2019で実行できます。


2.動作環境
   このプログラムはExcelVBAで作成しています。Excelの入っていないPCでは使用不可
   Excelマクロ使用可能に設定実行できます。

3.このソフトの使用方法

3−1.ファイルを開く
(1) HTMLへ変換したいExcelファイルを開く。
(2) 本ファイル「KIhtml.xlsm」を開く、アドインが追加されます
  (上記のファイルを開く順序は(1)(2)が逆でも問題ありません)

3−2.実行スタート操作
・追加されたクリックし、[KIhtml]→[マク実行]で実行スタート操作(下図)



・他のスタート方法としてExcelシート上で右クリックで、ショートカットメニューを表示し、
 「シート内容をHTML変換」項目が表示されるので、これをクリックでもスタート出来ます。



3−3.実行ダイアログ表示(メニューの「マクロ実行」クリックで表示)
  ・THMLに変換したいシートが開いている場合は「はい」をクリック。


(1) HTMLファイル保存場所
(2) 作成したHTMLのファイル名は下記チェックで指定
【BookName】ブック名、【SheetName】シート名、【ボックスへ任意名記入】
(3)【全sheet変換】チェックで、ブック内の全シートを連続変換

(4) 背景色が表示さるので、表示内容を変更する場合は、別の色を指定
(5) 【UTF-8】チェックで文字コー[UTF-8]、未チェックは[Shift_JIS]
(6) 【Per対応】チェックで表示状態のままをを表示
(7)「変換スタート」をクリックで変換を実行します。

(8)【文字数調整実行】は 1行の文字数制定。html変換と直接関係なし)



4.Excelシート記載内容のTMLタグ変換
4−1変換の概略
(1) テキスト文字のフォントサイズ(HTMLタグ例:)
   +-----------+--------+-------+-------+-------+-------+-------+-------+
   |Excel      |1〜7    |8〜10  |11〜12 |13〜15 |16〜20 |21〜25 |26〜   | 
   +-----------+--------+-------+-------+-------+-------+-------+-------+
   |HTML絶対   |1       |2      |3      |4      | 5     |6      |7      |
   +-----------+--------+-------+-------+-------+-------+-------+-------+  

(2) テキスト文字飾り
各セルのテキスト文字に、・太字、・斜体、・アンダ−ライン の文字飾り例

  【例:<B>太字</B >、<I>斜体</I >、<U>下線</U >】

(3) テキスト文字飾り色付け
各セルのテキスト文字に、・赤色文字、・青色文字、・黒色文字 の文字飾り例

  【例:<FONT COLOR=#FF0000 SIZE=3 >赤色文字</FONT >
     <FONT COLOR=#0070C0 SIZE=3 >青色文字</FONT >
     <FONT COLOR=#000000 SIZE=3 >黒色文字</FONT >

(4) Excel上で罫線で囲ったセルは、HTMLダぐは自動的にテーブルに兼変換されます
   ただし、表を横に並ベて書いた場合、左側のみHTMLへ変換しテーブル表示。
  (下にある場合は1行空白があれば、何個でもOK)
  ( テーブルの詳細は、4−4表作成に関する特記事項 を参照)
(5)Excelシートに挿入の画像のhtmlダぐ変換
シートの画像は、「ファイル名jpg」フォルダが作成されその中に、「Picture〇.jpg」(〇は数値)、
画像が表示される。 【例:&HLT;IMG SRC='Sheet1jpg/Picture1.jpg'&hgt;】
なお、完成HTMLファイルでは、「ファイル名jpg」「Picture〇.jpg」は任意の名前に変更が望ましい。

(6) 同一行テキスト文字飾り


・下図は、HTMLで表示例


4−2 シートにHTMLタグを記述するケース
Excel2000の頃は、Excelシートに <Table> 又は、<SCRIPT LANGUAGE="JavaScript> などのHTMLタグ
をコピーペーストで記入しても単なる文字扱いで問題なかったが、Excel2003以降は1部のHTMLタグは
コマンドとして認識され記入した時点で自動的に実行されてします。

昔はExcelシートにHTMLタグを記入しても問題なかったが、新しいExcelバージョンではセルにタグ記載
は避けた方がよさそうです。なお、どうしても書きたい場合はModuleシートにcells(○、○)=”*****”
のように、マクロでセルに記入の場合は勝手に実行されないので記入できます。

ExcelシートをHTMLに変換に当り、対象のシートに以下の例をよくセルに記入して使用してします。

[1] ディスプレイ中央行に表示したい場合
<center>・・・・センターに表示・・・・ </center>  (以下実例は&lt; でなく<半角で記述)

[2]スタイルシート記入例
[2-1] _blankは新規のウィンドウに表示
<STYLE> A{text-decoration:none;} A:hover{ color: #ffffff;background-color:#3366ff}</STYLE>
(リンクの下線無し、マウス乗せで背景青色・白文字)

[3]リンク記入例
[3-1] _blankは新規のウィンドウに表示
<a href="http://www2s.biglobe.ne.jp/~iryo/" TARGET="_blank"> ExcelVBA便利帳</ >

[3-2] _topはフレーム分割を解除してウィンドウ全体に表示
<a href="http://www2s.biglobe.ne.jp/~iryo/" TARGET="_top"> ExcelVBA便利帳</ >

[3-3] TARGET=""の指定無し、現在のウィンドウに表示
<a href="http://www2s.biglobe.ne.jp/~iryo/"> ExcelVBA便利帳</ >

[3-4] セルにハイパーリンク記述の場合は、HTMLファイルではHTMLタグに変換して表示されます。


[4] ソースをそのままの形(配置)で表示
<pre>Sub ファイル作成日()
Dim phn As String, fff As String
phn = ActiveWorkbook.FullName
fff = Dir(phn)
MsgBox fff & "の作成年月日→ " & FileDateTime(phn)
End Sub
</pre>

実例:
Sub ファイル作成日()
Dim phn As String, fff As String
    phn = ActiveWorkbook.FullName
        fff = Dir(phn)
    MsgBox fff & "の作成年月日→ " & FileDateTime(phn)
End Sub


[5] 画像表示
<IMG SRC='v1img/54-0.jpg' ALIGN='left'>

大関昇進もオメデトウ。
(昇進はまだ確定していまん)

来場所は大関で頑張って!

<BR CLEAR="all">
実行例:

大関昇進もオメデトウ。
(昇進はまだ確定していまん)

来場所は大関で頑張って!




[6] その他のよくシートに書くHTNMLタグ
<HR>  <BR>  <HR NOSHADE SIZE=7> 
他ページの指定した場所へ⇒<A HREF="kindle54.html#54(2)"> マーカ名⇒<A NAME="54(2)"></ >


4−3「KIhtml」独自のHTML変換記号
HTMLへ変換するシートの特有の情報をHTMLファイルに反映させたい場合、「KIhtml」のみに
対応する独自のHTML変換記号があります。その記号はセル文字を記入字最初に「##;」のマークを
記入し半角1文字空けてHTMLに反映させたい情報を記入します。「##;」のマークで対応できるタグを
以下に記述します。

1999年作成の「KIweb」は「## 」の#2個記入でしたが、その場合何処かの行に#########を多数記入
の行があると正常にHTML変換が出来ない不具合があったので記号は「##;」の3文字に改善しました。

[1]メタ情報
HTMLファイルのトップに記述したいメタ情報は下記例のように記述します。HTMLファイルにそのまま
記述されるので、< >も書きその間に情報を記述します。
記入方法は変換対象シートの何処の行でも構わないが、その行の最初の列に記載して下さい。
何処の行でも問題ないが、通常見直しや訂正が容易にできるようにトップ行に記載します。
またメタ情報は、「KIweb」では3種類に限定されていたが、「KIhtml」では10個までOKです。

 ##; <META NAME="description" CONTENT="ExcelシートをHTMLに変換しKindle本作成方法">
 ##; <META NAME="keywords" CONTENT="kiキンドル,Kindle、Excel-HTMLエディッター">

[2]タイトル情報
HTMLへ変換した場合デフォルト下記[2-1]。このタイトルでOKの場合特に別タイトル記入は不要です。

[2-1] 変換対象のシート名がタイトルになります
<TITLE>kindle54</TITLE>

[2-2]セルに下記を記入した場合
 ##; <TITLE>シートにHTMLタグを記述</TITLE>
・上記が無い場合はTHMLファイル名がタイトルに記述されます
【BookName】ブック名、【SheetName】シート名、【ボックスへ任意名記入】

[3]自動付加の改行<BR>を削除
  シ−トにHTMLタグを記述した場合、変換後必要のない改行<BR>が記述されます。
  解決策としてと特殊文字を記入する方式にしました。タグの後へ「!#」を記述して
  下さい。例: <center>!# → !# → 文字のある場合 <BR>が付きません

4−4表作成に関する特記事項
テーブル作成は、セルが罫線で囲ってあればHTMLファイルでは自動的にテーブルに変換されます。
各セルにに罫線を付けるだけであり、非常に簡単にテーブルを作成できるのが他のアプリケーションに
無い、Excelシートの特技だと思います。

したがって、「KIhtmlではその特徴を最大限生かせるように機能が織り込んであります。

[1] 枠内のテキスト文字
[1-1] 各セルに罫線が有る場合(一般例)
例1-1a:Excelシート記入例


例1-1b:HTMLファイルでWebへ表示例
1行目文字AAAAA 1行目文字AAAAA  
2行目文字BBBBB 2行目文字BBBBB  
3行目文字CCCCC   3行目文字CCCCC

[1-2]多数行のセルをまとめて罫線例。
例1-2a:Excelシート記入例


例1-2b:HTMLファイルでWebへ表示例(1枠に各行表示)
1行目文字AAAAA
2行目文字BBBBB
3行目文字CCCCC
1行目文字AAAAA
2行目文字BBBBB
 
 
 
3行目文字CCCCC


[1-3] 1セルに多数の文字例
例1-3a:Excelシート記入例


例1-3b:HTMLファイルでWebへ表示例(1行に横長表示)
1行目文字AA2行目文字BB3行目文字CC 1行目文字AA2行目文字BB


[1-4] 1セル内の文字を「Alt]+「Ente」で段落しの例
例1-4a:Excelシート記入例


例1-4b:HTMLファイルでWebへ表示例
1行目文字AA
2行目文字BB3
行目文字CC
1行目文字AA
2行目文字BB

[2] テーブル幅をセルに記入して指定
罫線で囲ったセルの前に記述した条件でテーブルを作成
[2-1] テーブル全体の幅指定及び全体枠指定
例2-1a:Excelシート記入例


例 2-1b:HTMLファイルでWebへ表示例
データ ああああああああああ データ いいいいいいいいいい
データ ああああああああああ データ いいいいいいいいいい

[2-2] テーブル全体の幅指定及び全体枠無し
例2-2a:Excelシート記入例


例 2-2b:HTMLファイルでWebへ表示例(BORDER=0の[0]が枠ナシ)
データ ああああああああああ データ いいいいいいいいいい
データ ああああああああああ データ いいいいいいいいいい
※上記で指定したテ−ブル幅は1度指定すれば、そのシ−ト全体に反映させれる(便利な機能だが不要の時もあり)。

と指定なしで記述すれば、以降のテ−ブルは通常に戻る。


[2-3] テーブルの各セルの幅指定
例2-3a:Excelシート記入例


例 2-3b:HTMLファイルでWebへ表示例


データ あああああ データ いいいいい データ おおおおお
データ あああああ データ いいいいい データ おおおおお
※上記で指定したテ−ブル幅は1度指定すれば、そのシ−ト全体に反映させれる(便利な機能だが不要の時もあり)。

と指定なしで記述すれば、以降のテ−ブルは通常に戻る。


[3] テーブルの周囲に文章を記述

[3-1] テーブルの横にテキスト文を表示する方法


例 3-1b:HTMLファイルでWebへ表示例
データ いいいいい データ おおおおお
データ いいいいい データ おおおおお
データ いいいいい データ おおおおお
データ いいいいい データ おおおおお
データ いいいいい データ おおおおお

本例は ALIGN="left"
表の左側にテキスト文字は
ALIGN="right"
と罫線で囲った表の前行の
のセルへ記述します。



[4] テーブルの左に並べて表示

[4-1] 2個のテーブル(罫線)を縦に記入
通常罫線でだ囲ったセルはテーブルになりますが、横に2個並べて書いても、左側のみの変換です。
例4-1a:Excelシート記入例
セルに< table > タグを書き、その大枠のテーブルに、2個のテーブル(罫線)を縦に記入


例 4-1b:HTMLファイルでWebへ表示例

Aテーブルセル1 Aテーブルセル2
Aテーブルセル3 Aテーブルセル4
Aテーブルセル5 Aテーブルセル6
Bテーブルセル1 Bテーブルセル2
Bテーブルセル3 Bテーブルセル4
Bテーブルセル5 Bテーブルセル6

[4-2] ALIGN="left"でテーブルを横に表示
例4-2a:Excelシート記入例


例 4-2b:HTMLファイルでWebへ表示例
上図の6行は1行空で、変換時< BR > が記載されるので左側テーブルは1行下に表示されます。
この< BR > は、余分なタグであり、ソースを開き削除すればテーブルの段ズレは解消します。
cテーブルセル1 cテーブルセル2
cテーブルセル3 cテーブルセル4
cテーブルセル5 cテーブルセル6

dテーブルセル1 dテーブルセル2
dテーブルセル3 dテーブルセル4
dテーブルセル5 dテーブルセル6




[5] テーブル関係 その他の説明
[5-1] セルのフォント・パターン状態は大体HTMLに再現できます
例5-1a:Excelシート記入例


例5-1b:HTMLファイルでWebへ表示例

・・・・左揃え・・・・ ・・・・中央揃え・・・・ ・・・・右揃え・・・・  
文字サイズ9 文字サイズ11 文字サイズ14 サイズ18
文字飾り太線 文字飾り取り消し線 文字飾り斜体 文字飾り下線
背景色 緑色 背景色 黄色 背景色 青色 背景色 灰色
文字色 ピンク 文字色 赤色 文字色 青色 文字色 茶色
セルを結合して中央表示

[5-2] その他テーブル関連注意事項
・ Excel上で罫線で囲った表を横に並ベて書いた場合、左側のみHTMLへ変換。
 (下にある場合は1行空白があれば、何個でもOK)(テーブル横2個表示は前[4]項に記述の細工で対処できます)
・罫線(表)の右に記載したセルのテキスト文字はHTMLに変換できません。
  罫線の最終列をチェックしてテーブル作成の関係で、それより右列は無視となっています。

・「2-3」項目で、各セル毎に横幅指定できるとなっていますが、各セルはTD WIDTH=○○ と記載
 する関係で、テーブルの1行目が連列セルになっている場合はこのセル幅の指定ができません。

・結合セルでテ−ブルがおかしくなる場合は、Exeelシートに余分な罫線が無いか確認して下 さい。
 (罫線を付けた後でセルを結合した場合、非表示になっていますが罫線があります。結合した
 後で罫線を付けた場合は問題なし)(他にも結合セルを変換した場合正しく変換され場合があります)



5.ダウンロード (圧縮ファイルは解凍して使用して下さい)
KIhtmlダウンロ−ド(110kb)

圧縮ファイル名:kihtml.zip
解凍でフォルダ内に、KIhtml.xlsm、KIhtml説明.txt、があります

6.その他
[1]このプログラムはExcelVBAで作成しています。Excelの入っていないPCでは使用不可。
[2]Excel2010・Excel2016・Excel2019で実行出来ます
[3]アンインストール→通常のExcelファイルでありゴミ箱に捨てれば何も残りません。
[4]本マクロ使用に起因するいかなる事態も責任を負いません。使用者の責任で活用して下さい。
[5] 作者への連絡先
   HP URL:http://www2s.biglobe.ne.jp/~iryo/kabu/
   e-mail :iryo@mvh.biglobe.ne.jp


【ホーム】