Pular para o conteúdo principal

Excel Preencher sintaxe do modelo

O que esta página abrange

PDF4me Excel Popular usa o Marcadores inteligentes Aspose sintaxe para mesclar JSON dados em um formato projetado Excel planilha. Você digita campos de marcador como &=Itens.NomeDoItem diretamente nas células de um normal .xlsx arquivo, depois passe a planilha mais um JSON carga útil para o mecanismo. Esta página é a referência canônica para a sintaxe: formato de marcador, parâmetros modificadores, comportamento em várias planilhas, manipulação de fórmulas, formatação de cultura e modelo de amostra para download + JSON Arquivos que você pode executar de ponta a ponta.

Referência externa: o Excel O mecanismo de população implementa o Os marcadores inteligentes Aspose.Cells apresentam o recursoA documentação do Aspose é a fonte oficial da gramática; esta página a resume para PDF4me usuários e adiciona o JSON-convenções de carga útil específicas para o PDF4me API.

Arquivos de exemplo

Baixe os modelos de exemplo e os arquivos correspondentes. JSON Arquivos de dados usados ao longo desta página. Arraste-os diretamente para o PDF4me Excel Popular REST ponto final, Power Automate ação, ou qualquer uma das plataformas de integração.

Selecione o formato

O marcador inteligente básico é um valor de célula única que começa com &= (& igual a) e é seguido pelo nome da fonte de dados, um ponto e o nome do campo.

&=DataSource.FieldName

Coloque o marcador na célula onde o primeiro registro deve ser inserido. Quando você fornecer um JSON matriz sob DataSourceO mecanismo de busca grava o primeiro registro nessa célula e insere novas linhas abaixo para cada registro adicional. Células adjacentes que contêm marcadores na mesma linha são expandidas juntas para que cada registro permaneça alinhado.

Exemplo mínimo

Modelo (Folha 1 de template.xlsx) é exatamente isto:

UMBC
Nome do itemQuantidadePreço unitário
&=Items.ItemName&=Items.Qty&=Items.UnitPrice

JSON carga útil (sheet23-data.json, a amostra correspondente):

{
"Items": [
{ "ItemName": "A123", "Qty": "55", "UnitPrice": "3.05" },
{ "ItemName": "B456", "Qty": "20", "UnitPrice": "5.50" },
{ "ItemName": "C789", "Qty": "10", "UnitPrice": "12.99" }
]
}

Saída populada: O mecanismo grava o primeiro registro na linha 2, insere duas linhas adicionais abaixo e alinha as colunas pela posição do marcador adjacente. A linha de cabeçalho na linha 1 permanece no lugar.

Parâmetros modificadores

Os marcadores inteligentes aceitam uma lista de parâmetros separados por vírgulas entre parênteses, imediatamente após o nome do campo, para controlar o layout e o comportamento.

&=DataSource.FieldName(parameter1, parameter2, ...)

Os parâmetros mais úteis:

ParâmetroO que fazExemplo
dynamicCreates a dynamic range (and named formulas) around the populated cells. Use for output that feeds PivotTables, charts, or named-range formulas downstream.&=Items.ItemName(dynamic)
horizontalLays the records out left-to-right across columns instead of top-to-bottom down rows. Use for compact summaries or single-row dashboards.&=Items.ItemName(horizontal)
noaddReplaces values in place without adding any new rows. Use when the template already contains enough pre-formatted rows and you do not want the layout to grow.&=Items.ItemName(noadd)
skip:NInserts N blank rows between each record. Useful for spaced-out reports such as packing slips or labels.&=Items.ItemName(skip:1)
copystyleCopies the formatting of the marker cell down onto every populated row. Without it the first row keeps its style and the inserted rows pick up the default.&=Items.ItemName(copystyle)
shiftShifts cells (right or down) when inserting populated rows so existing content below is preserved instead of overwritten.&=Items.ItemName(shift)
repeatRepeats a header or section for each grouping. Used together with subtotal-style templates.&=Items.ItemName(repeat)

