0

私は、既存のRDLC( RDLサーバー側のファイルではなくクライアントファイル)が含まれているVS 2008asp.netwebformsアプリケーションに取り組んでいます。

問題はExcelにエクスポートするときに発生し、すべてのワークシートに適切な名前が付けられていません。つまり、Sheet1、Sheet2などです。RDLのSQL Server 2008 R2機能で、データのエクスポートに関する多くの例を見つけましたが、RDLCが必要です。解決?

これを「修正」する方法、または顧客がSheet1、Sheet2、Sheet3などを表示しないようにタブの名前を変更するために何らかの後処理を行う方法を知っている人はいますか?

  1. アプリケーションがRDLCファイルのパスを選択しています
  2. データソースを追加します
  3. xlsを選択します
  4. すべての応答を行います

私はこのStackoverflowリンクを見る SSRSからエクスポートしている間に名前付きExcelシートを取得する方法、しかし:

  1. マクロができない
  2. SSMLとしてエクスポートできません
  3. 私はRDL/SQL Server 2008 R2 SSRSを使用していないため、他の回答はRDLCを使用している人にとって誤解を招く可能性があります
4

3 に答える 3

1

シートの名前変更は、RDLC レポートのバージョンではサポートされていません。アップグレードできないと思います。回避策は次のとおりです。レポートを通常どおりファイルに保存します。次に、Microsoft.Office.Interop.Excel またはその他の Excel ライブラリを使用して再度開き、シートの名前を変更します。これを保存したら完了です。

using Excel = Microsoft.Office.Interop.Excel; 


Excel.ApplicationClass xl=new Excel.ApplicationClass();
    Excel.Workbook xlBook;
    Excel.Worksheet xlSheet;
    string filePath = Server.MapPath(@"\report.xls");
    xlBook = (Workbook)xl.Workbooks.Open(filePath,Type.Missing,
      Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing
     ,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing);
    xlSheet = (Worksheet)xlBook.Worksheets.get_Item(1);
    xlSheet.Name = "New Sheet Name";
    xlBook.Save();
    xl.Application.Workbooks.Close();

これがうまくいかない場合に使用できるさまざまなライブラリのリスト: 無料のライブラリ 1. XML ライブラリを閉じます - http://closedxml.codeplex.com/documentation 2. XML SDK を開きます - http://msdn.microsoft .com/en-us/library/bb448854.aspx 3. NOPI - http://npoi.codeplex.com/ 4. CarlosAG - http://www.carlosag.net/Tools/ExcelXmlWriter/

有料ライブラリ 5. Spreadsheet Gear 6. Smart XLS 7. Office Writer 8. Spire

于 2013-01-31T16:06:22.730 に答える
0

RDL 2010 スキーマにアップグレードします。これは、Excel の名前付きシートをサポートしています (他の便利な拡張機能の中でも):

http://msdn.microsoft.com/en-us/library/ee960138.aspx

于 2013-01-31T11:43:10.107 に答える
-1

あなたはそれをすることができないでしょう。

http://social.msdn.microsoft.com/forums/en-US/sqlreportingservices/thread/54caf25b-b17b-474c-aa47-fc884f90af03

http://go4answers.webhost4life.com/Example/reportviewer-eport-excel-naming-sheets-157612.aspx

http://forums.asp.net/post/4140154.aspx

これは、Excel xml 方言を使用した後処理に役立つ場合があります。

http://spacefold.com/lisa/post/Changing-the-Sheet-names-in-SQL-Server-RS-Excel-QnD-XSLT.aspx

于 2013-01-31T10:21:20.303 に答える