עבודה עם שולחנות

עבודה עם שולחנות

Aspose.Cells FOSS for Java supports Excel tables (also known as ListObjects or ניתן ליצור טבלאות חדשות מתוך שורות תאים, לבדוק לוח קיימים, הגדר כותרת ושלבים מקיפים, יישום סגנונות שולחן מובנים, גישה לעמודים בודדים, והפוך את הטבלאות בחזרה לדרגות רגילות. נקודת הכניסה היא ListObjectCollection,גישה דרך Worksheet.getListObjects().


סקירה

לוח עבודה על שולחן העבודה מנוהל באמצעות ListObjectCollection חזרה על ידי Worksheet.getListObjects().כל אחד ListObject מציין את טבלת Excel ו מציג את שם התצוגה, הערה, גבולות טווח התא, אוסף עמודים, סגנון הגדרות, וראש / כל שורות ראייה.

שולחן חדש נוצר עם ListObjectCollection.add(startRow, startColumn, endRow, endColumn, hasHeaders), אשר מחזיר את האינדקס המבוסס על אפס של הטבלה שנוצרה לאחרונה. העומס המוגזם מקבל את שורות שם התא: ListObjectCollection.add(startCellName, endCellName, hasHeaders).


מחלקות מפתח

שיעורתיאור
ListObjectמציג טבלה אחת של Excel. getDisplayName(), getComment(), קואורדינטות טווח, אוסף עמודים, סוג סגנון וראש / כל שורות ראייה.
ListObjectCollectionאוסף של כל הטבלאות על לוח עבודה.תמיכה getCount(), indexed and named lookup via get(), add(), remove(),עוזרי הטרנספורמציה של סגנון.
ListColumnמציג עמוד אחד בתוך טבלה.צביע על זיהוי עמוד, שם, ותאריכי חישוב של כלל-רו.
ListColumnCollectionאוסף הורה של עמודים בטבלה.Iterable עם מספר וגישה אינדיקטור.
TableStyleTypeEnum מזהה סגנון לוח Excel מובנה (Light 1–21, Medium 1 – 28, Dark 1-11 או Custom/None).
TotalsCalculationאנום עבור הפונקציה של אוסף על שורה הכוללת של טבלה (SUM, COUNT, AVERAGE, MAX, MIN, STD_DEV, VAR, CONTAIN_NUMS, CUSTOM, NONE).

גישה לטבלות על לוח עבודה

להחזיר את ListObjectCollection מכל אחד Worksheet דרך Worksheet.getListObjects().שימוש ListObjectCollection.getCount() כדי לקבוע כמה טבלאות קיימות.טבלים בודדים נגישים על ידי אינדיקטור מבוסס אפס דרך ListObjectCollection.get(index) או באמצעות שם המראה ListObjectCollection.get(name).

Workbook wb = new Workbook("input.xlsx");
WorksheetCollection sheets = wb.getWorksheets();
Worksheet ws = sheets.get(0);
ListObjectCollection tables = ws.getListObjects();

for (int i = 0; i < tables.getCount(); i++) {
    ListObject table = tables.get(i);
    System.out.println("Table: " + table.getDisplayName()
        + " rows: " + table.getStartRow() + "-" + table.getEndRow());
}

יצירת שולחן חדש

שימוש ListObjectCollection.add() להוסיף טבלה מעל שורה של תא. hasHeaders הפראמטר מציין אם השורה הראשונה של הטווח מכילה ראשי עמודים.

Workbook wb = new Workbook();
WorksheetCollection sheets = wb.getWorksheets();
Worksheet ws = sheets.get(0);

// Populate data
ws.getCells().get("A1").putValue("Product");
ws.getCells().get("B1").putValue("Quantity");
ws.getCells().get("A2").putValue("Widget");
ws.getCells().get("B2").putValue(100);

// Create table over A1:B2 with headers in row 0
int tableIndex = ws.getListObjects().add(0, 0, 1, 1, true);
ListObject table = ws.getListObjects().get(tableIndex);
table.setDisplayName("SalesTable");

• בדיקת תכונות שולחן

ברגע שאתה מחזיק א ListObject רשימה שאתם יכולים לקרוא:

  • ListObject.getDisplayName() - שורת השם של המסך.
  • ListObject.getComment() – הערה אופציונלית הקשורה לשולחן.
  • ListObject.getStartRow() / ListObject.getStartColumn() - העליון השמאלי של טווח השולחן.
  • ListObject.getEndRow() / ListObject.getEndColumn() - תא ימין התחתון של טווח השולחן.
  • ListObject.isShowHeaderRow() האם השורה של הכותרת נראית?.
  • ListObject.isShowTotals() האם השורה הכוללת נראית?.
  • ListObject.getListColumns() • The ListColumnCollection על השולחן .

שולחנות סגנון

שימוש בסגנון שולחן מבוסס באמצעות ListObject.setTableStyleType(TableStyleType). The TableStyleType האנום כולל אור (1–21), בינוני (1 – 28) וטמפרטורה (1-11) מגוון פלוס NONE ו CUSTOM.

ListObject table = ws.getListObjects().get(0);
table.setTableStyleType(TableStyleType.TABLE_STYLE_MEDIUM_2);

סגנון נוסף של טוגלים לשלוט שורות מחוברות, עמודים מחוזרים, ואת הדגש הראשון / האחרון עמוד:

  • ListObject.setShowTableStyleRowStripes(boolean)
  • ListObject.setShowTableStyleColumnStripes(boolean)
  • ListObject.setShowTableStyleFirstColumn(boolean)
  • ListObject.setShowTableStyleLastColumn(boolean)

אתה יכול גם להגדיר שם סגנון מותאם אישית עם ListObject.setTableStyleName(String).

שיטות עוזרות ListObjectCollection.parseTableStyleType(String) ו ListObjectCollection.tableStyleTypeName(TableStyleType) להפוך בין אנדרואיד והצגת הקו שלה.


עבודה עם שולחנות עמודים

גישה לאותם עמודים באמצעות ListObject.getListColumns(),אשר חוזר א ListColumnCollection.כל אחד ListColumn תגיות →:

  • ListColumn.getId() - מזהה עמוד OOXML מבוסס אחד.
  • ListColumn.getName() / ListColumn.setName(String) – הקובץ של העמודה כותרת טקסט.
  • ListColumn.getTotalsCalculation() / ListColumn.setTotalsCalculation(TotalsCalculation) - תפקוד המשלב עבור השורה הכוללת.
  • ListColumn.getTotalsRowLabel() / ListColumn.setTotalsRowLabel(String) - תווית מותאמת אישית בשורה הכוללת.
  • ListColumn.getTotalsRowFormula() / ListColumn.setTotalsRowFormula(String) - תבנית מותאמת אישית עבור סדר הכולל.
ListObject table = ws.getListObjects().get(0);
ListColumnCollection columns = table.getListColumns();
for (int i = 0; i < columns.getCount(); i++) {
    ListColumn col = columns.get(i);
    System.out.println("Column " + col.getId() + ": " + col.getName());
}

הגדרת השורה הכוללת

אפשרות להגשת כלל עם ListObject.setShowTotals(true),תגיות קשורות Per-Column תפקוד אוסף באמצעות TotalsCalculation אנימ.

ListObject table = ws.getListObjects().get(0);
table.setShowTotals(true);

ListColumn qtyColumn = table.getListColumns().get(1);
qtyColumn.setTotalsCalculation(TotalsCalculation.SUM);

ListColumn labelColumn = table.getListColumns().get(0);
labelColumn.setTotalsRowLabel("Total");

מחדש ומשנה טבלאות

לחזור על שולחן כדי לכסות מגוון תאים שונה באמצעות ListObject.resize(startRow, startColumn, endRow, endColumn, hasHeaders).

להפוך את השולחן בחזרה לתחום תאים רגיל עם ListObject.convertToRange(). זה מוריד את מבנה הטבלה תוך שמירה על נתוני התא ופורמט.

הסר את השולחן לחלוטין מהאוסף עם ListObjectCollection.removeAt(index).


טבלת AutoFilter על שולחנות

הצג או להסיר את העמודה נופל-לאחור פטריות סולר אוטומטי על שולחן:

  • ListObject.showAutoFilter() - להציג את רצועות הפילטר על שורת הכותרת.
  • ListObject.removeAutoFilter() הסתיר את רצועות הפילטר.

סיכום התייחסות API

ListObject

שיטתסוג החזרהתיאור
getDisplayName()Stringהצג את שם השולחן.
setDisplayName(name)voidתן את שם המראה.
getComment()Stringהערה אופציונלית לשולחן.
setComment(comment)voidתנו לקטע הערה.
getStartRow()intהתחל את רצועת השורה של טבלת שורת.
getStartColumn()intהתחל את אינדיקטור העמודה של טבלת שורת.
getEndRow()intסעיף מס’ של טבלת השורה הסופית.
getEndColumn()intמסוף העמודה של טבלת שורה.
isShowHeaderRow()booleanהאם השורה של הכותרת היא גלויה.
setShowHeaderRow(show)voidלהציג או להסתיר את שורת הכותרת.
isShowTotals()booleanהאם השורה הכוללת היא גלויה.
setShowTotals(show)voidלהציג או להסתיר את השורה הכוללת.
getTableStyleType()TableStyleTypeסגנון שולחן מבוסס.
setTableStyleType(type)voidישנה סגנון שולחן מבוסס.
getTableStyleName()Stringשם שולחן סגנון מותאם אישית.
setTableStyleName(name)voidקבע שם סגנון שולחן מותאם אישית.
getListColumns()ListColumnCollectionאוסף עמודים של השולחן.
resize(...)voidמחדש את השולחן לתוך טווח חדש.
convertToRange()voidלהפוך את השולחן לשטח רגיל.
showAutoFilter()voidמצביע על רצועות סוללה אוטומטיות.
removeAutoFilter()voidמפתים את הפילטר האוטומטי.

ListObjectCollection

שיטתסוג החזרהתיאור
getCount()intמספר המעטפים על לוח העבודה.
get(index)ListObjectהחזיר את הטבלה לנקודת אפס נתונה.
get(name)ListObjectהחזיר את השולחן עם שם התצוגה שניתן.
add(startRow, startColumn, endRow, endColumn, hasHeaders)intיצירת טבלה חדשה; מחזירה את האינדקס שלה.
add(startCellName, endCellName, hasHeaders)intיצירת טבלה חדשה מתוך שמות תאים; חוזר את האינדקס שלה.
removeAt(index)voidהסר את הטבלה על האינדקס.
parseTableStyleType(name)TableStyleTypeלהפוך את הקו ל- A TableStyleType ערך של Enum.
tableStyleTypeName(type)Stringלהפוך A TableStyleType שמו של סרד ל-Strack Name.

ListColumn

שיטתסוג החזרהתיאור
getId()intמזהה עמוד OOXML מבוסס אחד.
getName()Stringעמוד ראשי טקסט.
setName(name)voidהקלד את כותרת הטקסט.
getTotalsCalculation()TotalsCalculationתפקוד אוסף של שורות.
setTotalsCalculation(calc)voidלהגדיר את כל סדרת אוסף.
getTotalsRowLabel()Stringתוויות מותאמות אישית בשורה הכוללת.
setTotalsRowLabel(label)voidתן את כל התווית השורה.
getTotalsRowFormula()Stringתבנית אישית עבור כל השורות.
setTotalsRowFormula(formula)voidתן את כל התבנית ברציפות.

הגבלות

  • קבצי נתונים של טבלה אינם ניתן לשנות בנפרד; הטבלה מכסה את המגוון זמן ההפעלה: שימוש resize() כדי להתאים את הטווח המוגן.
  • סגנונות שולחן מותאמים אישית חייבים להיות מוגדרים בספר העבודה לפני התייחסות אליהם. בשם דרך setTableStyleName().

ראה גם

 עברית