PivotTable

PivotTable class

وصف ملخص ل PivotTable .

public class PivotTable : IDisposable

الخصائص

اسموصف
AltTextDescription { get; set; }الحصول على وصف النص البديل
AltTextTitle { get; set; }يحصل على عنوان النص البديل
AutoFormatType { get; set; }الحصول على نوع التنسيق التلقائي لجدول PivotTable.
BaseFields { get; }إرجاع كائن PivotFields يتضمن كافة الحقول في تقرير PivotTable
ColumnFields { get; }إرجاع كائن PivotFields الذي يتم عرضه حاليًا كحقول أعمدة.
ColumnGrand { get; set; }يشير إلى ما إذا كان تقرير PivotTable يعرض الإجماليات الكلية للأعمدة.
ColumnHeaderCaption { get; set; }الحصول على التسمية التوضيحية لرأس العمود في PivotTable .
ColumnRange { get; }إرجاع كائن CellArea الذي يمثل range الذي يحتوي على منطقة العمود في تقرير PivotTable. للقراءة فقط.
CustomListSort { get; set; }يشير إلى ما إذا كان يجب مراعاة القائمة المخصصة المضمنة عند فرز البيانات
DataBodyRange { get; }إرجاع كائن CellArea الذي يمثل النطاق الذي يحتوي على منطقة البيانات في القائمة بين صف الرأس وصف الإدراج. للقراءة فقط.
DataField { get; }الحصول على كائن PivotField الذي يمثل جميع حقول البيانات في PivotTable. للقراءة فقط. سيكون الأمر init فقط عندما يكون هناك حقلين أو أكثر من حقول البيانات في DataPiovtFiels. يستخدم فقط لإضافة DataPivotField إلى صف / عمود PivotTable منطقة . الافتراضي في منطقة الصف.
DataFields { get; }الحصول على كائن PivotField الذي يمثل جميع حقول البيانات في PivotTable. للقراءة فقط. سيكون الأمر init فقط عندما يكون هناك حقلين أو أكثر من حقول البيانات في DataPiovtFiels. يستخدم فقط لإضافة DataPivotField إلى صف / عمود PivotTable منطقة . الافتراضي في منطقة الصف.
DataSource { get; set; }الحصول على مصدر بيانات الجدول المحوري وتعيينه.
DisplayErrorString { get; set; }يشير إلى ما إذا كان تقرير PivotTable يعرض سلسلة مخصصة في الخلايا التي تحتوي على أخطاء.
DisplayImmediateItems { get; set; }يشير إلى ما إذا كانت العناصر الموجودة في مناطق الصفوف والأعمدة مرئية عندما تكون منطقة البيانات في PivotTable فارغة. القيمة الافتراضية هي true .
DisplayNullString { get; set; }يشير إلى ما إذا كان تقرير PivotTable يعرض سلسلة مخصصة في الخلايا التي تحتوي على قيم خالية.
EnableDataValueEditing { get; set; }يحدد قيمة منطقية تشير إلى ما إذا كان المستخدم مسموحًا له بتحرير الخلايا في منطقة البيانات للمحور . تمكين تحرير الخلية في منطقة القيم
EnableDrilldown { get; set; }التعرف على ما إذا كان التنقل لأسفل ممكّنًا .
EnableFieldDialog { get; set; }يشير إلى ما إذا كان مربع الحوار حقل PivotTable متوفرًا عندما ينقر المستخدم نقرًا مزدوجًا فوق حقل PivotTable .
EnableFieldList { get; set; }الحصول على ما إذا كان يتم تمكين قائمة الحقول لجدول PivotTable.
EnableWizard { get; set; }يشير إلى ما إذا كان معالج PivotTable متاحًا أم لا.
ErrorString { get; set; }الحصول على السلسلة المعروضة في الخلايا التي تحتوي على أخطاء عندما تكون الخاصية DisplayErrorString صحيحة. القيمة الافتراضية هي سلسلة فارغة.
ExternalConnectionDataSource { get; }يحصل على مصدر بيانات الاتصال الخارجي.
FieldListSortAscending { get; set; }تحدد قيمة منطقية تشير إلى ما إذا كانت الحقول في PivotTable يتم فرزها بترتيب غير افتراضي في قائمة الحقول.
GrandTotalName { get; set; }إرجاع تسمية السلسلة النصية المعروضة في عمود الإجمالي الكلي أو عنوان الصف . القيمة الافتراضية هي السلسلة “الإجمالي الكلي” .
HasBlankRows { get; set; }يشير إلى ما إذا كان سيتم إضافة صفوف فارغة. تنطبق هذه الخاصية فقط على أنواع التنسيق التلقائي لـ PivotTable التي تحتاج إلى إضافة صفوف فارغة.
Indent { get; set; }يحدد زيادة المسافة البادئة للمحور المضغوط ويمكن استخدامه لتعيين تخطيط التقرير إلى نموذج مضغوط.
IsAutoFormat { get; set; }يشير إلى ما إذا كان تقرير PivotTable قد تم تنسيقه تلقائيًا. خانة اختيار “جدول تنسيق تلقائي” الموجود في الخيار المحوري لـ Excel 2003 خانة الاختيار “احتواء عرض العمود تلقائيًا عند التحديث” الموجود في خيارات الجدول المحوري: تنسيق التخطيط لبرنامج Excel 2007
IsExcel2003Compatible { get; set; }يحدد ما إذا كان PivotTable متوافقًا مع Excel2003 عند تحديث PivotTable ، إذا كان صحيحًا ، يجب أن تكون السلسلة أقل من أو تساوي 255 حرفًا ، لذلك إذا كانت السلسلة أكبر من 255 حرفًا ، فسيتم اقتطاعها . إذا كانت خاطئة ، فلن يكون للسلسلة القيود المذكورة أعلاه . القيمة الافتراضية هي صحيحة.
IsGridDropZones { get; set; }يشير إلى ما إذا كان تقرير PivotTable يعرض التخطيط الكلاسيكي المحوري. (يتيح سحب الحقول في الشبكة)
IsMultipleFieldFilters { get; set; }تحديد قيمة منطقية تشير إلى ما إذا كان يمكن تعيين عوامل تصفية متعددة على حقول PivotTable.
IsSelected { get; set; }يشير إلى ما إذا كان PivotTable محددًا أم لا.
ItemPrintTitles { get; set; }بت يحدد ما إذا كانت التسميات التوضيحية للعنصر المحوري على محور الصف تتكرر في كل صفحة مطبوعة للحقول المحورية في شكل جدول .
ManualUpdate { get; set; }يشير إلى ما إذا كان تقرير PivotTable سيعاد حسابه فقط بناءً على طلب المستخدم.
MergeLabels { get; set; }يشير إلى ما إذا كان عنصر الصف الخارجي ، وعنصر العمود ، والإجمالي الفرعي ، و والتسميات الإجمالية الكلية لتقرير PivotTable تستخدم خلايا مدمجة.
MissingItemsLimit { get; set; }تحديد قيمة منطقية تشير إلى ما إذا كان يمكن تعيين عوامل تصفية متعددة على حقول PivotTable.
Name { get; set; }الحصول على اسم PivotTable
NullString { get; set; }الحصول على السلسلة المعروضة في الخلايا التي تحتوي على قيم خالية عندما تكون الخاصية DisplayNullString صحيحة. القيمة الافتراضية هي سلسلة فارغة.
PageFieldOrder { get; set; }الحصول على الترتيب الذي تتم به إضافة حقول الصفحة إلى تخطيط تقرير PivotTable.
PageFields { get; }إرجاع كائن PivotFields الذي يتم عرضه حاليًا كحقول صفحة.
PageFieldWrapCount { get; set; }الحصول على عدد حقول الصفحة في كل عمود أو صف في تقرير PivotTable.
PivotFilters { get; }إرجاع كائن PivotFilterCollection .
PivotFormatConditions { get; }الحصول على شروط التنسيق للجدول المحوري.
PivotTableStyleName { get; set; }الحصول على اسم النمط المحوري وتعيينه.
PivotTableStyleType { get; set; }الحصول على وتعيين نمط الجدول المحوري المضمن.
PreserveFormatting { get; set; }يشير إلى ما إذا كان سيتم الاحتفاظ بالتنسيق عند تحديث PivotTable أو إعادة حسابه.
PrintDrill { get; set; }يحدد قيمة منطقية تشير إلى ما إذا كان يجب طباعة مؤشرات الحفر. طباعة أزرار توسيع / طي عند عرضها على pivottable .
PrintTitles { get; set; }يشير إلى ما إذا تم تعيين عناوين الطباعة لورقة العمل على أساس في تقرير PivotTable. القيمة الافتراضية هي كاذبة.
RefreshDataFlag { get; set; }يشير إلى ما إذا كان سيتم تحديث البيانات أم لا.
RefreshDataOnOpeningFile { get; set; }يشير إلى ما إذا كان سيتم تحديث البيانات عند فتح الملف.
RefreshDate { get; }الحصول على تاريخ آخر تحديث لـ PivotTable.
RefreshedByWho { get; }الحصول على اسم المستخدم الذي قام آخر مرة بتحديث PivotTable
RowFields { get; }إرجاع كائن PivotFields الذي يتم عرضه حاليًا كحقول صف.
RowGrand { get; set; }يشير إلى ما إذا كان تقرير PivotTable يعرض الإجماليات الكلية للصفوف.
RowHeaderCaption { get; set; }الحصول على التسمية التوضيحية لرأس الصف في PivotTable .
RowRange { get; }إرجاع كائن CellArea الذي يمثل range الذي يحتوي على منطقة الصف في تقرير PivotTable. للقراءة فقط.
SaveData { get; set; }يشير إلى ما إذا كان سيتم حفظ بيانات تقرير PivotTable مع المصنف.
ShowDataTips { get; set; }تحدد قيمة منطقية تشير إلى ما إذا كان يجب عرض تلميحات الأدوات لخلايا بيانات PivotTable.
ShowDrill { get; set; }الحصول على ما إذا كانت أزرار التوسيع / الطي ستظهر أم لا.
ShowEmptyCol { get; set; }تحديد قيمة منطقية تشير إلى ما إذا كان سيتم تضمين أعمدة فارغة في الجدول
ShowEmptyRow { get; set; }يحدد قيمة منطقية تشير إلى ما إذا كان سيتم تضمين صفوف فارغة في الجدول.
ShowMemberPropertyTips { get; set; }يحدد قيمة منطقية تشير إلى ما إذا كان يجب حذف معلومات خاصية العضو من تلميحات أدوات PivotTable.
ShowPivotStyleColumnHeader { get; set; }يشير إلى ما إذا كان يجب تطبيق النمط المطبق على رأس العمود في الجدول المحوري.
ShowPivotStyleColumnStripes { get; set; }يشير إلى ما إذا كان تنسيق شريط العمود مطبقًا .
ShowPivotStyleLastColumn { get; set; }يشير إلى ما إذا كان تنسيق شريط العمود مطبقًا .
ShowPivotStyleRowHeader { get; set; }يشير إلى ما إذا كان يجب تطبيق النمط المطبق على رأس الصف في الجدول المحوري.
ShowPivotStyleRowStripes { get; set; }يشير إلى ما إذا كان يتم تطبيق تنسيق شريط الصف.
ShowRowHeaderCaption { get; set; }يشير إلى ما إذا كان يتم عرض التسمية التوضيحية لرأس الصف في تقرير PivotTable يشير إلى ما إذا كان عرض تسميات توضيحية للحقل وقائمة التصفية المنسدلة أم لا
ShowValuesRow { get; set; }يحدد قيمة منطقية تشير إلى ما إذا كان سيتم إظهار صف القيم. إظهار القيم row
SubtotalHiddenPageItems { get; set; }يشير إلى ما إذا كانت عناصر حقل الصفحة المخفية في تقرير PivotTable مضمنة في الإجماليات الفرعية للصفوف والأعمدة ، وإجماليات الحظر ، والإجماليات الكلية. القيمة الافتراضية هي False .
TableRange1 { get; }إرجاع كائن CellArea الذي يمثل النطاق الذي يحتوي على تقرير PivotTable بأكمله ، ولكنه لا يتضمن حقول الصفحة. للقراءة فقط.
TableRange2 { get; }إرجاع كائن CellArea الذي يمثل النطاق الذي يحتوي على تقرير PivotTable بأكمله ، يتضمن حقول الصفحة. للقراءة فقط.
Tag { get; set; }الحصول على سلسلة محفوظة بتقرير PivotTable .

