HotXLS 문서

AddTable 메서드

셀 범위에 BIFF8 표(Excel ListObject)를 연결하고 저장 전에 추가 속성(StyleName, 밴딩 행 플래그, TotalsRowShown)을 조정할 수 있도록 새 TXLSTable 객체를 반환합니다. 형태는 XLSX 측의 TXLSXWorksheet.AddTable을 미러링하므로 형식에 무관한 코드가 동일한 시그니처를 호출할 수 있습니다. (v2.33.0부터 사용 가능합니다.)

구문

function AddTable(const AName, ARange: WideString; AColumns: TStrings): TXLSTable;
AName WideString. Excel의 Name Box에 표시되는 구조화 참조 테이블 이름입니다 예: 'SalesTable' 반환된 객체의 Name과 DisplayName이 모두 됩니다
ARange WideString. Table이 A1 표기법으로 차지하는 셀 범위입니다 예: 'A1:D10' 범위의 첫 행은 헤더 행으로 처리됩니다
AColumns 열별 머리글 텍스트입니다 범위의 너비와 정확히 같은 수의 항목을 포함해야 합니다

비고

새 표는 워크시트의 Tables 컬렉션에 추가됩니다. StyleName은 기본적으로 'TableStyleMedium2'이며 ShowRowStripes는 기본적으로 True입니다. id(시트당 1..N)는 설정하지 않으면 저장 시에 할당됩니다

BIFF8은 SaveAs(xlExcel97)에서만 FEATHEADR11 / FEAT11 / LIST12 레코드 그룹을 방출합니다. BIFF5 저장은 영향을 받지 않습니다(표는 BIFF8+ 개념입니다). LIST12 레코드는 MS-XLS 표 스타일 클라이언트 레이아웃을 사용하여 StyleName과 밴딩 행/열 플래그를 저장합니다. v2.33.2부터는 같은 시트의 표가 자동 필터 범위를 완전히 포함할 때 시트 수준의 AUTOFILTERINFO / AUTOFILTER 레코드가 제외됩니다. v2.87.4는 또한 해당 표 수준 및 필드 수준 AutoFilter 메타데이터를 FEAT11에 씁니다

예제

이 예제는 A1:D10에 표로 바인딩된 4열 판매 지역을 씁니다

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;

참조