نسخ ونقل ورقات العمل
في بعض الأحيان، تحتاج إلى عدد من ورقات العمل مع تنسيقات وبيانات مشتركة. على سبيل المثال، إذا كنت تعمل مع الميزانيات الفصلية، قد ترغب في إنشاء دفتر عمل يحتوي على أوراق تحتوي على نفس عناوين الأعمدة وعناوين الصفوف والصيغ. هناك طريقة لفعل ذلك: من خلال إنشاء ورقة واحدة ثم نسخها.
تدعم Aspose.Cells نسخ ونقل أوراق العمل داخلها أو بين دفاتر العمل. تتم نسخ الورقة بالكامل بما في ذلك البيانات والتنسيق والجداول والمصفوفات والرسوم البيانية والصور والكائنات الأخرى بأعلى درجة من الدقة.
نقل أو نسخ الأوراق باستخدام Microsoft Excel
فيما يلي الخطوات المعنية بنسخ ونقل ورقات العمل داخل أو بين سجلات العمل.
- لنقل أو نسخ الأوراق إلى دفتر العمل الآخر، افتح دفتر العمل الذي سيتلقى الأوراق.
- انتقل إلى دفتر العمل الذي يحتوي على الأوراق التي ترغب في نقلها أو نسخها، ثم حدد الأوراق.
- في قائمة تحرير، انقر فوق نقل أو نسخ الصفحة.
- في مربع الكتابة To book، انقر فوق جدول البيانات لاستلام الصفحات.
- لنقل أو نسخ الصفحات المحددة إلى جدول بيانات جديد، انقر فوق كتاب جديد.
- في مربع قبل الصفحة، انقر فوق الصفحة التي ترغب في إدراج الصفحات المنقولة أو المنسوخة قبلها.
- لنسخ الصفحات بدلاً من نقلها، حدد مربع الاختيار إنشاء نسخة.
نسخ أوراق العمل داخل دفتر عمل
توفر Aspose.Cells طريقة متحملة، WorksheetCollection.addCopy()، يتم استخدامها لإضافة ورقة عمل إلى المجموعة ونسخ البيانات من ورقة عمل موجودة. إحدى الإصدارات من الطريقة تأخذ فهرس الورقة المصدر كمعلمة. الإصدار الآخر يأخذ اسم الورقة المصدر.
المثال التالي يظهر كيفية نسخ ورقة عمل موجودة داخل سجل العمل.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
String dataDir = Utils.getSharedDataDir(AddingPageBreaks.class) + "worksheets/"; | |
// Create a new Workbook by excel file path | |
Workbook wb = new Workbook(dataDir + "book1.xls"); | |
// Create a Worksheets object with reference to the sheets of the Workbook. | |
WorksheetCollection sheets = wb.getWorksheets(); | |
// Copy data to a new sheet from an existing sheet within the Workbook. | |
sheets.addCopy("Sheet1"); | |
// Save the excel file. | |
wb.save(dataDir + "CopyWithinWorkbook_out.xls"); |
نسخ أوراق العمل بين دفاتر العمل
يوفر Aspose.Cells طريقة، Worksheet.copy()، المستخدمة لنسخ البيانات والتنسيق من صفحة العمل الأصلية إلى صفحة عمل أخرى داخل أو بين دفاتر العمل. تأخذ الطريقة كائن صفحة العمل الأصلية كمعلمة.
يظهر المثال التالي كيفية نسخ ورقة عمل من دفتر عمل إلى دفتر عمل آخر.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
String dataDir = Utils.getSharedDataDir(AddingPageBreaks.class) + "worksheets/"; | |
// Create a Workbook. | |
Workbook excelWorkbook0 = new Workbook(dataDir + "book1.xls"); | |
// Create another Workbook. | |
Workbook excelWorkbook1 = new Workbook(); | |
// Copy the first sheet of the first book into second book. | |
excelWorkbook1.getWorksheets().get(0).copy(excelWorkbook0.getWorksheets().get(0)); | |
// Save the file. | |
excelWorkbook1.save(dataDir + "CWBetweenWorkbooks_out.xls", FileFormatType.EXCEL_97_TO_2003); |
المثال التالي يوضح كيفية نسخ ورقة عمل من مصنف إلى مصنف آخر.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
String dataDir = Utils.getSharedDataDir(AddingPageBreaks.class) + "worksheets/"; | |
// Create a new Workbook. | |
Workbook excelWorkbook0 = new Workbook(); | |
// Get the first worksheet in the book. | |
Worksheet ws0 = excelWorkbook0.getWorksheets().get(0); | |
// Put some data into header rows (A1:A4) | |
for (int i = 0; i < 5; i++) { | |
ws0.getCells().get(i, 0).setValue("Header Row " + i); | |
} | |
// Put some detail data (A5:A999) | |
for (int i = 5; i < 1000; i++) { | |
ws0.getCells().get(i, 0).setValue("Detail Row " + i); | |
} | |
// Define a pagesetup object based on the first worksheet. | |
PageSetup pagesetup = ws0.getPageSetup(); | |
// The first five rows are repeated in each page... It can be seen in print preview. | |
pagesetup.setPrintTitleRows("$1:$5"); | |
// Create another Workbook. | |
Workbook excelWorkbook1 = new Workbook(); | |
// Get the first worksheet in the book. | |
Worksheet ws1 = excelWorkbook1.getWorksheets().get(0); | |
// Name the worksheet. | |
ws1.setName("Sheet1"); | |
// Copy data from the first worksheet of the first workbook into the first worksheet of the second workbook. | |
ws1.copy(ws0); | |
// Save the excel file. | |
excelWorkbook1.save(dataDir + "CopyWorksheetFromWorkbookToOther_out.xls", FileFormatType.EXCEL_97_TO_2003); |
نقل أوراق العمل داخل الدفتر
توفر Aspose.Cells طريقة، Worksheet.moveTo()، المستخدمة لنقل صفحة العمل إلى موقع آخر في نفس جدول البيانات.
المثال التالي يظهر كيفية نقل ورقة عمل إلى موقع آخر داخل سجل العمل.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
String dataDir = Utils.getSharedDataDir(MoveWorksheet.class) + "worksheets/"; | |
// Create a new Workbook. | |
Workbook wb = new Workbook(dataDir + "BkFinance.xls"); | |
// Get the first worksheet in the book. | |
Worksheet sheet = wb.getWorksheets().get(0); | |
// Move the first sheet to the third position in the workbook. | |
sheet.moveTo(2); | |
// Save the Excel file. | |
wb.save(dataDir + "MoveWorksheet_out.xls"); |