دمج وفك دمج الخلايا
ليس دائمًا ترغب في الحصول على نفس عدد الخلايا في كل صف أو عمود. على سبيل المثال، قد ترغب في وضع عنوان في خلية تمتد عبر عدة أعمدة. أو، إذا كنت تقوم بإنشاء فاتورة، فقد ترغب في تقليل عدد الأعمدة للإجمالي. لدمج خلية واحدة من خليتين أو أكثر، قم بدمجها. يتيح لك Microsoft Excel تحديد الخلايا ودمجها لهيكلة جدول البيانات بالطريقة التي يرغبون فيها المستخدمون.
نتيجة الدمج ومن ثم تقسيم مجموعة الخلايا المنسقة كالخلايا على اليسار في Microsoft Excel
تدعم Aspose.Cells هذه الميزة ويمكنها أيضًا دمج الخلايا في ورقة العمل. بإمكانك أيضًا فك الدمج، أو تقسيم الخلايا المدموجة أيضًا. إشارة الخلية المدموجة هي إشارة للخلية العلوية اليسرى في النطاق المحدد أصلاً.
يرجى ملاحظة أنه عند دمج الخلايا، يتم الاحتفاظ بالبيانات فقط في الخلية العلوية اليسرى. إذا كانت هناك بيانات في الخلايا الأخرى في النطاق، يتم حذف تلك البيانات.
التنسيق، بالمثل، يعتمد على خلية الإشارة بحيث عند دمج الخلايا، يتم تطبيق إعدادات التنسيق للخلية العلوية اليسرى في النطاق على الخلية المُدمَجة. عند تقسيم الخلية، تحتفظ الخلايا الجديدة بإعدادات التنسيق الأصلية.
دمج الخلايا في ورقة عمل.
استخدام Microsoft Excel
تصف الخطوات التالية كيفية دمج الخلايا في ورقة العمل باستخدام Microsoft Excel.
- قم بنسخ البيانات التي تريدها إلى أعلى يسار الخلية ضمن النطاق.
- حدد الخلايا التي تريد دمجها.
- لدمج الخلايا في صف أو عمود وتوسيط محتوى الخلية، انقر على أيقونة دمج وتوسيط في شريط الأدوات التنسيق.
استخدام Aspose.Cells
تحتوي فئة Cells على طرق مفيدة للمهمة. على سبيل المثال، تقوم الطريقة merge() بدمج الخلايا في خلية واحدة ضمن نطاق محدد من الخلايا.
الناتج التالي يتم إنشاؤه بعد تنفيذ الكود أدناه.
تم دمج الخلايا (C6:E7)
مثال الكود
المثال التالي يوضح كيفية دمج الخلايا (C6:E7) في ورق العمل.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(MergingCellsInWorksheet.class) + "data/"; | |
// Create a Workbook. | |
Workbook wbk = new Workbook(); | |
// Create a Worksheet and get the first sheet. | |
Worksheet worksheet = wbk.getWorksheets().get(0); | |
// Create a Cells object to fetch all the cells. | |
Cells cells = worksheet.getCells(); | |
// Merge some Cells (C6:E7) into a single C6 Cell. | |
cells.merge(5, 2, 2, 3); | |
// Input data into C6 Cell. | |
worksheet.getCells().get(5, 2).setValue("This is my value"); | |
// Create a Style object to fetch the Style of C6 Cell. | |
Style style = worksheet.getCells().get(5, 2).getStyle(); | |
// Create a Font object | |
Font font = style.getFont(); | |
// Set the name. | |
font.setName("Times New Roman"); | |
// Set the font size. | |
font.setSize(18); | |
// Set the font color | |
font.setColor(Color.getBlue()); | |
// Bold the text | |
font.setBold(true); | |
// Make it italic | |
font.setItalic(true); | |
// Set the backgrond color of C6 Cell to Red | |
style.setForegroundColor(Color.getRed()); | |
style.setPattern(BackgroundType.SOLID); | |
// Apply the Style to C6 Cell. | |
cells.get(5, 2).setStyle(style); | |
// Save the Workbook. | |
wbk.save(dataDir + "mergingcells_out.xls"); | |
wbk.save(dataDir + "mergingcells_out.xlsx"); | |
wbk.save(dataDir + "mergingcells_out.ods"); | |
// Print message | |
System.out.println("Process completed successfully"); |
رفع الدمج (تقسيم) الخلايا المدمجة
استخدام Microsoft Excel
الخطوات التالية تصف كيفية تقسيم الخلايا المدمجة باستخدام Microsoft Excel.
- حدد الخلية المدمجة. عندما يتم دمج الخلايا، يتم تحديد دمج وتوسيط في شريط الأدوات التنسيق.
- انقر على دمج وتوسيط في شريط الأدوات التنسيق.
استخدام Aspose.Cells
تحتوي فئة Cells على طريقة تسمى unMerge() لتقسيم الخلايا إلى حالتها الأصلية. تقوم الطريقة بفك دمج الخلايا باستخدام مرجع الخلية في نطاق الخلية المدمجة.
مثال الكود
المثال التالي يوضح كيفية تقسيم الخلايا المدمجة (C6). يستخدم المثال الملف الذي تم إنشاؤه في المثال السابق ويقوم بتقسيم الخلايا المدمجة.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(UnMergingCellsInWorksheet.class) + "data/"; | |
// Create a Workbook. | |
Workbook wbk = new Workbook(dataDir + "mergingcells.xls"); | |
// Create a Worksheet and get the first sheet. | |
Worksheet worksheet = wbk.getWorksheets().get(0); | |
// Create a Cells object to fetch all the cells. | |
Cells cells = worksheet.getCells(); | |
// Unmerge the cells. | |
cells.unMerge(5, 2, 2, 3); | |
// Save the file. | |
wbk.save(dataDir + "UnMergingCellsInWorksheet_out.xls"); | |
// Print message | |
System.out.println("Process completed successfully"); |