סינון מידע בגיליונות אלקטרוניים של Excel הוא תכונה חשובה. זה מאפשר לך להסתיר נתונים לא רלוונטיים ולהציג רק את הנתונים העומדים בקריטריונים ספציפיים. יתכנו תרחישים שבהם סינון נתונים יכול להיות מועיל. לדוגמה, ייתכן שארגון ירצה לסנן מוצרים בעלי ביצועים נמוכים מדוח המכירות כדי לנתח ולשפר את אסטרטגיות המכירה שלו. במאמר זה, תלמד כיצד להוסיף או להסיר סינון אוטומטי בקבצי Excel באמצעות C++.

C++ API להוספה והסרה של סינון אוטומטי בקבצי Excel

נשתמש ב-Aspose.Cells for C++ API להוספה והסרה של AutoFilter בקבצי Excel. זוהי ספריית C++ מקורית המאפשרת לך ליצור, לקרוא ולשנות קבצי Excel מבלי לדרוש התקנה של Microsoft Excel. אתה יכול להתקין את ה-API דרך NuGet או להוריד אותו ישירות מהקטע הורדות.

PM> Install-Package Aspose.Cells.Cpp

החל סינון אוטומטי בקבצי Excel באמצעות C++

אתה יכול להחיל סינון אוטומטי על מגוון תאים. מסננים אוטומטיים מאפשרים לך למיין ולסנן ערכים בטווח התאים הנתון. להלן השלבים להוספת סינון אוטומטי בקבצי Excel.

הקוד לדוגמה הבא מראה כיצד להחיל סינון אוטומטי על טווח של תאים בקובץ Excel באמצעות C++.

// נתיב ספריית המקור.
StringPtr srcDir = new String("SourceDirectory\\");

// נתיב ספריית פלט.
StringPtr outDir = new String("OutputDirectory\\");

// טען את קובץ המקור של Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Book3.xlsx")));

// גש לגליון העבודה הראשון בקובץ האקסל
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// יצירת סינון אוטומטי על ידי מתן טווח התא
worksheet->GetIAutoFilter()->SetRange(new String("A1:B1"));

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

התמונה של קובץ הפלט שנוצר על ידי הקוד לדוגמה

הוסף סינון אוטומטי של תאריך בקבצי Excel באמצעות C++

קובצי Excel עשויים להכיל נתונים המבוססים על תאריכים. אתה עלול למצוא את עצמך בתרחישים שבהם עליך לסנן ולנתח נתונים על סמך תאריכים שונים. לכן, מסנן תאריכים יתגלה כמועיל בתרחישים כאלה. להלן השלבים להוספת סינון אוטומטי של תאריכים בקבצי Excel.

הקוד לדוגמה הבא מדגים כיצד להוסיף סינון אוטומטי של תאריכים בקבצי Excel באמצעות C++.

// נתיב ספריית המקור.
StringPtr srcDir = new String("SourceDirectory\\");

// נתיב ספריית פלט.
StringPtr outDir = new String("OutputDirectory\\");

// טען את קובץ המקור של Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Book4.xlsx")));

// גש לגליון העבודה הראשון בקובץ האקסל
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// התקשר לפונקציה AddDateFilter כדי להחיל את המסנן
worksheet->GetIAutoFilter()->AddDateFilter(0, DateTimeGroupingType_Month, 2018, 1, 1, 0, 0, 0);

// התקשר לפונקציה Refresh כדי לעדכן את גליון העבודה
worksheet->GetIAutoFilter()->Refresh();

// שמור את קובץ האקסל
workbook->Save(outDir->StringAppend(new String("DateFilter_out.xlsx")));

הוסף סינון אוטומטי של תאריך דינמי בקובץ Excel באמצעות C++

עשויים להיות מקרים שבהם אתה צריך מסנן תאריכים כללי יותר, כגון החודש ללא קשר לשנה או החודש שלפני החודש הנוכחי. עבור תרחישים כמו זה, אתה יכול להשתמש במסנן האוטומטי הדינמי כדי לסנן את הנתונים. להלן השלבים לסינון נתונים באמצעות סינון אוטומטי דינמי של תאריכים.

הקוד לדוגמה הבא מדגים כיצד להוסיף סינון אוטומטי של תאריך דינמי בקובץ Excel באמצעות C++.

// נתיב ספריית המקור.
StringPtr srcDir = new String("SourceDirectory\\");

// נתיב ספריית פלט.
StringPtr outDir = new String("OutputDirectory\\");

// טען את קובץ המקור של Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Book4.xlsx")));

// גש לגליון העבודה הראשון בקובץ האקסל
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// התקשר לפונקציה DynamicFilter כדי להחיל את המסנן
worksheet->GetIAutoFilter()->DynamicFilter(0, DynamicFilterType_Februray);

// התקשר לפונקציה Refresh כדי לעדכן את גליון העבודה
worksheet->GetIAutoFilter()->Refresh();

// שמור את קובץ האקסל
workbook->Save(outDir->StringAppend(new String("DynamicDateAutoFilter_out.xlsx")));

החל סינון אוטומטי מותאם אישית בקבצי Excel באמצעות C++

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

הקוד לדוגמה הבא מראה כיצד להוסיף סינון אוטומטי מותאם אישית בקבצי Excel באמצעות C++.

// נתיב ספריית המקור.
StringPtr srcDir = new String("SourceDirectory\\");

// נתיב ספריית פלט.
StringPtr outDir = new String("OutputDirectory\\");

// טען את קובץ המקור של Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleCountryNames.xlsx")));

// גש לגליון העבודה הראשון בקובץ האקסל
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// התקשר לפונקציה מותאמת אישית כדי להחיל את המסנן
worksheet->GetIAutoFilter()->Custom(0, FilterOperatorType_Equal, new String("Brazil"));

// התקשר לפונקציה Refresh כדי לעדכן את גליון העבודה
worksheet->GetIAutoFilter()->Refresh();

// שמור את קובץ האקסל
workbook->Save(outDir->StringAppend(new String("CustomFilter_out.xlsx")));

הסר מסנן אוטומטי מקבצי Excel

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

הקוד לדוגמה הבא מראה כיצד להסיר סינון אוטומטי מקובץ Excel באמצעות C++.

// נתיב ספריית המקור.
StringPtr srcDir = new String("SourceDirectory\\");

// נתיב ספריית פלט.
StringPtr outDir = new String("OutputDirectory\\");

// טען את קובץ המקור של Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("SampleAutoFilter.xlsx")));

// גש לגליון העבודה הראשון בקובץ האקסל
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// הסר מסננים אוטומטיים
worksheet->RemoveAutoFilter();

// שמור את קובץ האקסל
workbook->Save(outDir->StringAppend(new String("RemoveAutoFilter_out.xlsx")));

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

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

סיכום

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

ראה גם