تطبيق الإجمالي الجزئي وتغيير اتجاه الصفوف الجملية تحت البيانات الدقيقة
سيقوم هذا المقال بشرح كيفية تطبيق الإجمالي الجزئي على البيانات وتغيير اتجاه صفوف الملخص التفصيلي.
يمكنك تطبيق الإجمالي الجزئي على البيانات باستخدام الطريقة Worksheet.Cells.subtotal(). تأخذ المعلمات التالية.
- منطقة الخلية - النطاق الذي سيتم تطبيق الإجمالي عليه
- التجميع حسب - الحقل الذي يتم التجميع حسبه، كتعويض صفري مبني
- الوظيفة - الوظيفة الإجمالي
- قائمة الإجمالي - مصفوفة من الحقول المبنية على التعويض الصفري، تشير إلى الحقول التي يتم إضافة الإجمالي لها
- تبديل - يشير ما إذا كان يجب استبدال الإجمالي الحالي
- كسر الصفحات - يشير ما إذا كان يجب إضافة فاصل صفحات بين المجموعات
- ملخص أدنى البيانات - يشير ما إذا كان يجب إضافة ملخص أدنى للبيانات.
أيضًا ، يمكنك التحكم في اتجاه الخطوط الإفقية ** الصفوف الإحصائية أدناه التفاصيل ** كما هو موضح في اللقطة الشاشية التالية باستخدام خاصية Worksheet.getOutline().SummaryRowBelow. يمكنك فتح هذا الإعداد في Microsoft Excel باستخدام ** البيانات > مخطط > الإعدادات **.
مثال
لقطات الشاشة التي تقارن بين الملفات الأصلية والناتجة
تظهر اللقطة الشاشية التالية ملف Excel الأصلي المستخدم في الشفرة المثالية أدناه والذي يحتوي على بعض البيانات في الأعمدة A و B.
تظهر اللقطة الشاشية التالية ملف Excel الناتج الذي تم إنشاؤه بواسطة الشفرة المثالية. كما ترون ، تم تطبيق إجمالي على النطاق ** A2:B11 ** وتوجيه المخطط هو الصفوف الإحصائية أدناه.
شيفرة جافا لتطبيق الإجمالي وتغيير اتجاه خطوط ملخص الخطوط الأفقية أدناه
إليك الشيفرة المثالية لتحقيق الإخراج كما هو موضح أعلاه.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
//directories | |
String sourceDir = Utils.Get_SourceDirectory(); | |
String outputDir = Utils.Get_OutputDirectory(); | |
// Create workbook from source Excel file | |
Workbook workbook = new Workbook(sourceDir + "SampleSubtotal.xlsx"); | |
// Access the first worksheet | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
// Get the Cells collection in the first worksheet | |
Cells cells = worksheet.getCells(); | |
// Create a cellarea i.e.., A2:B11 | |
CellArea ca = CellArea.createCellArea("A2", "B11"); | |
// Apply subtotal, the consolidation function is Sum and it will applied to | |
// Second column (B) in the list | |
cells.subtotal(ca, 0, ConsolidationFunction.SUM, new int[] { 1 }, true, false, true); | |
// Set the direction of outline summary | |
worksheet.getOutline().setSummaryRowBelow(true); | |
// Save the excel file | |
workbook.save(outputDir + "ASubtotal_out.xlsx"); |