کپی کردن سطرها و ستون ها یک کار رایج است که هنگام کار با فایل های اکسل انجام می شود. ممکن است شرایطی وجود داشته باشد که شما نیاز داشته باشید سطرها یا ستونها را در فایلهای اکسل به صورت برنامهنویسی کپی کنید. برای چنین مواردی، این مقاله به شما آموزش می دهد که چگونه ردیف ها و ستون ها را در فایل های اکسل با استفاده از C++ کپی کنید.
- C++ API برای کپی کردن سطرها و ستون ها در فایل های اکسل
- یک ردیف را در یک فایل اکسل با استفاده از C++ کپی کنید
- کپی کردن چندین ردیف در یک فایل اکسل با استفاده از ++C
- یک ستون واحد را در یک فایل اکسل با استفاده از C++ کپی کنید
- کپی کردن چندین ستون در یک فایل اکسل با استفاده از ++C
C++ API برای کپی کردن سطرها و ستون ها در فایل های اکسل
Aspose.Cells for C++ یک کتابخانه بومی C++ است که به شما امکان میدهد بدون نیاز به نصب Microsoft Excel فایلهای Excel را ایجاد، بخوانید و اصلاح کنید. API همچنین امکان کپی ردیف ها و ستون ها را در فایل های اکسل فراهم می کند. میتوانید API را از طریق NuGet نصب کنید یا آن را مستقیماً از بخش Downloads دانلود کنید.
PM> Install-Package Aspose.Cells.Cpp
یک ردیف را در یک فایل اکسل با استفاده از C++ کپی کنید
در زیر تصویر فایل اکسل منبع است که در مثال های زیر از آن استفاده خواهیم کرد.
مراحل زیر برای کپی کردن یک ردیف در یک فایل اکسل با استفاده از C++ است.
- فایل اکسل را با استفاده از کلاس IWorkbook بارگیری کنید.
- کاربرگ را در جایی که میخواهید ردیف را کپی کنید، بازیابی کنید.
- سطر را با استفاده از CopyIRow(intrusiveptrAspose::Cells::ICells sourceCells، Aspose::Cells::Systems::Int32 sourceRowIndex، Aspose::Cells::Systems::Int32 destinationRowIndex) روش.
- فایل اکسل را با استفاده از IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String filename) روش.
کد نمونه زیر نحوه کپی کردن یک ردیف در یک فایل اکسل با استفاده از C++ را نشان می دهد.
// مسیر دایرکتوری منبع.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");
// مسیر دایرکتوری خروجی
StringPtr outDir = new String("OutputDirectory\\");
// فایل اکسل ورودی را بارگیری کنید
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);
// فایل اکسل را ذخیره کنید
workbook->Save(outDir->StringAppend(new String("CopyRow_out.xlsx")));
کپی کردن چندین ردیف در یک فایل اکسل با استفاده از ++C
برای کپی کردن چندین ردیف، از روش CopyIRows استفاده میکنیم که یک پارامتر اضافی را میپذیرد که تعداد کل ردیفهایی که باید کپی شوند را نشان میدهد. برای کپی کردن چند ردیف، مراحل زیر را دنبال کنید.
- فایل اکسل را با استفاده از کلاس IWorkbook بارگیری کنید.
- کاربرگ را که میخواهید ردیفها را در آن کپی کنید، بازیابی کنید.
- سطرها را با استفاده از CopyIRows(intrusiveptrAspose::Cells::ICells sourceCells، Aspose::Cells::Systems::Int32 sourceRowIndex، Aspose::Cells::Systems::Int32 destinationRowIndex، Aspose::Cells::Systems::Int32 rowNumber) روش.
- فایل اکسل را با استفاده از IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String filename) روش.
کد نمونه زیر نحوه کپی کردن چندین ردیف در یک فایل اکسل را با استفاده از C++ نشان می دهد.
// مسیر دایرکتوری منبع.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");
// مسیر دایرکتوری خروجی
StringPtr outDir = new String("OutputDirectory\\");
// فایل اکسل ورودی را بارگیری کنید
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);
// فایل اکسل را ذخیره کنید
workbook->Save(outDir->StringAppend(new String("CopyRows_out.xlsx")));
با استفاده از C++ یک ستون را در یک فایل اکسل کپی کنید
در زیر مراحل کپی کردن یک ستون واحد در یک فایل اکسل با استفاده از C++ آمده است.
- فایل اکسل را با استفاده از کلاس IWorkbook بارگیری کنید.
- برگه ای را که می خواهید ستون را در آن کپی کنید، بازیابی کنید.
- ستون را با استفاده از CopyIColumn(intrusiveptrAspose::Cells::ICells sourceCells، Aspose::Cells::Systems::Int32 sourceColumnIndex، Aspose::Cells::Systems::Int32 destinationColumnIndex) روش.
- فایل اکسل را با استفاده از IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String filename) روش.
کد نمونه زیر نحوه کپی کردن یک ستون را در یک فایل اکسل با استفاده از C++ نشان می دهد.
// مسیر دایرکتوری منبع.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");
// مسیر دایرکتوری خروجی
StringPtr outDir = new String("OutputDirectory\\");
// فایل اکسل ورودی را بارگیری کنید
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);
// فایل اکسل را ذخیره کنید
workbook->Save(outDir->StringAppend(new String("CopyColumn_out.xlsx")));
کپی کردن چندین ستون در یک فایل اکسل با استفاده از ++C
برای کپی کردن چندین ستون، از روش CopyIColumns استفاده میکنیم که یک پارامتر اضافی را میپذیرد که تعداد کل ستونهای کپی را نشان میدهد. برای کپی چند ستون، مراحل زیر را دنبال کنید.
- فایل اکسل را با استفاده از کلاس IWorkbook بارگیری کنید.
- برگهای را که میخواهید ستونها را در آن کپی کنید، بازیابی کنید.
- ستون ها را با استفاده از CopyIColumns(intrusiveptrAspose::Cells::ICells sourceCells، Aspose::Cells::Systems::Int32 sourceColumnIndex، Aspose::Cells::Systems::Int32 destinationColumnIndex، Aspose::Cells::Systems::Int32 columnNumber) روش.
- فایل اکسل را با استفاده از IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String filename) روش.
کد نمونه زیر نحوه کپی کردن چندین ستون را در یک فایل اکسل با استفاده از C++ نشان می دهد.
// مسیر دایرکتوری منبع.
StringPtr srcDir = new String("SourceDirectory\\Excel\\");
// مسیر دایرکتوری خروجی
StringPtr outDir = new String("OutputDirectory\\");
// فایل اکسل ورودی را بارگیری کنید
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);
// فایل اکسل را ذخیره کنید
workbook->Save(outDir->StringAppend(new String("CopyColumns_out.xlsx")));
مجوز رایگان دریافت کنید
برای امتحان کردن API بدون محدودیت ارزیابی، می توانید [مجوز موقت رایگان] را درخواست کنید.
نتیجه
در این مقاله با نحوه کپی کردن سطرها و ستون ها در فایل اکسل با استفاده از ++C آشنا شده اید. نمونه کدهای به اشتراک گذاشته شده نحوه کپی کردن سطرها و ستون های تک و چندگانه در یک فایل اکسل را نشان می دهد. برای رسیدن به این هدف از Aspose.Cells برای C++ API استفاده کردیم. این یک API قوی است که بسیاری از ویژگی های اضافی را برای کار با فایل های اکسل فراهم می کند. میتوانید با مراجعه به مستندات رسمی API را با جزئیات بررسی کنید. در صورت وجود هرگونه سوال، لطفاً با ما در تالار گفتمان پشتیبانی رایگان تماس بگیرید.