問題タブ [closedxml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
6535 参照

c# - ClosedXML(C#)で範囲を設定できますか

一度に1つのセルにデータを入力するのではなく、closedXMLを使用するときに、配列から一度に範囲にデータを入力できるかどうかを確認したかったのです。また、配列から範囲を設定できる場合、セルごとにループして各セルにデータを入力するよりも高速ですか?

0 投票する
3 に答える
2426 参照

linq - OpenXMLlinqクエリ

OpenXMLを使用してスプレッドシートを開き、スプレッドシートの行をループしています。行内のすべてのセルを返すlinqクエリがあります。linqクエリは、MSDNのデモから直接リッピングされました。

linqクエリは、値を持つすべてのセルを返すのに優れていますが、値を持たないセルは返しません。これにより、どのセルがどのセルであるかを判断できなくなります。もう少し説明させてください。たとえば、スプレッドシートに名前、社会保障番号、住所の3つの列があるとします。このlinqクエリが機能する方法は、特定の行の値を持つセルのみを返すことです。したがって、「John」、「」、「173 Sycamore」を含むデータの行がある場合、linqクエリは列挙に「John」と「173Sycamore」のみを返します。これにより、次のかどうかを知ることができなくなります。 「173Sycamore」はSSNまたはアドレスフィールドです。

ここで繰り返しますが、必要なのは、値を含むセルだけでなく、すべてのセルが返されることです

私は考えられるあらゆる方法でlinqクエリをサルしようとしましたが、運がまったくありませんでした(つまり、where句を削除するのはトリックではありません)。どんな助けでもいただければ幸いです。ありがとう!

0 投票する
1 に答える
971 参照

c# - ClosedXML で 10 進数値リストを書き込む

ClosedXML ライブラリを使用して、SQL クエリを Excel ファイルに書き込むプログラムを開発しています。私は、executeEscalar() を使用して、Decimal のリストに値を格納しました。

値は 10 進数値として List に正しく保存されますが、Excel セルにリストを挿入すると、Excel ファイルを開くと、セルに 0 の値が表示されます。

0 投票する
2 に答える
3596 参照

c# - C#: Excel 数式から値を読み取る

Closed XMLを使用して、Excel レポートを自動的に生成しています。ここまでは順調ですが、数式で生成された特定の値をデータベースに保存する必要があります。

数式は次のようになります。=SUM(Day1, Day2, Day3)したがって、単純に Excel の数式パーサーは私の請求書に適合しません。それとやり取りできるものが必要です。

スプレッドシートを保存してから再度開く必要はありません。高速で効率的である限り、私は何をしても構いません。本当にありがとう。:)

0 投票する
3 に答える
31139 参照

.net - OpenXML を操作するための EPPlus ライブラリと ClosedXML ライブラリの違いは何ですか?

ClosedXML、EPPlus、または SpreadsheetLight のいずれかを選択しようとしています。他のものよりも 1 つを選ぶ理由は何だと思いますか?

0 投票する
4 に答える
9652 参照

c# - C# での Excel データの読み取りとセルの書式設定

C# で Excel ドキュメントを読み取ることができるライブラリを探していますが、セルの書式設定とスプレッドシートのデータを読み取ることができる必要があります。Excelドキュメントを読み取るためのさまざまな選択肢をリストしたこの便利な質問を見つけましたが、ここで提供される多くのソリューションでは、セルのプロパティ(フォント、背景色など)ではなく、スプレッドシートのコンテンツのみを読み取ることができます. しかし、私の特定の問題については、多くのセルの書式設定を含むドキュメントを読む必要があり、この書式設定情報を読み取ることができる必要があります。

読み取る必要がある Excel ドキュメントはxlsドキュメントであるため、この段階でxlsxを読み取る必要はありません。Excel がインストールされていないサーバーで使用できるライブラリを探しているので、スタンドアロン ソリューションであり、できればオープン ソースである必要があります。

xlsドキュメントからセルの書式設定情報を読み取った経験があり、このタスクの達成に役立つライブラリを提案できる人はいますか?

アップデート:

ClosedXml について読んだところ、必要な機能を提供しているように見えるため、ClosedXml の使用を検討しています。私はこのサンプルコードから作業しています:

http://closedxml.codeplex.com/wikipage?title=Finding%20and%20extracting%20the%20data&referringTitle=ドキュメント

Excel ドキュメントのコンテンツを問題なく読み取ることができました。このコードのカテゴリの例だけを使用しましたが、2 つのカテゴリ名のセルをフォーマットして背景色を設定しました。今、私が ClosedXml でやろうとしていることは次のとおりです。

  • 塗りつぶしの背景色が特定のセルで定義されている場合

  • 定義されている場合は、塗りつぶしの色を取得します(16 進数値で十分です)。

