2011-08-03 14 views
0

私はsh ***の多くを今見つけました。しかし、私が探しているものではありません。VB.NetでデータソースまたはLinq結果をExcelに変換する

LINQクエリ(またはDataGridviewのデータソース) を既存のExcelスプレッドシートにエクスポートする必要があります。セルA25の後に言わせてください

データバインディングにLINQを使用するWindowsフォームアプリケーションがあります。

提案や良い例はありますか?アドバンス

答えて

1

おかげで私はそれは、シンプルに強力だし、Excel 2007のスプレッドシートと一緒にインストールされているオフィス/ Excelを(XLSX-ファイル)をせずに動作するのでEPPlusを使用することをお勧めします。ライセンスモデルはGPLです。

Dim excel As New ExcelPackage 
excel.File = New IO.FileInfo("C:\Temp\AnExcelFile.xlsx") 
If excel.File.Exists Then excel.Load(excel.File.Open(FileMode.Open)) 
Dim ws As ExcelWorksheet = excel.Workbook.Worksheets.Add("Worksheet-Name")'must be unique and less than 31 characters long' 
ws.Cells(26, 1).LoadFromDataTable(dt, True) 'loading from DataTable, the 2.Parameter is PrintHeaders' 
ws.Cells(26, 1).LoadFromCollection(query, True)'loading by LINQ-Query' 
excel.Save() 

xls-filesには問題なく使用することはできません。いいえ、唯一XLSX http://epplus.codeplex.com/discussions/253371

ていますが、インストール compatibility packを持っている場合は、Excel 2003で開くことができます:ヤンが言った顔をしています。 XLSが必要な場合は、Codeplexの NPOIプロジェクトをご覧ください。

+0

こんにちはTim、私はこれをチェックし、あなたにすぐにフィードバックを与えます。しかし、それは私が必要としているexactleyのように見えます。事前に感謝 – SwissGuy

+0

私は非常に興奮していくつかの試行後。 Xlsx形式には最適です。しかし、それをXLSファイルに使用する方法はありますか?私たちの会社では、来年まではOffice 2003を使い続けています。そして、ファイルフォーマットを変更すると、破損したファイルになります。 – SwissGuy

+0

@スワイス:私の答えを編集しました。 –

関連する問題