0

Excel と、ワークシートを HTML として保存/エクスポートする方法について質問があります。

ワークシートの結合されていないセルに長いテキストがあり、ワークシートを Web ページとしてエクスポートすると、HTML ソース コードでセルのテキストが複数行に分割されるのはなぜですか?

たとえば、セル A1 にはテキストSelect X and Y, and run XYZ code to blah blah blah があります。ワークシートを Web ページとして保存すると、ソース コードは次のようになります。

<tr height=20 style='height:15.0pt'>
  <td height=20 class=xl1511698 colspan=5 style='height:15.0pt'>Select X and Y,
  and run XYZ code to blah blah blah</td>
 </tr>

X と Yを 1 行で選択し、 XYZ コードを実行して、別の行に何とか何とか入れます。これを防ぐ方法はありますか?いくつかの VBA コード、または組み込みの設定?

エクスポートされた html ファイルの各行をスキャンしてテキストを検索するマクロ コードがあるため、この情報が必要です。HTML ファイル内のテキストが壊れているように見える場合、マクロはそれを見つけられませんでした。

4

2 に答える 2

0

さて、私も回避策を見つけました。次の VBA コードを使用して、編集用に html ファイルを開きます。

Open filePath For Input As #nextFileNum
  oldFileContents = Input$(LOF(nextFileNum), #nextFileNum)
  Close #nextFileNum

次に、VBA コードの次の行を使用して、すべてのテキスト (実際のコンテンツ) が 1 行に表示されるようにタグを整理します。

oldFileContents = Replace(oldFileContents, vbCrLf, " ")
oldFileContents = Replace(oldFileContents, Chr(13), "")
oldFileContents = Replace(oldFileContents, Chr(10), "")
oldFileContents = Replace(oldFileContents, "&nbsp;", " ")
oldFileContents = Replace(oldFileContents, ">", ">" + vbCrLf)
oldFileContents = Replace(oldFileContents, "</", vbCrLf + "</")
oldFileContents = Replace(oldFileContents, "  ", "")

これは、HTML ソース コードを次のようにフォーマットします。

<tr height=20 style='height:15.0pt'>
<td height=20 class=xl1511698 colspan=5 style='height:15.0pt'>
Select X and Y,  and run XYZ code to blah blah blah
</td>
</tr>
于 2012-12-06T17:34:54.063 に答える
0

HTML テキスト ファイルの行は、約 80 文字で折り返されているようです。これを変更する明らかな方法が見当たらず、このような改行は通常 HTML では重要ではないため、変更できないと思われます。Excel セルに ( を使用して) 改行を挿入するAlt+Enterと、HTML 出力で<br>.

あなたはこれを尋ねました:

HTMLソースコードでセルのテキストが複数行に分割されるのはなぜですか?

..そして、答えはあまり役に立ちません。

ファイルがどのように見えるかについて、不当ではない仮定をしました。残念ながら、この場合、その仮定は正しくないことが判明しました。<td>ファイル内のテキストを検索し、ファイル内の物理的な行をまたがって</td>タグを検索するように、コードをよりスマートにできますか?

于 2012-12-06T10:39:52.050 に答える