SSRS 2005 レポートを Excel 2003 (.xls) ではなく Excel 2007 (.xlsx) にエクスポートする方法はありますか?
1 に答える
半年が経ちましたが、この質問は頻繁に返ってきます。
SSRS 2005 のネイティブ出力は、通常、Web フォームとして参照されます。これは基本的に、SSRS が生成すると想定されているものです。問題は、多くの場合、ユーザーがレポートを別の形式で表示したいということです。そのため、エクスポート (翻訳) が追加されました。ここでの問題は、出力を目的のフォームに直接生成するのではなく、処理されて別の形式に変換される Web フォームを作成することです (したがって、追加の問題/制限)。
MS の担当者からの公式の回答は、MS SQL 2012 が必要であるというものですが (これは理解できます - 公式サポート、会社の内部ポリシーなどの問題があるため)、その目標をアーカイブできるようにする方法はいくつかあります。
それは主に、xslx に入れたい理由に依存します。ほとんどの場合、(レポートの大きなテーブル) xls 行/列の制限が原因です。
あなたは何ができますか?
サード パーティのプラグインを取得します (誰かがこれを潜在的な利点としてすでに見ています - URL 1 の記事にリンクの例があります
独自の定義済みレンダラーを構成します - URL 2 で説明されていますが、翻訳エンジンが必要です
Excel 2007 ファイルで VBA を使用してデータをインポートし (xls または csv として)、好きなように保存します。
回避策を使用してください - Excel 2003 の制限に適合するようにテーブルを作成してください。例えば。行が多すぎる場合 (URL 3 で説明):
テーブルのプロパティで、[グループ] タブに移動し、新しいグループを追加します。Group on エリアに次のように入力します: =Int((RowNumber(Nothing)-1)/60000) そして、Page Break at End ボックスをチェックします。
URL 1 - social.msdn.microsoft.com/Forums/sqlserver/en-US/9d8cd766-ff78-490f-8a5d-bb4a0debdfc1/export-ssrs-2005-report-to-excel-2007
URL 2 - www.traviata.eu/blogs/technical/?p=435
URL 3 - www.sqlservercentral.com/Forums/Topic554766-150-1.aspx