แนบ BIFF8 Table (Excel ListObject) กับช่วงเซลล์ คืนค่าออบเจ็กต์
TXLSTable ใหม่เพื่อให้สามารถปรับคุณสมบัติเพิ่มเติม (
StyleName, แฟล็กแถวสลับสี,
TotalsRowShown) ได้ก่อนบันทึก รูปร่างนี้สะท้อน
TXLSXWorksheet.AddTable ในฝั่ง XLSX เพื่อให้โค้ดที่ไม่ขึ้นกับรูปแบบสามารถเรียกลายเซ็นเดียวกันได้ (ใช้งานได้ตั้งแต่ v2.33.0)
ไวยากรณ์
function AddTable(
const AName, ARange: WideString;
AColumns: TStrings):
TXLSTable;
| AName |
WideString. structured-reference table name shown ใน Excel's Name Box, e.g.'SalesTable'. Becomes bothNameและDisplayNameบน returned object |
| ARange |
WideString. เซลล์ ช่วง Table covers ใน A1 notation, e.g.'A1:D10'. แรก แถว ของ ช่วง is treated as header แถว |
| AColumns |
TStrings. Header ข้อความ per คอลัมน์. Must contain exactly as many รายการ as ช่วง is wide |
หมายเหตุ
ตารางใหม่จะถูกเพิ่มลงในคอลเลกชัน
Tables ของ worksheet ค่าเริ่มต้นของ
StyleName คือ
'TableStyleMedium2' และ
ShowRowStripes เริ่มต้นเป็น True ซึ่งตรงกับที่ Excel และฝั่ง XLSX สร้าง id (1..N ต่อแผ่น) จะถูกกำหนดเมื่อบันทึกหากคุณไม่ได้กำหนด
BIFF8 ส่งกลุ่มระเบียน FEATHEADR11 / FEAT11 / LIST12 เฉพาะเมื่อ SaveAs(xlExcel97) การบันทึก BIFF5 จะไม่ได้รับผลกระทบ (Tables เป็นแนวคิด BIFF8+) ระเบียน LIST12 เก็บ StyleName และแฟล็กแถว/คอลัมน์สลับสีโดยใช้เลย์เอาต์ client ตาราง MS-XLS ตั้งแต่ v2.33.2 ระเบียน AUTOFILTERINFO / AUTOFILTER ระดับแผ่นจะถูกระงับเมื่อ Table บนแผ่นเดียวกันครอบคลุมช่วง autofilter ทั้งหมด เนื่องจาก Excel ฝัง autofilter ไว้ใน Table object เอง; v2.87.4 ยังเขียน metadata AutoFilter ระดับตารางและระดับเขตข้อมูลลงใน FEAT11 ด้วย
ตัวอย่าง
ตัวอย่างนี้เขียนพื้นที่การขายสี่คอลัมน์ที่ผูกเป็น Table ที่ A1:D10
var
cols: TStringList;
begin
cols := TStringList.Create;
try
cols.Add('Region');
cols.Add('Product');
cols.Add('Quarter');
cols.Add('Revenue');
Sheet.AddTable('SalesTable', 'A1:D10', cols);
finally
cols.Free;
end;
ดูเพิ่มเติม