Excel Şablon Sözdizimini Doldur
PDF4me Excel Doldurmak kullanır Aspose Akıllı İşaretleyiciler birleştirme sözdizimi JSON verileri tasarlanmış bir yapıya dönüştürüyor Excel Çalışma kitabı. İşaretleyici alanlarını şu şekilde yazarsınız: &=Öğeler.ÖğeAdı doğrudan normal hücrelerin içine .xlsx dosyayı gönderin, ardından çalışma kitabını ve bir dosyayı daha gönderin. JSON Motora yük. Bu sayfa, sözdizimi için standart referanstır: işaretleyici biçimi, değiştirici parametreler, çok sayfalı davranış, formül işleme, kültür biçimlendirmesi ve indirilebilir örnek şablon + JSON Uçtan uca çalıştırabileceğiniz dosyalar.
Harici referans: o Excel Populate motoru şu uygulamayı gerçekleştirir: Aspose.Cells Akıllı İşaretleyiciler özelliğiAspose dokümantasyonu, dilbilgisi konusunda yetkili kaynaktır; bu sayfa ise bu dokümanı özetleyerek sizin için sunar. PDF4me kullanıcıları ekler ve ekler JSON-Özellikle şu amaçla kullanılan yük kuralları PDF4me API.
Örnek dosyalar
Örnek şablonları ve eşleşen dosyaları indirin. JSON Bu sayfada kullanılan veri dosyalarını doğrudan sürükleyip bırakın. PDF4me Excel Doldurmak REST uç nokta, Power Automate eylem veya entegrasyon platformlarından herhangi biri.
&=Öğeler.* Sheet1 örneğinde kullanılan işaretleyiciler.KökVeri.Öğeler[] Açıklama, miktar, birim fiyat, indirim ve fiyat bilgileriyle birlikte.Öğeler[] Sıkı kuralları uygulamak için dize değerleriyle JSON Dizeler ayarı.Ürünler[]) üçüncü sayfa için.Çalışanlar[]Personel listesini doldurmak için.Biçim seçin
Temel Akıllı İşaretleyici, ile başlayan tek bir hücre değeridir. &= (&-eşittir) işaretinden sonra veri kaynağı adı, nokta ve alan adı gelir.
&=DataSource.FieldName
İşaretleyiciyi ilk kaydın yerleşmesi gereken hücreye yerleştirin. Bir değer sağladığınızda JSON dizi altında DataSourceMotor, ilk kaydı o hücreye yazar ve her ek kayıt için altına yeni satırlar ekler. Aynı satırda işaretleyiciler içeren bitişik hücreler birlikte genişletilir, böylece her kayıt hizalı kalır.
Minimal örnek
Şablon (Sayfa 1) template.xlsxBu tam olarak şudur:
| A | B | C |
|---|---|---|
| Ürün Adı | Miktar | Birim Fiyatı |
&=Items.ItemName | &=Items.Qty | &=Items.UnitPrice |
JSON yük (sheet23-data.json(eşleşen örnek):
{
"Items": [
{ "ItemName": "A123", "Qty": "55", "UnitPrice": "3.05" },
{ "ItemName": "B456", "Qty": "20", "UnitPrice": "5.50" },
{ "ItemName": "C789", "Qty": "10", "UnitPrice": "12.99" }
]
}
Doldurulmuş çıktı: Motor, ilk kaydı 2. satıra yazar, altına iki ek satır ekler ve sütunları bitişik işaretleyici konumuna göre hizalar. 1. satırdaki başlık satırı yerinde kalır.
Değiştirici parametreler
Akıllı İşaretleyiciler, düzeni ve davranışı kontrol etmek için alan adından hemen sonra parantez içinde virgülle ayrılmış bir parametre listesi kabul eder.
&=DataSource.FieldName(parameter1, parameter2, ...)
En kullanışlı parametreler:
| Parametre | Ne işe yarar? | Örnek |
|---|---|---|
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) |
Parametreler birleştirilebilir: &=Items.ItemName(dynamic, copystyle) Dinamik bir aralık oluşturur VE satır stilini eklenen her kayda kopyalar.
İç içe geçmiş veri kaynakları
Ne zaman JSON Diziyi bir üst nesne altına sarar, noktalı bir yol kullanarak ona erişir. Fatura sayfa template.xlsx Bu, tipik bir örnektir. 2. satırdaki işaretleri şu şekilde okunur: RootData içine 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
Eşleşen yük şudur: 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 }
]
}
}
İçerideki kesme işaretine dikkat edin. "Mouse's"Akıllı İşaretleyiciler varsayılan olarak tırnak içinde belirtilen dize temel öğelerini korur ( StrictJsonStrings varsayılan ayarları doğru). Bunu şuna ayarlayın: YANLIŞ Motorun tırnak içinde belirtilen sayısal veya tarih dizelerini yazılı biçime dönüştürmesini istediğinizde Excel Birleştirme işlemi sırasında hücre değerleri.
Excel Tablolar ve yapılandırılmış referanslar
Fatura sayfası template.xlsx Akıllı İşaretleyiciler modelinin güçlü bir örneğini gösterir: işaretleyici satırı bir öğenin içinde yer alır. Excel Masa (adı SimpleInvoiceFormül hücreleri, A1 adresleri yerine yapılandırılmış referans yoluyla Tablo sütunlarına referans verir ve Akıllı İşaretleyiciler yeni satırlar ekledikçe Tablo aralığı otomatik olarak genişler.
Fatura sayfasından örnek bir formül hücresi:
=IFERROR(IF(SimpleInvoice[[#This Row],[Unit price]]="","",
(SimpleInvoice[[#This Row],[Qty]] * SimpleInvoice[[#This Row],[Unit price]])
- SimpleInvoice[[#This Row],[Discount]]
), "")
Tablo referansının dışında kalan toplama hücreleri, tüm sütunları kapsar:
G7: =SUM(SimpleInvoice[Price]) // Invoice subtotal
G9: =IFERROR(G7*G8,"") // Sales tax (G8 is rate)
G11: =SUM(G2:G4)-G10 // Total (G10 is deposit)
Bunun önemi şu: Motor, işaretleyici satırını 1 kayıttan N kayda genişlettiğinde, SimpleInvoice Tablo aralığı otomatik olarak genişler. SUM(SimpleInvoice[Price]) Sağ sütunu toplamaya devam eder ve satır başına formüller, her kayıt için ayrı ayrı formül yazmanıza gerek kalmadan aşağı doğru yayılır.
Çok sayfalı şablonlar
Excel Populate fonksiyonu, tek bir çağrıda bir çalışma kitabındaki her sayfayı doldurabilir veya birleştirmeyi bir alt kümeyle sınırlandırabilir. Çalışma Sayfası Dizinleri parametre (1 tabanlı, virgülle ayrılmış). template-3-sheets.xlsx Örnek üç yapraktan oluşmaktadır. tam olarak bu sırayla:
| Konum | Sayfa adı | Kullanılan işaretleyiciler | Örnek 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 |
Üç sayfayı da tek bir çağrıda doldurmak için üçünü birleştirin. JSON Veri yüklerini, en üst düzey anahtarları işaretleyicilerdeki veri kaynağı adlarıyla eşleşen tek bir nesneye dönüştürür:
{
"Items": [ { "ItemName": "A123", "Qty": "55", "UnitPrice": "3.05" }, ... ],
"Employees": [ { "EmployeeName": "John Doe", "Department": "IT", "Salary": "5000" }, ... ],
"Products": [ { "ProductName": "Laptop", "Category": "Electronics", "Stock": "15" }, ... ]
}
Yalnızca Çalışanlar sayfasını doldurmak için, aşağıdaki komutu kullanın. Worksheet Indexes = 2 Eylem çağrısında. 1 ve 3 numaralı pozisyonlar dokunulmadan bırakılır. Yalnızca Öğeler + Ürünler'i doldurmak için şunu geçin: 1,3.
Formül işleme
Akıllı İşaretleyiciler yerel sistemlerle işbirliği yapar. Excel Formüller. İki önemli kural:
- Statik formüller genişlemeden sonra da geçerliliğini korur. Formül gibi
=B2*C2Genişletilen satırda, hücre referansları her zamanki gibi ayarlanarak, doldurulmuş her satıra kopyalar uygulanır. Excel Bu şekilde. Formül hücresi için bir işaretleyiciye ihtiyacınız yok. - Yeniden hesaplama varsayılan olarak açıktır. O
Calculate FormulasBu ayar, veri doldurulduktan sonra çalışma kitabının yeniden hesaplanıp hesaplanmayacağını kontrol eder. Böyle bırakın. doğru Toplamları ve özetleri açtığınız anda doğru olan bir çalışma kitabı almak için bunu ayarlayın. YANLIŞ Daha sonra kendi işlem hattınızda yeniden hesaplama yapmayı planladığınızda ve maliyetten kaçınmak istediğinizde.
Kültür ve yerellik biçimlendirmesi
O Culture & Language Settings parametre standart bir kültür adını kabul eder (en-US, fr-FR, de-DE, ja-JP(vb.) ve motor yazarken sayıların, tarihlerin ve para birimlerinin nasıl biçimlendirileceğini kontrol eder. JSON değerleri içine Excel Hücreler. Alıcılarınızın beklediği yerel ayarla eşleşecek şekilde ayarlayın. Varsayılan değer şudur: en-US.
İlgili Stile Önek Ekleme ayar taşıyor Excel Mevcut olduğunda, biçimlendirilmiş değerlere tırnak işareti öneki eklenir; böylece sayı gibi görünen ancak metin olarak görüntülenmesi gereken değerler (hesap numaraları, başında sıfır bulunan posta kodları) metin olarak kalır.
Ortak kalıplar
Fatura kalemleri ve toplam satırları
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)
Motor her öğe için 5. satırı genişlettiğinde, 6. satırdaki TOPLAM aralığı da onunla birlikte genişler çünkü bu aralık işaretleyici satırların altında yer alır.
Yan yana karşılaştırma tablosu (yatay)
A1: Metric B1: &=Months.Name(horizontal)
A2: Revenue B2: &=Months.Revenue(horizontal)
A3: Expenses B3: &=Months.Expenses(horizontal)
Her ay, B harfinin altına yeni bir satır eklemek yerine, B harfinin sağına yeni bir sütun olarak eklenir.
Önceden basılmış etiketler (ekleme yok)
Bir sayfada 24 adet önceden biçimlendirilmiş etiket hücresi olduğunda ve verilerin yeni satırlar eklemeden bu hücrelere akmasını istediğinizde:
&=Labels.Name(noadd)
&=Labels.Address(noadd)
Motor, mevcut 24 satırı sırayla doldurur ve sığmayan kayıtları sessizce siler.
Hızlı kontrol listesi
&=&= A1 hücresinde (veya herhangi bir hücrede). Bunun dışındaki her şey normal hücre değeri olarak kabul edilir.Ürün Adı Şablondaki bilgiler eşleşmiyor. öğeAdı içinde JSON.