特定の列の行のフィルタリングは、EPPlusのパイと同じくらい簡単です。
private ExcelWorksheet prodUsageWorksheet;
. . .
prodUsageWorksheet.Cells["A6:A6"].AutoFilter = true;
これにより、列Aの行をフィルタリングできます。
また、月の列など、特定の列を除外する必要があります(スクリーンショットでは、9月15日と10月15日ですが、通常はさらにいくつかあります)。たとえば、EPPlusを使用してプログラムで次を生成したいとします。
[すべて選択]の選択を解除し、月のサブセットを選択してから[OK]ボタンをクリックすると、選択されていない月が折りたたまれます。
いくつかのレガシーExcel相互運用コードを見ると、次のように実行されているように見えます。
fld = ((PivotField) pvt.PivotFields("Month"));
fld.Orientation = XlPivotFieldOrientation.xlColumnField;
fld.NumberFormat = "MMM yy";
具体的には、コードの2番目のブロック(方向がxlColumnField
に設定されている)は、操作されるとさまざまな列を条件付きで表示/非表示にする並べ替え/フィルターボタンを備えた列です。
数値形式に基づいて、どの列を表示/非表示にできるかを決定しますか?つまり、値が「9月15日」または「10月16日」の場合はどうでしょうか。
わかりませんが、列フィルタリングの制限をより具体的に設定しているコードには他に何も表示されません。
とにかく、これがExcel Interopがそれを達成する方法である場合、EPPlusで同等のものは何ですか?
これは別の投稿で尋ねられました。また、列フィルタリングはより「動的な」エンドユーザー機能であるため、これはEPPlusが意図したものではありません。
これを見て、それがあなたの質問に答えるかどうかを確認してください: