Excel Sintaks Templat Isi
PDF4me Excel Isi menggunakan Penanda Pintar Aspose sintaks untuk menggabungkan JSON memasukkan data ke dalam desain yang telah dirancang. Excel buku kerja. Anda mengetik bidang penanda seperti &=Item.NamaItem langsung ke dalam sel-sel normal .xlsx berkas, lalu berikan buku kerja ditambah sebuah JSON Muatan ke mesin. Halaman ini adalah referensi kanonik untuk sintaks: format penanda, parameter pengubah, perilaku multi-lembar, penanganan rumus, pemformatan budaya, dan templat sampel yang dapat diunduh + JSON berkas yang dapat Anda jalankan dari ujung ke ujung.
Referensi eksternal: itu Excel Mesin pengisian mengimplementasikan Fitur Aspose.Cells Smart MarkersDokumentasi Aspose adalah sumber tata bahasa yang otoritatif; halaman ini meringkasnya untuk Anda. PDF4me pengguna dan menambahkan JSON-konvensi muatan khusus untuk PDF4me API.
File contoh
Unduh templat contoh dan yang sesuai. JSON berkas data yang digunakan di seluruh halaman ini. Seret langsung ke dalam PDF4me Excel Isi REST titik akhir, Power Automate tindakan, atau salah satu platform integrasi.
&=Item.* penanda yang digunakan dalam sampel Sheet1.RootData.Items[] dengan deskripsi, jumlah, harga satuan, diskon, dan harga.Item[] dengan nilai string untuk menguji Strict JSON Pengaturan string.Produk[]) untuk lembar ketiga.Karyawan[]) untuk mengisi lembar daftar staf.Pilih format
Smart Marker dasar adalah nilai sel tunggal yang diawali dengan &= (ampersand-sama dengan) dan diikuti oleh nama sumber data, titik, dan nama kolom.
&=DataSource.FieldName
Letakkan penanda di sel tempat catatan pertama seharusnya berada. Saat Anda memasukkan JSON susunan di bawah DataSourceMesin tersebut menulis catatan pertama ke dalam sel itu dan menyisipkan baris baru di bawahnya untuk setiap catatan tambahan. Sel-sel yang berdekatan yang berisi penanda pada baris yang sama diperluas bersama sehingga setiap catatan tetap sejajar.
Contoh minimal
Templat (Lembar 1 dari template.xlsx) persis seperti ini:
| A | B | C |
|---|---|---|
| Nama Barang | Kuantitas | Harga satuan |
&=Items.ItemName | &=Items.Qty | &=Items.UnitPrice |
JSON muatan (sheet23-data.json, sampel yang cocok):
{
"Items": [
{ "ItemName": "A123", "Qty": "55", "UnitPrice": "3.05" },
{ "ItemName": "B456", "Qty": "20", "UnitPrice": "5.50" },
{ "ItemName": "C789", "Qty": "10", "UnitPrice": "12.99" }
]
}
Output yang terisi: Mesin tersebut menulis data pertama ke baris 2, menyisipkan dua baris tambahan di bawahnya, dan menyelaraskan kolom berdasarkan posisi penanda yang berdekatan. Baris header di baris 1 tetap di tempatnya.
Parameter pengubah
Smart Marker menerima daftar parameter yang dipisahkan koma dalam tanda kurung tepat setelah nama field untuk mengontrol tata letak dan perilakunya.
&=DataSource.FieldName(parameter1, parameter2, ...)
Parameter yang paling berguna:
| Parameter | Apa fungsinya? | Contoh |
|---|---|---|
dynamic | Creates 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) |
horizontal | Lays 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) |
noadd | Replaces 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:N | Inserts N blank rows between each record. Useful for spaced-out reports such as packing slips or labels. | &=Items.ItemName(skip:1) |
copystyle | Copies 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) |
shift | Shifts cells (right or down) when inserting populated rows so existing content below is preserved instead of overwritten. | &=Items.ItemName(shift) |
repeat | Repeats a header or section for each grouping. Used together with subtotal-style templates. | &=Items.ItemName(repeat) |
Parameter dapat dikombinasikan: &=Items.ItemName(dynamic, copystyle) menciptakan rentang dinamis DAN menyalin gaya baris ke setiap catatan yang disisipkan.
Sumber data bertingkat
Ketika JSON membungkus array Anda di bawah objek induk, akses ke dalamnya dengan jalur putus-putus. The Faktur lembaran template.xlsx adalah contoh kanonik. Penandanya di baris 2 dibaca hingga RootData ke dalam 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
Muatan yang cocok adalah 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 }
]
}
}
Perhatikan tanda apostrof yang tertanam di dalamnya. "Mouse's". Smart Markers mempertahankan primitif string yang dikutip secara default (the StrictJsonStrings pengaturan default ke BENAR). Atur ke PALSU ketika Anda ingin mesin tersebut mengubah string angka atau tanggal yang dikutip menjadi tipe data yang sesuai. Excel nilai sel selama penggabungan.
Excel Tabel dan referensi terstruktur
Lembar Faktur dari template.xlsx Menunjukkan pola Smart Markers yang ampuh: baris penanda berada di dalam sebuah Excel Meja (bernama) SimpleInvoiceSel formula merujuk kolom Tabel berdasarkan referensi terstruktur, bukan alamat A1, dan rentang Tabel bertambah secara otomatis saat Penanda Cerdas menyisipkan baris baru.
Contoh sel rumus dari lembar Faktur:
=IFERROR(IF(SimpleInvoice[[#This Row],[Unit price]]="","",
(SimpleInvoice[[#This Row],[Qty]] * SimpleInvoice[[#This Row],[Unit price]])
- SimpleInvoice[[#This Row],[Discount]]
), "")
Sel agregasi di luar kolom referensi Tabel secara keseluruhan:
G7: =SUM(SimpleInvoice[Price]) // Invoice subtotal
G9: =IFERROR(G7*G8,"") // Sales tax (G8 is rate)
G11: =SUM(G2:G4)-G10 // Total (G10 is deposit)
Mengapa ini penting: ketika mesin memperluas baris penanda dari 1 catatan menjadi N catatan, maka SimpleInvoice Rentang tabel meluas secara otomatis, SUM(SimpleInvoice[Price]) terus menjumlahkan kolom kanan, dan rumus per baris akan diteruskan ke bawah tanpa Anda harus membuatnya per catatan.
Templat multi-lembar
Excel Fungsi Populate dapat mengisi setiap lembar dalam buku kerja dalam satu panggilan, atau membatasi penggabungan ke subset menggunakan Indeks Lembar Kerja parameter (berbasis 1, dipisahkan koma). The template-3-sheets.xlsx Sampel tersebut berisi tiga lembar, dalam urutan persis ini:
| Posisi | Nama lembar | Penanda yang digunakan | Contoh JSON |
|---|---|---|---|
| 1 | Items | &=Items.ItemName, &=Items.Qty, &=Items.UnitPrice | items-data.json |
| 2 | Employees | &=Employees.EmployeeName, &=Employees.Department, &=Employees.Salary | employees-data.json |
| 3 | Products | &=Products.ProductName, &=Products.Category, &=Products.Stock | products-data.json |
Untuk mengisi ketiga lembar kerja dalam satu kali panggilan, gabungkan ketiganya. JSON menggabungkan muatan data ke dalam satu objek tunggal yang kunci tingkat atasnya sesuai dengan nama sumber data dari penanda:
{
"Items": [ { "ItemName": "A123", "Qty": "55", "UnitPrice": "3.05" }, ... ],
"Employees": [ { "EmployeeName": "John Doe", "Department": "IT", "Salary": "5000" }, ... ],
"Products": [ { "ProductName": "Laptop", "Category": "Electronics", "Stock": "15" }, ... ]
}
Untuk mengisi hanya lembar Karyawan, berikan Worksheet Indexes = 2 dalam panggilan aksi. Posisi 1 dan 3 dibiarkan tidak tersentuh. Untuk mengisi hanya Item + Produk, berikan 1,3.
Penanganan rumus
Penanda pintar bekerja sama dengan aplikasi asli. Excel Rumus. Dua aturan penting:
- Rumus statis tetap berlaku meskipun terjadi ekspansi. Rumus seperti
=B2*C2dalam satu baris yang mendapatkan salinan yang diperluas hingga ke setiap baris yang terisi dengan referensi sel yang disesuaikan seperti biasa. Excel Anda tidak memerlukan penanda untuk sel rumus. - Penghitungan ulang diaktifkan secara default. Yang
Calculate FormulasPengaturan ini mengontrol apakah buku kerja dihitung ulang setelah pengisian. Biarkan saja. BENAR untuk menerima buku kerja yang total dan agregatnya akurat saat Anda membukanya. Atur ke PALSU ketika Anda berencana untuk menghitung ulang nanti dalam alur kerja Anda sendiri dan ingin menghindari biaya tersebut.
Pemformatan budaya dan lokal
Yang Culture & Language Settings parameter menerima nama budaya standar (en-US, fr-FR, de-DE, ja-JP, dll.) dan mengontrol bagaimana angka, tanggal, dan mata uang diformat saat mesin menulis. JSON nilai menjadi Excel sel. Atur agar sesuai dengan lokal yang diharapkan penerima Anda. Nilai defaultnya adalah en-US.
Yang terkait Awalan Kutipan untuk Gaya latar membawa Excel Menambahkan flag awalan kutipan ke nilai yang diberi gaya jika ada, sehingga nilai yang terlihat seperti angka tetapi seharusnya ditampilkan sebagai teks (nomor rekening, kode pos dengan angka nol di depan) tetap berupa teks.
Pola umum
Item baris faktur dengan baris total.
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)
Ketika mesin memperluas baris 5 untuk setiap item, rentang SUM di baris 6 juga meluas karena letaknya di bawah baris penanda.
Tabel perbandingan berdampingan (horizontal)
A1: Metric B1: &=Months.Name(horizontal)
A2: Revenue B2: &=Months.Revenue(horizontal)
A3: Expenses B3: &=Months.Expenses(horizontal)
Setiap bulan menjadi kolom baru di sebelah kanan B, bukan baris baru di bawahnya.
Label yang sudah dicetak (noadd)
Saat Anda memiliki 24 sel label yang sudah diformat sebelumnya pada sebuah lembar kerja dan Anda ingin data mengalir ke dalamnya tanpa menambahkan baris:
&=Labels.Name(noadd)
&=Labels.Address(noadd)
Mesin tersebut mengisi 24 baris yang ada secara berurutan dan secara diam-diam memotong data apa pun yang melebihi kapasitas yang ada.
Daftar periksa singkat
&=&= pada sel A1 (atau sel mana pun). Nilai lainnya diperlakukan sebagai nilai sel normal.Nama Barang dalam templat TIDAK cocok nama item di dalam JSON.