0

.NET C# で Excel テンプレートを開き、データを追加して新しいドキュメントとして保存しようとしています。OpenXML ドキュメント形式を使用しようとしています。これを行う方法についてのガイダンスが見つからないようです。すべてのドキュメントがパッケージにさまざまな部分を書き込む方法について話しているようですが、完了して保存したいときに何をすべきかについては何も見つかりません。

この情報をどこで見つけることができるか知っている人はいますか? 私はこれについて間違って考えているに違いありません。

ありがとう

4

2 に答える 2

1

ExcelPackageはそのために非常にうまく機能します。主要な著者はしばらくの間作業していないと思いますが、フォーラムには問題を解決する人々の良いフォローがあります.

            FileInfo template = new FileInfo(Path.GetDirectoryName(Application.ExecutablePath)+"\\Template.xlsx");
        try
        {
            using (ExcelPackage xlPackage = new ExcelPackage(strFileName,template))
            {
                //Enable DEBUG mode to create the xl folder (equlivant to expanding a xlsx.zip file)
                //xlPackage.DebugMode = true;

                ExcelWorksheet worksheet = xlPackage.Workbook.Worksheets["Sheet1"];

                worksheet.Name = WorkSheetName;

                foreach (DataRow row in dt.Rows)
                {
                    int c = 1;
                    if (r > startRow) worksheet.InsertRow(r);
                    // our query has the columns in the right order, so simply
                    // iterate through the columns
                    foreach (DataColumn col in dt.Columns)
                    {
                        if (row[col].ToString() != null)
                        {
                            worksheet.Cell(r, c).Value = colValue;
                            worksheet.Column(c).Width = 10;
                        }
                        c++;
                    }
                    r++;
                }

                // change the sheet view to show it in page layout mode
                worksheet.View.PageLayoutView = false;

                // save our new workbook and we are done!
                xlPackage.Save();
                xlPackage.Dispose();
            }
        }
于 2009-08-07T13:07:46.660 に答える
0

Open XML / SpreadsheetML ドキュメントへのアクセスは、簡単なことではありません。仕様は大きく複雑です。「Open XML SDK」(google it) は間違いなく役に立ちますが、多くのことを行うには Open XML 標準の知識が必要です。

SpreadsheetGear for .NETには Excel と同様の API があり、Excel Open XML (xlsx) ドキュメントと Excel 97-2003 (xls) ドキュメントを読み書きできます。

ここでいくつかの SpreadsheetGear サンプルを参照し、ここで無料試用版をダウンロードできます

免責事項: 私は SpreadsheetGear LLC を所有しています

于 2009-07-29T19:19:06.580 に答える