Dokumentace HotXLS

Metoda AddTable

Připojí tabulku BIFF8 (Excel ListObject) k rozsahu buněk a vrátí nový objekt TXLSTable pro další konfiguraciStyleName, banded-row flags, TotalsRowShown) lze před uložením doladit. Tvar odpovídá TXLSXWorksheet.AddTable na straně XLSX, takže kód nezávislý na formátu může volat stejnou signaturu. (Dostupné od v2.33.0.)

Syntaxe

function AddTable(const AName, ARange: WideString; AColumns: TStrings): TXLSTable;
ANameWideString. Název tabulky se strukturovaným odkazem zobrazený v poli názvu v Excelu, např. 'SalesTable'. Na vráceném objektu se stane zároveň Name i DisplayName 'SalesTable'. Becomes both Name and DisplayName on the returned object
ARangeWideString. Rozsah buněk, který tabulka pokrývá, v zápisu A1, např. 'A1:D10'WideString. Rozsah buněk, který tabulka pokrývá, v zápisu A1, např. 'A1:D10'. První řádek rozsahu se považuje za záhlaví
AColumnsTStrings. Text záhlaví pro každý sloupec. Musí obsahovat právě tolik položek, kolik má rozsah sloupců

Poznámky

Nová tabulka je přidána do kolekce Tables listu. Výchozí hodnota StyleName je prázdný řetězec 'TableStyleMedium2' and ShowRowStripes má výchozí hodnotu True, což odpovídá tomu, co vytváří Excel a strana XLSX. Id (1..N na list) se přiřadí při ukládání, pokud ho nenastavíte

BIFF8 emituje skupinu záznamů FEATHEADR11 / FEAT11 / LIST12 pouze při SaveAs(xlExcel97). Uložení ve formátu BIFF5 zůstává nedotčeno (tabulky jsou koncept až od BIFF8+). Záznam LIST12 ukládá StyleName a příznaky pruhovaných řádků / pruhovaných sloupců pomocí klientského rozložení tabulkového stylu MS-XLS. Od v2.33.2 AUTOFILTERINFO BIFF8 emituje skupinu záznamů FEATHEADR11 / FEAT11 / LIST12 pouze při AUTOFILTER . Ukládání BIFF5 není ovlivněno (Tabulky jsou funkce BIFF8+)

Příklad

Tento příklad zapíše čtyřsloupcový prodejní region vázaný jako Tabulka na 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;

Viz také