Associa uma Tabela BIFF8 (ListObject do Excel) a um intervalo de células, devolvendo o novo objecto
TXLSTable para que propriedades adicionais (
StyleName, opções de linhas alternadas,
TotalsRowShown) possam ser ajustadas antes de guardar. (Disponível desde v2.33.0.)
TXLSXWorksheet.AddTable no lado XLSX, para que código independente do formato possa chamar a mesma assinatura. (Disponível desde a v2.33.0.)
Sintaxe
function AddTable(
const AName, ARange: WideString;
AColumns: TStrings):
TXLSTable;
| AName | WideString. O nome de tabela de referência estruturada mostrado na Name Box do Excel, por exemplo, 'SalesTable'. Torna-se Name e DisplayName no objeto devolvido 'SalesTable'. Becomes both Name and DisplayName on the returned object |
| ARange | WideString. O intervalo de células que a Table cobre em notação A1, por exemplo 'A1:D10'WideString. O intervalo de células coberto pela Table em notação A1, por exemplo, 'A1:D10'. A primeira linha do intervalo é tratada como linha de cabeçalho |
| AColumns | TStrings. Texto do cabeçalho por coluna. Tem de conter exatamente tantas entradas quanto a largura do intervalo |
Observações
A nova tabela é adicionada à colecção
Tables da folha de cálculo. O
StyleName assume como predefinição
'TableStyleMedium2' e
ShowRowStripes assume por predefinição True, correspondendo ao que o Excel e o lado XLSX produzem. O id (1..N por folha) é atribuído no momento de guardar, caso não seja definido
O BIFF8 emite o grupo de registos FEATHEADR11 / FEAT11 / LIST12 apenas em SaveAs(xlExcel97). As gravações em BIFF5 não são afetadas (Tables são um conceito de BIFF8+). O registo LIST12 guarda StyleName e os sinalizadores de linhas/colunas com bandas usando o esquema de cliente de estilo de tabela do MS-XLS. A partir da v2.33.2, o AUTOFILTERINFO O BIFF8 emite o grupo de registos FEATHEADR11 / FEAT11 / LIST12 apenas em AUTOFILTER . As guardas em BIFF5 não são afectadas (as Tabelas são um conceito BIFF8+)
Exemplo
Este exemplo escreve uma região de vendas de quatro colunas vinculada como Tabela em 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;
Ver também