Os parâmetros podem ser combinados: &=Items.ItemName(dynamic, copystyle) Cria um intervalo dinâmico E copia o estilo da linha para cada registro inserido.

Fontes de dados aninhadas

Quando o JSON envolve seu array em um objeto pai, acesse-o com um caminho pontilhado. Fatura folha de template.xlsx é o exemplo canônico. Seus marcadores na linha 2 leem através de RootData em Items:

B2: &=RootData.Items.ItemName
C2: &=RootData.Items.Description
D2: &=RootData.Items.Qty
E2: &=RootData.Items.UnitPrice
F2: &=RootData.Items.Discount
G2: &=RootData.Items.Price

A carga útil correspondente é sheet1-data.json:

{
"RootData": {
"Items": [
{ "ItemName": "Laptop", "Description": "Dell Inspiron 15", "Qty": 2, "UnitPrice": 750, "Discount": 50, "Price": 1450 },
{ "ItemName": "Mouse's", "Description": "Wireless Mouse", "Qty": 3, "UnitPrice": 25, "Discount": 0, "Price": 75 },
{ "ItemName": "Keyboard", "Description": "Mechanical Keyboard", "Qty": 1, "UnitPrice": 120, "Discount": 10, "Price": 110 }
]
}
}

Observe o apóstrofo embutido em "Mouse's"Os marcadores inteligentes preservam, por padrão, as primitivas de string entre aspas (o StrictJsonStrings definindo os valores padrão para verdadeiroDefina-o para falso quando você deseja que o mecanismo converta strings numéricas ou de data entre aspas em tipos digitados Excel valores das células durante a mesclagem.

Excel Tabelas e referências estruturadas

A folha de fatura de template.xlsx demonstra um padrão poderoso de Marcadores Inteligentes: a linha de marcadores reside dentro de um Excel Mesa (nomeado) SimpleInvoiceAs células de fórmula referenciam colunas da tabela por meio de referência estruturada em vez de endereços A1, e o intervalo da tabela cresce automaticamente à medida que os Marcadores Inteligentes inserem novas linhas.

Exemplo de célula com fórmula da planilha de Fatura:

=IFERROR(IF(SimpleInvoice[[#This Row],[Unit price]]="","",
(SimpleInvoice[[#This Row],[Qty]] * SimpleInvoice[[#This Row],[Unit price]])
- SimpleInvoice[[#This Row],[Discount]]
), "")

As células de agregação fora da tabela fazem referência a colunas inteiras:

G7: =SUM(SimpleInvoice[Price]) // Invoice subtotal
G9: =IFERROR(G7*G8,"") // Sales tax (G8 is rate)
G11: =SUM(G2:G4)-G10 // Total (G10 is deposit)

Por que isso é importante: quando o mecanismo expande a linha de marcadores de 1 registro para N registros, o SimpleInvoice O intervalo da tabela se expande automaticamente. SUM(SimpleInvoice[Price]) A soma da coluna correta é mantida e as fórmulas por linha são propagadas para baixo sem que você precise criá-las para cada registro.

modelos com várias folhas

Excel A função Populate pode preencher todas as planilhas de uma pasta de trabalho em uma única chamada ou restringir a mesclagem a um subconjunto usando a opção Índices de planilhas parâmetro (baseado em 1, separado por vírgulas). O template-3-sheets.xlsx A amostra contém três folhas. exatamente nessa ordem:

PosiçãoNome da folhaMarcadores utilizadosAmostra JSON
1Items&=Items.ItemName, &=Items.Qty, &=Items.UnitPriceitems-data.json
2Employees&=Employees.EmployeeName, &=Employees.Department, &=Employees.Salaryemployees-data.json
3Products&=Products.ProductName, &=Products.Category, &=Products.Stockproducts-data.json

Para preencher todas as três planilhas em uma única chamada, mescle as três. JSON cargas úteis em um único objeto cujas chaves de nível superior correspondem aos nomes das fontes de dados dos marcadores:

{
"Items": [ { "ItemName": "A123", "Qty": "55", "UnitPrice": "3.05" }, ... ],
"Employees": [ { "EmployeeName": "John Doe", "Department": "IT", "Salary": "5000" }, ... ],
"Products": [ { "ProductName": "Laptop", "Category": "Electronics", "Stock": "15" }, ... ]
}

Para preencher apenas a planilha de Funcionários, passe Worksheet Indexes = 2 na chamada de ação. As posições 1 e 3 permanecem inalteradas. Para preencher apenas Itens + Produtos, passe 1,3.

Manipulação de fórmulas

Os marcadores inteligentes cooperam com sistemas nativos. Excel fórmulas. Duas regras importantes:

  1. Fórmulas estáticas sobrevivem à expansão. Uma fórmula como =B2*C2 em uma linha que recebe cópias expandidas para cada linha preenchida, com as referências de célula ajustadas da maneira usual. Excel Não é necessário um marcador para a célula da fórmula.
  2. O recálculo está ativado por padrão. O Calculate Formulas Essa configuração controla se a planilha será recalculada após a população. Deixe como está. verdadeiro Para receber uma planilha cujos totais e agregados estejam corretos assim que você a abrir, defina-a como... falso Quando você planeja recalcular posteriormente em seu próprio fluxo de trabalho e deseja evitar o custo.

Formatação cultural e de localidade

O Culture & Language Settings O parâmetro aceita um nome de cultura padrão (en-US, fr-FR, de-DE, ja-JP, etc.) e controla como números, datas e moedas são formatados quando o mecanismo grava JSON valores em Excel células. Defina-o para corresponder à localidade que seus destinatários esperam. O padrão é en-US.

Os relacionados Prefixo de citação para estilo O cenário carrega o Excel Adiciona o prefixo de citação aos valores estilizados quando presente, para que valores que parecem números, mas deveriam ser exibidos como texto (números de conta, CEPs com zeros à esquerda), permaneçam como texto.

Padrões comuns

Linha de itens da fatura com totais

A1: Invoice number B1: &=Invoice.Number
A2: Date B2: &=Invoice.Date
A4: Item B4: Qty C4: Unit price D4: Total
A5: &=Items.ItemName B5: &=Items.Qty C5: &=Items.UnitPrice D5: =B5*C5
A6: Grand total D6: =SUM(D5:D5)

Quando o mecanismo expande a linha 5 para cada item, o intervalo da SOMA na linha 6 se expande junto, pois fica abaixo das linhas de marcação.

Tabela de comparação lado a lado (horizontal)

A1: Metric B1: &=Months.Name(horizontal)
A2: Revenue B2: &=Months.Revenue(horizontal)
A3: Expenses B3: &=Months.Expenses(horizontal)

Cada mês passa a ser uma nova coluna à direita de B, em vez de uma nova linha abaixo.

Etiquetas pré-impressas (sem adição)

Quando você tem 24 células com rótulos pré-formatados em uma planilha e deseja que os dados sejam inseridos nelas sem adicionar linhas:

&=Labels.Name(noadd)
&=Labels.Address(noadd)

O mecanismo preenche as 24 linhas existentes em ordem e trunca silenciosamente quaisquer registros que excedam o limite estabelecido.

Lista de verificação rápida

Os marcadores sempre começam com &=
Os dois personagens literais &= na célula A1 (ou em qualquer outra célula). Qualquer outro valor será tratado como um valor de célula normal.
JSON As chaves correspondem exatamente aos nomes dos marcadores.
Os nomes das propriedades diferenciam maiúsculas de minúsculas. Nome do item no modelo NÃO corresponde nomeDoItem no JSON.
Um marcador por célula
Não junte dois marcadores em uma mesma célula. Coloque-os em células adjacentes para que cada um se expanda sem obstruções.

Ações relacionadas

Obtenha ajuda