チュートリアル
簡単にライブラリーを使用するためのチュートリアルコレクション
ピボットテーブルにフィルターを追加することで、ユーザーは特定の基準に基づいて表示するデータを絞り込むことができます。フィルターを使用することで、分析に最も関連性のあるデータのサブセットに焦点を当て、効率的なデータ探索が可能になります。本記事では、Spire.XLS for .NET を使用して、C# で Excel のピボットテーブルにフィルターを追加する方法を示します。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
Spire.XLS for .NET では、XlsPivotTable.ReportFilters.Add() メソッドを使用して、ピボットテーブルにレポートフィルターを追加できます。詳細な手順は以下の通りです。
using Spire.Xls;
using Spire.Xls.Core.Spreadsheet.PivotTables;
namespace AddReportFilter
{
internal class Program
{
static void Main(string[] args)
{
// Workbookクラスのオブジェクトを作成
Workbook workbook = new Workbook();
// Excelファイルを読み込む
workbook.LoadFromFile("Sample.xlsx");
// 最初のワークシートを取得
Worksheet sheet = workbook.Worksheets[0];
// 最初のピボットテーブルを取得
XlsPivotTable pt = sheet.PivotTables[0] as XlsPivotTable;
// レポートフィルターを作成
PivotReportFilter reportFilter = new PivotReportFilter("日付", true);
// レポートフィルターをピボットテーブルに追加
pt.ReportFilters.Add(reportFilter);
// 結果のファイルを保存
workbook.SaveToFile("レポートフィルター.xlsx", FileFormat.Version2016);
workbook.Dispose();
}
}
}
XlsPivotTable.RowFields[index].AddValueFilter() または XlsPivotTable.RowFields[index].AddLabelFilter() メソッドを使用して、ピボットテーブルの特定の行フィールドに値フィルターまたはラベルフィルターを追加できます。詳細な手順は以下の通りです。
using Spire.Xls;
using Spire.Xls.Core.Spreadsheet.PivotTables;
namespace AddRowFilter
{
internal class Program
{
static void Main(string[] args)
{
// Workbookクラスのオブジェクトを作成
Workbook workbook = new Workbook();
// Excelファイルを読み込む
workbook.LoadFromFile("Sample.xlsx");
// 最初のワークシートを取得
Worksheet sheet = workbook.Worksheets[0];
// 最初のピボットテーブルを取得
XlsPivotTable pt = sheet.PivotTables[0] as XlsPivotTable;
// ピボットテーブルの最初の行フィールドに値フィルターを追加
pt.RowFields[0].AddValueFilter(PivotValueFilterType.GreaterThan, pt.DataFields[0], 100000, null);
// または、ピボットテーブルの最初の行フィールドにラベルフィルターを追加
// pt.RowFields[0].AddLabelFilter(PivotLabelFilterType.Equal, "電子機器", null);
// ピボットテーブルのデータを計算
pt.CalculateData();
// 結果のファイルを保存
workbook.SaveToFile("行フィルター.xlsx", FileFormat.Version2016);
workbook.Dispose();
}
}
}
XlsPivotTable.ColumnFields[index].AddValueFilter() または XlsPivotTable.ColumnFields[index].AddLabelFilter() メソッドを使用して、ピボットテーブルの特定の列フィールドに値フィルターまたはラベルフィルターを追加できます。詳細な手順は以下の通りです。
using Spire.Xls;
using Spire.Xls.Core.Spreadsheet.PivotTables;
namespace AddColumnFilter
{
internal class Program
{
static void Main(string[] args)
{
// Workbookクラスのオブジェクトを作成
Workbook workbook = new Workbook();
// Excelファイルを読み込む
workbook.LoadFromFile("Sample.xlsx");
// 最初のワークシートを取得
Worksheet sheet = workbook.Worksheets[0];
// 最初のピボットテーブルを取得
XlsPivotTable pt = sheet.PivotTables[0] as XlsPivotTable;
// ピボットテーブルの最初の列フィールドにラベルフィルターを追加
pt.ColumnFields[0].AddLabelFilter(PivotLabelFilterType.Equal, "北", null);
// または、ピボットテーブルの最初の列フィールドに値フィルターを追加
// pt.ColumnFields[0].AddValueFilter(PivotValueFilterType.Between, pt.DataFields[0], 5000, 10000);
// ピボットテーブルのデータを計算
pt.CalculateData();
// 結果のファイルを保存
workbook.SaveToFile("列フィルター.xlsx", FileFormat.Version2016);
workbook.Dispose();
}
}
}
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。
ピボットテーブルは、大量のデータを迅速に計算、要約、分析できるインタラクティブなテーブルです。Excel の強力なツールとして、ユーザーが異なる角度から静的データを見ることができ、データ間の比較をより直感的にすることができます。この記事では、Spire.XLS for .NET を使用して、C# および VB.NET でプログラムによってピボットテーブルを作成する方法を紹介します。
まず、Spire.XLS for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
詳細な手順は次のとおりです。
using Spire.Xls;
namespace createPivotTable
{
class Program
{
static void Main(string[] args)
{
//Workbookオブジェクトを作成する
Workbook workbook = new Workbook();
//Excelサンプルドキュメントをロードする
workbook.LoadFromFile(@"E:\Files\sample.xlsx");
//最初のワークシートを取得する
Worksheet sheet = workbook.Worksheets[0];
//データソース範囲を選択する
CellRange dataRange = sheet.Range["B1:F11"];
PivotCache cache = workbook.PivotCaches.Add(dataRange);
//指定したワークシートにピボットテーブルを追加し、位置とキャッシュを設定する
PivotTable pt = sheet.PivotTables.Add("Pivot Table", sheet.Range["H3"], cache);
//ピボットテーブルの行ラベルを定義する
PivotField r1 = pt.PivotFields["国"] as PivotField;
r1.Axis = AxisTypes.Row;
pt.Options.RowHeaderCaption = "国";
PivotField r2 = pt.PivotFields["製品"] as PivotField;
r2.Axis = AxisTypes.Row;
//データフィールドを追加してデータを計算する
pt.DataFields.Add(pt.PivotFields["数量"], "合計数量", SubtotalTypes.Sum);
pt.DataFields.Add(pt.PivotFields["価格"], "合計価格", SubtotalTypes.Sum);
//ピボットテーブルのスタイルを設定する
pt.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium10;
//結果文書を保存する
workbook.SaveToFile("CreatePivotTable.xlsx", ExcelVersion.Version2010);
}
}
}
Imports Spire.Xls
Namespace createPivotTable
Class Program
Private Shared Sub Main(ByVal args As String())
'Workbookオブジェクトを作成する
Dim workbook As Workbook = New Workbook()
'Excelサンプルドキュメントをロードする
workbook.LoadFromFile("E:\Files\sample.xlsx")
'最初のワークシートを取得する
Dim sheet As Worksheet = workbook.Worksheets(0)
'データソース範囲を選択する
Dim dataRange As CellRange = sheet.Range("B1:F11")
Dim cache As PivotCache = workbook.PivotCaches.Add(dataRange)
'指定したワークシートにピボットテーブルを追加し、位置とキャッシュを設定する
Dim pt As PivotTable = sheet.PivotTables.Add("Pivot Table", sheet.Range("H3"), cache)
'ピボットテーブルの行ラベルを定義する
Dim r1 As PivotField = TryCast(pt.PivotFields("国"), PivotField)
r1.Axis = AxisTypes.Row
pt.Options.RowHeaderCaption = "国"
Dim r2 As PivotField = TryCast(pt.PivotFields("製品"), PivotField)
r2.Axis = AxisTypes.Row
'データフィールドを追加してデータを計算する
pt.DataFields.Add(pt.PivotFields("数量"), "合計数量", SubtotalTypes.Sum)
pt.DataFields.Add(pt.PivotFields("価格"), "合計価格", SubtotalTypes.Sum)
'ピボットテーブルのスタイルを設定する
pt.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium10
'結果文書を保存する
workbook.SaveToFile("CreatePivotTable.xlsx", ExcelVersion.Version2010)
End Sub
End Class
End Namespace
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。