העתקת שורות ועמודות היא משימה נפוצה שמתבצעת תוך כדי עבודה עם קבצי אקסל. ייתכנו מצבים שבהם עליך להעתיק שורות או עמודות בקובצי 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);

// שמור את קובץ האקסל
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);

// שמור את קובץ האקסל
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);

// שמור את קובץ האקסל
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);

// שמור את קובץ האקסל
workbook->Save(outDir->StringAppend(new String("CopyColumns_out.xlsx")));
תמונה המציגה את העמודות שהועתקו

תמונה המציגה את העמודות שהועתקו

קבל רישיון חינם

על מנת לנסות את ה-API ללא מגבלות הערכה, אתה יכול לבקש רישיון זמני בחינם.

סיכום

במאמר זה, למדת כיצד להעתיק שורות ועמודות בקובץ Excel באמצעות C++. דוגמאות הקוד המשותפות מראות כיצד להעתיק שורות ועמודות בודדות ומרובות בקובץ Excel. השתמשנו ב-Aspose.Cells עבור C++ API כדי להשיג זאת. זהו ממשק API חזק המספק תכונות נוספות רבות לעבודה עם קבצי Excel. אתה יכול לחקור את ה-API בפירוט על ידי ביקור בתיעוד הרשמי. בכל מקרה של שאלות, אנא אל תהסס לפנות אלינו בפורום התמיכה החינמי שלנו.

ראה גם