ここに私が使用しようとしたいくつかのコードがあります:

しかし、コード

常に「指定されたキーは辞書に存在しませんでした」という期待をスローします。、背景色が定義されているセルの場合でも。これを ClosedXml で動作させる方法を知っている人はいますか?

0 投票する
3 に答える
5098 参照

c# - ClosedXml で「テーマの色を色に変換できません」

ClosedXml を使用して、Excel のセルの塗りつぶしの背景色を読み取ろうとしています。このサンプル コードを使用して、Excel ドキュメントのコンテンツを問題なく読み取ることができましたが、セルのFill BackgroundColorを 16 進値として読み取ることができません。BackgroundColorで定義されているThemeColorおよびThemeTintプロパティを確認できますが、これらをSystem.Colorまたは 16 進数値に変換する方法が見つかりません。これが私のコードです:

メソッドXLColor.FromThemeは常に「テーマの色を色に変換できません」という例外をスローするようです。ThemeColorおよびThemeTint値からSystem.Colorを取得する別の方法を知っている人はいますか?

アップデート:

私はすでにBackgroundColorのColorプロパティを使用しようとしたことを述べていませんでしたが、残念ながらこれは正しく入力されていません。デバッガで表示すると、このプロパティがメソッドXLColor で取得したのと同じ例外をスローしていることがわかります。テーマから。したがって、これは間違いなく ClosedXml のバグのようです。誰かが回避策を知っていますか?

0 投票する
1 に答える
1002 参照

closedxml - ヘッダーとフッターが失われたワークシートをコピーする

私の Web アプリケーションは、ClosedXML を使用して Excel ファイルを操作します。

ヘッダーとフッターを含む Excel テンプレートを使用してワークシートをコピーしようとしていますが、結果に表示されません。データとセルのみが表示されます。このメソッドを使用してシートをコピーします。

あなたは私を助けることができます?

0 投票する
1 に答える
852 参照

azure - Azure でのカスタム FileResult: ブラウザーが永遠に待機する

Excel をカスタム FileResult として返すアクションがあります。私のソリューションは、ClosedXmlライブラリ (内部的に OpenXml を使用) に基づいています。私の XlsxResult クラスは、サーバー上の読み取り専用の .xlsx ファイルをテンプレートとして使用します。次に、テンプレートをメモリ ストリームに渡します。メモリ ストリームは、ClosedXml で操作および保存されます。最後に、メモリ ストリームが応答に書き込まれます。

これは、Cassini と IIS Express の両方で正常に動作しますが、Azure にデプロイすると失敗し、エラーは発生しません。私が経験している唯一の影響は、サーバーに送信されたリクエストが応答を返さないことです。60分ほど経ってもまだ何かが起こるのを待っています...

私の行動:

私のファイル結果

だから私は何かが欠けています(どうやら私はそうです)。

ご注意ください:

  1. Windows Azure Tools 1.7 の RemoteAccess 機能を使用して確認したため、Azure から欠落している dll はありません。
  2. 私のエクスポートは、長時間実行される重いタスクではありません。
  3. テンプレート xlsx を使用して FilePathResult を返すようにアクションを変更すると、紺碧で動作しました。しかし、あなたが疑うかもしれないように、ファイルを返す前にファイルを処理する必要があります:-)

タンク。

更新: コードに広範囲にログインした後、ClosedXml の "Save" メソッド呼び出しで実行がエラーなしでハングします。しかし、まだエラーはありません。WADLogsTable からの抜粋:

  • パスからテンプレート ファイルを開く: E:\sitesroot\0\Content\templates\MyTemplate.xlsx
  • パスからテンプレートを開きました: E:\sitesroot\0\Content\templates\MyTemplate.xlsx
  • テンプレートを編集可能なメモリ ストリームにコピーしました。コピーされたバイト: 15955、位置: 15955
  • メモリ内の Excel ドキュメントを変更しました。
  • ここでは、workbook.Save(); を呼び出すとハングします。これは ClosedXml メソッドの呼び出しです。
0 投票する
1 に答える
18296 参照

c# - ClosedXML: パーセント、小数点以下 1 桁、および丸めを使用しますか?

C# を使用ClosedXMLして Excel シートにデータを入力しようとしています。探しているもののほとんどを見つけましたがClosedXML、小数点以下の桁数を処理したり、数値を丸めたりするのに問題があります。

現在cell.Style.NumberFormat.NumberFormatId = 10; 、セルに小数点以下 2 桁のパーセンテージを表示するために使用していますが、小数点以下 1 桁のみを表示したいと思いますClosedXML

次にClosedXML、データを使用せずに直接追加すると、Excel は小数点以下の桁数を切り上げますがClosedXML、データを入力するときにセルが切り上げられません。強制的に丸める方法はありClosedXMLますか?それを手動で行いますか?