2017-01-25 10 views
0

.xlsxファイルを手動で作成しました。私はいくつかの行に異なる色を追加し、セルのいくつかはカスタム日付形式を持っています。js-xlsx:.xlsxファイルに書き込むときにセルスタイルを維持する

私はjs-xlsx npmモジュールを使用して.xlsxファイルからデータを読み取ります。一部のセル値を更新するために同じ.xlsxファイルに書き戻している間、選択された色と日付形式は失われます。

私は以下のコードを試しましたが、それは.xlsxセルスタイルを維持するのに役立ちませんでした。

var XLSX = require('xlsx'); 
    XLSX.readFile('abc.xlsx', {cellStyles: true}); 
     var first_sheet_name = workbook.SheetNames[1]; 
     var address_of_cell = 'A1'; 
     var worksheet = workbook.Sheets[first_sheet_name]; 
     var desired_cell = worksheet[address_of_cell]; 
     var desired_value = desired_cell.v; 
     desired_cell.v = 'efg'; 
    XLSX.writeFile('abc.xlsx', {cellStyles: true}); 
+0

これはライブラリの既知の問題であるようです。 GitHub上の問題ページ([#128](https://github.com/SheetJS/js-xlsx/issues/128))に関する詳細な議論があります。 – MTCoster

+0

ありがとうございます。私が使用できる別の図書館はありますか? – SUM

答えて

0

安定版のjs-xslxはスタイルをうまく処理しません。

しかし、a forkがあります。これは、ある時点で元に戻す必要があります。広範な作業がサポートされています。

十分に安定していると信頼できる場合は、既に使用できます。

だけnpm install xlsx-style --saverequire('xslx-style')であなたのrequire('xslx')を交換し、あなたはスピードが、私はこのような理由のために、Excelの相互運用に頼ることになる問題ではない場合、私はあなたがそれがコンピュータにインストールされている必要があり知って

0

を行くために良いことがありますどのオフィスにもMicrosoftスイートのインストールが必要です。

優れた互換性を実現するため、パフォーマンスはそれほど優れていませんが、セルの値とデータを変更するだけであれば、オブジェクトの配列にキャストする限り数千から数千のセルですらすばやいです。

自動サイズの列と行、ページの印刷レイアウト、奇妙な形のセルの挿入/削除、テキストとその他のセルプロパティの書式設定、.xslxからの変換.xlsとその逆のように。

私がすべてのインタラプトについて嫌いなのは、インタラプトを凌ぐことです。彼らは処理が遅く、それです。

関連する問題