2012-03-09 10 views
0

ピボットテーブルにデータ範囲を動的にバインドする最もクリーンでシンプルな方法は何ですか?私は、数年前から既存のExcelの.xlsxファイルに動的にデータを追加しました。これは、私が書いたルビーコンポーネントを使用しているため、かなり簡単です。OOXML - エクセルテーブル、ピボットテーブル、データの更新方法とソースの更新方法

ミックスにピボット・テーブルを追加すると、ピボット・テーブルとそのデータへの参照がさらに多くなります。ピボットテーブルを名前付き範囲、動的名前付き範囲、またはExcelテーブルにバインドできるようです。シートにデータを追加することができ、ピボットテーブルをリフレッシュして機能させることができることを目標とする場合は、どの方向が最も簡単ですか?

答えて

1

無料の電子書籍Open XML - The Markup Explainedを見てください。それには、xlsxファイルで、75ページから始まるピボットテーブルのために必要な部分が含まれています。

+0

ええと、私はそれを見てきましたが、詳しくは読んでいませんでした。 2番目の一見で、それはいくつかの良い洞察を提供しています。しかし、そのセクションの前提は、あなたが最初から.xlxを生成することを前提としているようです。私は確かにそれを行うことができますが、既存の.xlsxを "テンプレート"として使用し、データを更新/置換し、ピボット可能性をリフレッシュするように.xlsxに指示します。 – wchrisjohnson

+0

"テンプレート"アプローチで更新する内容を学ぶのに役立つ1つの戦略は、テンプレートファイルをFile1.xlsxとして保存し、データを1つ変更してFile2.xlsxとして保存することです。次に、Open XML 2.0 Producitvity Toolを実行し、[ファイルの比較]ボタンをクリックします。これにより、ファイルの場所が異なり、違いのC#コードが生成されます。私がopenXmlのヘッドスクラッチャーに困惑した場合、それが何が起きているのかを知ろうとする最初のことです。 – Taterhead

+0

あなたはRubyを実行していることを認識しました.C#ではなく、ツールと戦略はまだ役立ちます。真のXML差分ツールであり、セクションがどのように異なっているかを強調表示しています。 XMLを変更します。テーブルデータを更新するだけで、ファイルを開いたときにクライアントとピボットテーブルがすべての更新を行います。 [ツールとSDKのダウンロードリンクはこちら](http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=5124) SDKのヘルプファイルには、OpenXMLの理解に役立つ参考になるいくつかの例があります。 – Taterhead

関連する問題