2

昨日、HTML を作成するだけで Excel スプレッドシートにデータをエクスポートする方法に関するこのハウツーを見つけました。CSV 形式だけでは達成できない、フォーマットを使用してセルをエクスポートする簡単な方法のように思えました。

私のアイデアは、Java アプリでいくつかのデータを処理し、結果を Excel スプレッドシートにエクスポートし、Excel の機能を利用してデータをさらに分析したり、グラフを描画したりすることでした... (Excel の強力な機能を再実装することは避けてください)。ただし、データをエクスポートする前に、一部のセルの背景に色を付けたいと考えていました。Excel の「条件付き書式」機能では十分ではありません (さらに、手動で行いたくありません)。Java アプリですべてのフォーマットを使用してスプレッドシートを準備し、そこから Excel に移動するのはかなり便利だと思います。

ハウツー に記載されているアプローチはシンプルで、2 つの問題を除いてうまく機能します。以前にこれを経験したことがある人がいて、この問題に光を当てることができることを願っていました.

  1. 個々のセルを次のよう<td bgcolor="#ff2323">に色付けすると、XLS ファイルを Firefox で開いたときに思いどおりに表示されますが、Excel では、「Web セーフ」カラー パレットと呼ばれるものに色が変更されます。つまり、赤の 256 の異なる色合いを使用する代わりに、「赤」、「フクシア」、「ピンク」、「オレンジ」、「ライト イエロー」、および「白」を取得します。この色変換が起こらないようにする方法はありますか?

  2. XLS ファイル (実際には内部は単なる HTML です) を開くと、すべて問題ないように見えますが、個々のセルを区切る薄い灰色の線が消えており、「オンにする」方法がわかりません。それとは何ですか?

問題 1 は、私が本当に解決したい主な問題です。

4

3 に答える 3

6

特別な XML フォーマット オプションを使用して、スプレッドシート内にグリッド線を強制することができます。

<html xmlns:o="urn:schemas-microsoft-com:office:office"
                        xmlns:x="urn:schemas-microsoft-com:office:excel"
                         xmlns="http://www.w3.org/TR/REC-html40">
<head>
<xml>
 <x:ExcelWorkbook>
  <x:ExcelWorksheets>
   <x:ExcelWorksheet>
    <x:Name>Sheet</x:Name>
    <x:WorksheetOptions>
     <x:Print>
        <x:Gridlines />
     </x:Print>
    </x:WorksheetOptions>
   </x:ExcelWorksheet>
  </x:ExcelWorksheets>
 </x:ExcelWorkbook>
</xml>
</head>                      
<body>
<table>
<tr><td bgcolor="#ff2323">hello</td></tr>
</table>
</body>
</html>                      

より一般的には、この形式に関する詳細なドキュメントについては、このMSDN リンクを参照してください。

于 2009-11-16T16:06:53.860 に答える
1

実際には、Excel が標準の Web セーフ カラーを提供するのではなく、独自のパレットから選択することを期待しています (これはさらに小さいです。「従来の」バージョンの Excel では 56 スロットのみで、おそらく 2007 年にはこれが解除されています)。Excel 内で独自のカスタム カラーを選択することは可能ですが (私が職場で使用しているバージョンでは [ツール] -> [オプション] -> [色])、選択した新しい色ごとに、「工場出荷時の」既定値の 1 つが置き換えられます。

HTML から Excel への自動インポートでは、これらの色を設定する手間がかかりたくないだけだと思います。特に、HTML 疑似 Excel ファイルに Excel のパレットのスロットよりも多くの色が含まれている可能性があるためです。とにかくあなたを失望させることを余儀なくされるでしょう。Excel の実装者は、おそらく、最初から失望させる方が簡単で簡単だと判断したでしょう。;)

于 2009-11-19T06:30:18.063 に答える
1

枠線の場合...

  1. [ツール] > [オプション] に移動し、[表示]タブで [グリッド線] チェックボックスをオンにます

(エクセル2003に基づく)

于 2009-11-16T14:56:09.850 に答える