ไม่มีการพึ่งพาเพิ่มเติม
ไม่มีการพึ่งพาเพิ่มเติม
Aspose.Cells FOSS for Java supports Excel tables (also known as ListObjects or คุณสามารถสร้างตารางใหม่จากระยะเซลล์, ตรวจสอบ ตารางที่มีอยู่, ปรับแต่งหัวข้อและจํานวนรวมแถว, ใช้สไตล์ตาระในระบบ, เข้าไปยังคอลัมน์แต่ละตัว และแปลงตารางกลับสู่ระยะปกติ จุดเข้าคือ ListObjectCollection, สามารถเข้าถึงได้ผ่านทาง Worksheet.getListObjects().
Overview
ตารางในใบทํางานถูกจัดการผ่านการใช้งานของ ListObjectCollection กลับโดย Worksheet.getListObjects().ทุกคน ListObject แสดงว่าตาราง Excel หนึ่ง และ แสดงชื่อการแสดง, ความเห็น, ขอบเขตระยะเซลล์, กลุ่มคอลัมน์, สไตล์ การตั้งค่า และการมองเห็นเส้นหัวข้อ/รวมทั้งหมด.
การสร้างตารางใหม่ด้วย ListObjectCollection.add(startRow, startColumn, endRow, endColumn, hasHeaders), ซึ่งจะคืนอินเด็กซ์ที่ตั้งบนศูนย์ของตารางที่สร้างใหม่. ตัวเลือกอื่นคือ การขยายความถ่วงรับ string ชื่อเซลล์: ListObjectCollection.add(startCellName, endCellName, hasHeaders).
คลาสสำคัญ
| Class | Description |
|---|---|
ListObject | แสดงตาราง Excel เดียว. เปิดตัว getDisplayName(), getComment(), ระยะความสัมพันธ์, การรวบรวมคอลัมน์, ประเภทรูปแบบ และการมองเห็นแถวหัวข้อ/จํานวนทั้งหมด. |
ListObjectCollection | การรวมตารางทั้งหมดในใบทํางาน. สนับสนุน getCount(), อินเดกซ์และชื่อการค้นหาผ่าน get(), add(), remove(), และเครื่องช่วยแปลงแบบสไตล์. |
ListColumn | แสดงให้เห็นคอลัมน์หนึ่งในตาราง เปิดตัว ID คอล์ม ชื่อ และการตั้งค่าคํานวณแถวรวม. |
ListColumnCollection | การจัดเรียงรวมคอลัมน์ในตาราง สามารถทําการต่อเนื่องได้ด้วยการนับและเข้าถึงอินเด็กซ์. |
TableStyleType | Enum ที่ระบุรูปแบบตาราง Excel ในระบบ (Light 121, Medium 1 ?? 28, Dark 1 11, หรือ Custom/None). |
TotalsCalculation | Enum สําหรับฟังก์ชันการรวมในแถวของจํานวนทั้งหมดของตาราง (SUM, COUNT, AVERAGE, MAX, MIN, STD_DEV, VAR, Count_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()สาขาListColumnCollectionสําหรับโต๊ะ.
โต๊ะสไตล์
ใช้สไตล์ตารางที่ใช้ในระบบโดยการใช้ ListObject.setTableStyleType(TableStyleType). การ TableStyleType enum รวม Light (121), Medium (1 ??28) และ Dark (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) แปลงระหว่าง enum และการแสดงรุ่นของมัน.
การทํางานกับคอลัมน์ตาราง
เข้าสู่คอลัมน์แต่ละตัวผ่าน ListObject.getListColumns(), ซึ่งคืน a 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), แล้วตั้งต่อคอลัมน์ การรวมฟังก์ชัน โดยใช้ 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).
การกรองอัตโนมัติบนโต๊ะ
แสดงหรือลบลูกศรกรองอัตโนมัติในคอลัมน์ที่ลากลงบนตาราง:
ListObject.showAutoFilter()แสดงลูกศรกรองในแถวหัวข้อ.ListObject.removeAutoFilter()ซ่อนลูกศรกรอง.
คําอธิบายการพบบ่อย API
ListObject
| Method | ประเภทการคืน | Description |
|---|---|---|
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
| Method | ประเภทการคืน | Description |
|---|---|---|
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 หมายเลขค่า. |
tableStyleTypeName(type) | String | เปลี่ยน a เป็น TableStyleType enum เป็นชื่อสตริงของมัน. |
ListColumn
| Method | ประเภทการคืน | Description |
|---|---|---|
getId() | int | ตัวรับประจําคอลัมน์ OOXML ที่มีฐานเดียว. |
getName() | String | ข้อความหัวข้อคอลัมน์. |
setName(name) | void | กําหนดข้อความหัวหน้าคอลัมน์. |
getTotalsCalculation() | TotalsCalculation | หน้าที่การรวมแถวของจํานวนทั้งหมด. |
setTotalsCalculation(calc) | void | กําหนดการรวมจํานวนทั้งหมดในแถว. |
getTotalsRowLabel() | String | แล็กที่กําหนดเองในแถวรวม. |
setTotalsRowLabel(label) | void | ตั้งตัวกระทู้รวม. |
getTotalsRowFormula() | String | สูตรที่กําหนดเองสําหรับแถวรวม. |
setTotalsRowFormula(formula) | void | กําหนดสูตรแถวรวม. |
Limitations
- การผูกพันข้อมูลตารางไม่สามารถปรับเปลี่ยนได้โดยเฉพาะ; ตาระนี้ครอบคลุมช่วง กําหนดในเวลาสร้าง. ใช้
resize()เพื่อปรับระยะที่ครอบคลุม. - สไตล์โต๊ะที่กําหนดเองต้องถูกนิยามในหนังสือทํางาน ก่อนจะอ้างอิงมัน โดยชื่อผ่าน
setTableStyleName().