يعد نسخ الصفوف والأعمدة مهمة شائعة يتم إجراؤها أثناء العمل مع ملفات Excel. قد تكون هناك مواقف تحتاج فيها إلى نسخ الصفوف أو الأعمدة في ملفات Excel برمجيًا. في مثل هذه الحالات ، ستعلمك هذه المقالة كيفية نسخ الصفوف والأعمدة في ملفات Excel باستخدام C ++.

C ++ API لنسخ الصفوف والأعمدة في ملفات Excel

Aspose.Cells for C ++ هي مكتبة C ++ أصلية تتيح لك إنشاء ملفات Excel وقراءتها وتعديلها دون الحاجة إلى تثبيت Microsoft Excel. يوفر API أيضًا القدرة على نسخ الصفوف والأعمدة في ملفات Excel. يمكنك إما تثبيت API من خلال NuGet أو تنزيلها مباشرة من قسم التنزيلات.

PM> Install-Package Aspose.Cells.Cpp

انسخ صفًا واحدًا في ملف Excel باستخدام C ++

فيما يلي صورة ملف Excel المصدر الذي سنستخدمه في الأمثلة التالية.

ورقة عمل المصدر

فيما يلي الخطوات لنسخ صف واحد في ملف Excel باستخدام C ++.

يُظهر نموذج التعليمات البرمجية التالي كيفية نسخ صف في ملف Excel باستخدام C ++.

// مسار الدليل المصدر.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");

// مسار دليل الإخراج.
StringPtr outDir = new String("OutputDirectory\\");

// قم بتحميل ملف Excel للإدخال
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// احصل على ورقة العمل الأولى
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// نسخ الصف
worksheet->GetICells()->CopyIRow(worksheet->GetICells(), 1, 15);

// احفظ ملف Excel
workbook->Save(outDir->StringAppend(new String("CopyRow_out.xlsx")));
صورة توضح الصف المنسوخ

صورة توضح الصف المنسوخ

نسخ صفوف متعددة في ملف Excel باستخدام C ++

لنسخ صفوف متعددة ، سنستخدم طريقة CopyIRows التي تقبل معلمة إضافية تشير إلى العدد الإجمالي للصفوف المراد نسخها. لنسخ صفوف متعددة ، اتبع الخطوات الواردة أدناه.

يوضح نموذج التعليمات البرمجية التالي كيفية نسخ صفوف متعددة في ملف Excel باستخدام C ++.

// مسار الدليل المصدر.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");

// مسار دليل الإخراج.
StringPtr outDir = new String("OutputDirectory\\");

// قم بتحميل ملف Excel للإدخال
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// احصل على ورقة العمل الأولى
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// نسخ الصفوف
worksheet->GetICells()->CopyIRows(worksheet->GetICells(), 1, 15, 3);

// احفظ ملف Excel
workbook->Save(outDir->StringAppend(new String("CopyRows_out.xlsx")));
صورة تظهر الصفوف المنسوخة

صورة تظهر الصفوف المنسوخة

انسخ عمودًا واحدًا في ملف Excel باستخدام C ++

فيما يلي الخطوات لنسخ عمود واحد في ملف Excel باستخدام C ++.

يوضح نموذج التعليمات البرمجية التالي كيفية نسخ عمود واحد في ملف Excel باستخدام C ++.

// مسار الدليل المصدر.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");

// مسار دليل الإخراج.
StringPtr outDir = new String("OutputDirectory\\");

// قم بتحميل ملف Excel للإدخال
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// احصل على ورقة العمل الأولى
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// نسخ العمود
worksheet->GetICells()->CopyIColumn(worksheet->GetICells(), 0, 6);

// احفظ ملف Excel
workbook->Save(outDir->StringAppend(new String("CopyColumn_out.xlsx")));
صورة تظهر العمود المنسوخ

صورة تظهر العمود المنسوخ

نسخ أعمدة متعددة في ملف Excel باستخدام C ++

لنسخ أعمدة متعددة ، سنستخدم طريقة CopyIColumns التي تقبل معلمة إضافية تشير إلى العدد الإجمالي للأعمدة المراد نسخها. لنسخ عدة أعمدة ، اتبع الخطوات الواردة أدناه.

يوضح نموذج التعليمات البرمجية التالي كيفية نسخ أعمدة متعددة في ملف Excel باستخدام C ++.

// مسار الدليل المصدر.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");

// مسار دليل الإخراج.
StringPtr outDir = new String("OutputDirectory\\");

// قم بتحميل ملف Excel للإدخال
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.xlsx")));

// احصل على ورقة العمل الأولى
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// نسخ الأعمدة
worksheet->GetICells()->CopyIColumns(worksheet->GetICells(), 0, 6, 3);

// احفظ ملف Excel
workbook->Save(outDir->StringAppend(new String("CopyColumns_out.xlsx")));
صورة توضح الأعمدة المنسوخة

صورة توضح الأعمدة المنسوخة

احصل على رخصة مجانية

لتجربة API بدون قيود تقييمية ، يمكنك طلب ترخيص مؤقت مجاني.

استنتاج

في هذه المقالة ، تعلمت كيفية نسخ الصفوف والأعمدة في ملف Excel باستخدام C ++. توضح نماذج التعليمات البرمجية المشتركة كيفية نسخ صفوف وأعمدة مفردة ومتعددة في ملف Excel. استخدمنا Aspose.Cells لـ C ++ API لتحقيق ذلك. إنها واجهة برمجة تطبيقات قوية توفر العديد من الميزات الإضافية للعمل مع ملفات Excel. يمكنك استكشاف API بالتفصيل من خلال زيارة الوثائق الرسمية. في حالة وجود أي استفسارات ، لا تتردد في الاتصال بنا على منتدى الدعم المجاني.

أنظر أيضا