2009-05-06 32 views
7

私は数百のExcelファイルを持っています。各ファイルには最初のシートにデータがあります。私は、書式設定を保持しながら、すべてのExcelファイルをまとめて1つのドキュメントにマージするC#でコンソールアプリケーションを作成するように求められました。Excelファイルを1つにマージ

統合ファイルは、ドキュメントにマージされた各ファイルのシートを含む単一のブックです。残念ながら、ExcelファイルはXML形式ではなくバイナリ形式なので、XSL変換は実行できません。

複数のExcelドキュメントのシートを1つのファイルに結合する方法を示す無料のライブラリまたはサンプルコードがありますか?

+0

Excelベースまたはスタンドアロン(サードパーティ)ソ​​リューションをお探しですか? –

+0

このツールをお試しください - JMC Excel http://jeeshenlee.wordpress.com/2010/09/23/jmc-excel-join-merge-combine-multiple-excel-sheets-or-excel-workbooks/ –

+0

@JeeShenLeeあなたが共有したリンクはもはや利用できません。更新が必要です! – Hazmat

答えて

2

Microsoft Excel Interopライブラリを使用する必要があります。 http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.aspx

comタブで、Microsoft Excel 11オブジェクトライブラリへの参照を追加することができます。

http://msdn.microsoft.com/en-us/library/ms173186(VS.80).aspx

+1

あなたのExcelファイルはすべて同じバージョンであることを願っています。 –

+0

ありがとう、これはまさに私が探していたものです:) – Juliet

1

それは自由ではないのです(開発者ライセンスは$ 425である)が、オフィスのオブジェクトを使用するよりも高速である方法は非常に良いライブラリをGemBoxています。現在のプロジェクトで1年半以上使用しており、一貫して優れた成績を収めています。

0

Visual Studio Tools for Office(VSTO)を参照してください。
ワークブックをコードで開くことができ、Excelの機能を多く使用したり、必要な作業をコピーしたりすることができます。

this MSDN forum postは、Excelファイルを開いてワークシートをコピーすることを示しています。うまくいけば、これは正しい方向にあなたを得るでしょう。

-2

もちろん、ツール - >比較 - >統合ブックを行うことができます。また、Joshuaが述べたようにExcel内には、COM Interopライブラリにマージメソッドがあります。何か助けが必要な場合は、私がExcelで頻繁に仕事をしていることをお知らせし、少額の手数料であなたを助けることができるかもしれません。

+2

-1ビジネスを宣伝するため! –

+0

- ビジネスを宣伝するため –

2

これは、バルクファイルマージ(Excelファイルマージャーと呼ばれるMac版があります)というきちんとした小さなプログラムの簡単な作業です。私は数分で300を超えるファイルをマージすることができました。 csvファイルをマージすることもできます(時間がかかりません)。我々は数秒で1300を超えるCSVファイルを鳴らしました。恐ろしい。

関連する問題