طُرق

اسموصف
AddCalculatedField(string, string)يضيف حقلاً محسوبًا إلى الحقل المحوري واسحبه إلى منطقة البيانات.
AddCalculatedField(string, string, bool)يضيف حقلاً محسوبًا إلى الحقل المحوري.
AddFieldToArea(PivotFieldType, int)يضيف الحقل إلى المنطقة المحددة .
AddFieldToArea(PivotFieldType, PivotField)يضيف الحقل إلى المنطقة المحددة .
AddFieldToArea(PivotFieldType, string)يضيف الحقل إلى المنطقة المحددة .
CalculateData()حساب البيانات المحورية للخلايا.
CalculateRange()حساب نطاق المحور المحوري .
ChangeDataSource(string[])تعيين بيانات مصدر pivottable . Sheet1! $ A $ 1: $ C $ 3
ClearData()مسح بيانات وتنسيقات PivotTable
CopyStyle(PivotTable)نسخ نمط مسمى من جدول محوري آخر.
Dispose()يؤدي مهام محددة بواسطة التطبيق مرتبطة بتحرير الموارد غير المُدارة أو تحريرها أو إعادة تعيينها.
Fields(PivotFieldType)يحصل على الحقول المحددة حسب نوع الحقل.
Format(int, int, Style)تنسيق الخلية في المنطقة المحورية
FormatAll(Style)تنسيق كل الخلايا في المنطقة المحورية
FormatRow(int, Style)تنسيق بيانات الصف في المنطقة المحورية
GetCellByDisplayName(string)الحصول على كائن الخلية بواسطة DisplayName الخاص بـ PivotField
GetChildren()الحصول على الجداول المحورية الفرعية التي تستخدم بيانات PivotTable هذه كمصدر بيانات.
GetHorizontalBreaks()احصل على قائمة فهرس صف الجدول المحوري لفواصل الصفحات الأفقية
GetSource()الحصول على بيانات مصدر pivottable .
Move(string)نقل PivotTable إلى موقع مختلف في ورقة العمل.
Move(int, int)نقل PivotTable إلى موقع مختلف في ورقة العمل.
RefreshData()تحديث بيانات المحورية والإعداد من مصدر البيانات.
RemoveField(PivotFieldType, int)يزيل حقل من منطقة حقل محددة
RemoveField(PivotFieldType, PivotField)إزالة الحقل من منطقة حقل معين
RemoveField(PivotFieldType, string)يزيل حقل من منطقة حقل محددة
SetAutoGroupField(int)يعين مجموعة الحقول التلقائية بواسطة PivotTable .
SetAutoGroupField(PivotField)يعين مجموعة الحقول التلقائية بواسطة PivotTable .
SetManualGroupField(int, DateTime, DateTime, ArrayList, int)يعين مجموعة الحقول اليدوية بواسطة PivotTable.
SetManualGroupField(int, double, double, ArrayList, double)يعين مجموعة الحقول اليدوية بواسطة PivotTable.
SetManualGroupField(PivotField, DateTime, DateTime, ArrayList, int)يعين مجموعة الحقول اليدوية بواسطة PivotTable.
SetManualGroupField(PivotField, double, double, ArrayList, double)يعين مجموعة الحقول اليدوية بواسطة PivotTable.
SetUngroup(int)يعين فك التجميع بواسطة PivotTable
SetUngroup(PivotField)يعين فك التجميع بواسطة PivotTable
ShowInCompactForm()تخطيطات PivotTable في شكل مضغوط.
ShowInOutlineForm()تخطيطات PivotTable في شكل مخطط تفصيلي.
ShowInTabularForm()تخطيطات PivotTable في شكل جدولي.
ShowReportFilterPage(PivotField)إظهار كافة صفحات عامل تصفية التقرير وفقًا لـ PivotField ، يجب أن يكون PivotField موجودًا في PageFields.
ShowReportFilterPageByIndex(int)إظهار كافة صفحات تصفية التقرير وفقًا لفهرس الموضع في PageFields
ShowReportFilterPageByName(string)إظهار كافة صفحات عامل تصفية التقرير وفقًا لاسم PivotField ، ويجب أن يكون PivotField موجودًا في PageFields.

أمثلة


[C#]

Workbook book = new Workbook();
Worksheet sheet = book.Worksheets[0];
Cells cells = sheet.Cells;
cells[0, 0].Value = "fruit";
cells[1, 0].Value = "grape";
cells[2, 0].Value = "blueberry";
cells[3, 0].Value = "kiwi";
cells[4, 0].Value = "cherry";
cells[5, 0].Value = "grape";
cells[6, 0].Value = "blueberry";
cells[7, 0].Value = "kiwi";
cells[8, 0].Value = "cherry";

cells[0, 1].Value = "year";
cells[1, 1].Value = 2020;
cells[2, 1].Value = 2020;
cells[3, 1].Value = 2020;
cells[4, 1].Value = 2020;
cells[5, 1].Value = 2021;
cells[6, 1].Value = 2021;
cells[7, 1].Value = 2021;
cells[8, 1].Value = 2021;

cells[0, 2].Value = "amount";
cells[1, 2].Value = 50;
cells[2, 2].Value = 60;
cells[3, 2].Value = 70;
cells[4, 2].Value = 80;
cells[5, 2].Value = 90;
cells[6, 2].Value = 100;
cells[7, 2].Value = 110;
cells[8, 2].Value = 120;

PivotTableCollection pivots = sheet.PivotTables;

int pivotIndex = pivots.Add("=Sheet1!A1:C9", "A12", "TestPivotTable");
PivotTable pivot = pivots[pivotIndex];
pivot.AddFieldToArea(PivotFieldType.Row, "fruit");
pivot.AddFieldToArea(PivotFieldType.Column, "year");
pivot.AddFieldToArea(PivotFieldType.Data, "amount");

pivot.PivotTableStyleType = PivotTableStyleType.PivotTableStyleMedium10;

// تغيير سمات PivotField
PivotField rowField = pivot.RowFields[0];
rowField.DisplayName = "custom display name";

// إضافة PivotFilter
int index = pivot.PivotFilters.Add(0, PivotFilterType.Count);
PivotFilter filter = pivot.PivotFilters[index];
filter.AutoFilter.FilterTop10(0, false, false, 2);

// إضافة PivotFormatCondition
int formatIndex = pivot.PivotFormatConditions.Add();
PivotFormatCondition pfc = pivot.PivotFormatConditions[formatIndex];
FormatConditionCollection fcc = pfc.FormatConditions;
fcc.AddArea(pivot.DataBodyRange);
int idx = fcc.AddCondition(FormatConditionType.CellValue);
FormatCondition fc = fcc[idx];
fc.Formula1 = "100";
fc.Operator = OperatorType.GreaterOrEqual;
fc.Style.BackgroundColor = Color.Red;

pivot.RefreshData();
pivot.CalculateData();

// قم بعملك

book.Save("out.xlsx");

[Visual Basic]

Dim book As Workbook = New Workbook()
Dim sheet As Worksheet = book.Worksheets(0)
Dim cells As Cells = sheet.Cells

cells(0, 0).Value = "fruit"
cells(1, 0).Value = "grape"
cells(2, 0).Value = "blueberry"
cells(3, 0).Value = "kiwi"
cells(4, 0).Value = "cherry"
cells(5, 0).Value = "grape"
cells(6, 0).Value = "blueberry"
cells(7, 0).Value = "kiwi"
cells(8, 0).Value = "cherry"

cells(0, 1).Value = "year"
cells(1, 1).Value = 2020
cells(2, 1).Value = 2020
cells(3, 1).Value = 2020
cells(4, 1).Value = 2020
cells(5, 1).Value = 2021
cells(6, 1).Value = 2021
cells(7, 1).Value = 2021
cells(8, 1).Value = 2021

cells(0, 2).Value = "amount"
cells(1, 2).Value = 50
cells(2, 2).Value = 60
cells(3, 2).Value = 70
cells(4, 2).Value = 80
cells(5, 2).Value = 90
cells(6, 2).Value = 100
cells(7, 2).Value = 110
cells(8, 2).Value = 120

Dim pivots As PivotTableCollection = sheet.PivotTables
Dim pivotIndex As Int32 = pivots.Add("=Sheet1!A1:C9", "A12", "TestPivotTable")
Dim pivot As PivotTable = pivots(pivotIndex)
pivot.AddFieldToArea(PivotFieldType.Row, "fruit")
Pivot.AddFieldToArea(PivotFieldType.Column, "year")
Pivot.AddFieldToArea(PivotFieldType.Data, "amount")

pivot.PivotTableStyleType = PivotTableStyleType.PivotTableStyleMedium10

'Change PivotField's attributes
Dim rowField As PivotField = pivot.RowFields(0)
rowField.DisplayName = "custom display name"

'أضف PivotFilter
Dim filterIndex As Int32 = pivot.PivotFilters.Add(0, PivotFilterType.Count)
Dim filter As PivotFilter = pivot.PivotFilters(filterIndex)
filter.AutoFilter.FilterTop10(0, False, False, 2)

'أضف PivotFormatCondition
Dim formatIndex As Int32 = pivot.PivotFormatConditions.Add()
Dim pfc As PivotFormatCondition = pivot.PivotFormatConditions(formatIndex)
Dim fcc As FormatConditionCollection = pfc.FormatConditions
fcc.AddArea(pivot.DataBodyRange)
Dim idx As Int32 = fcc.AddCondition(FormatConditionType.CellValue)
Dim fc As FormatCondition = fcc(idx)
fc.Formula1 = "100"
fc.Operator = OperatorType.GreaterOrEqual
fc.Style.BackgroundColor = Color.Red

pivot.RefreshData()
pivot.CalculateData()

book.Save("out_vb.xlsx")

أنظر أيضا