C#'de PowerPoint Dosyaları Nasıl Görüntülenir
Iron Software ekibi tarafından yazılmıştır
Excel'den Microsoft Word'a veri birleştirme, her belgeyi manuel olarak düzenlemeden kişiselleştirilmiş mektuplar, etiketler veya e-postalar oluşturmanıza olanak tanır. Fikir basittir: Tüm alıcı detaylarınızı içeren tek bir Excel elektronik tablosu tutar, bu tabloyu bir Word veri birleştirme şablonuna bağlar, kişiselleştirilmiş verilerin görünmesi gereken yerlere birleştirme alanları ekler ve Word'e her veri satırı için ayrı, özelleştirilmiş bir kopya üretmesini sağlarsınız. Saatlerce sürecek manuel düzenleme, mailing listenizden her isim, adres ve detayı doğru bir şekilde çekerek dakikalar içinde tamamlanır.
Veri birleştirme süreci, her başarılı çalışmada üç belge içerir: verileri içeren Excel dosyası, mektup veya etiketin yer aldığı Word ana belgesi ve sonunda üretilen birleştirilmiş belge. Başarılı bir veri birleştirme, temiz bir elektronik tablo, doğru formatlanmış veriler ve doğru pozisyonda yerleştirilmiş birleştirme alanlarına sahip bir Word şablonu gerektirir. Posta kodları, para birimleri ve tarihler gibi özel veri türleri, veri birleştirmeye başlamadan önce Excel'de doğru formatta olmalı ve tüm veriler Word'ün düzgün bir şekilde okuyabilmesi için Excel çalışma kitabının ilk sayfasında bulunmalıdır.
Bu makale, Excel elektronik tablosunu hazırlama, posta sekmesinde veri kaynağı olarak bağlama, birleştirme alanları ekleme, sonuçları önizleme, birleştirmeyi tamamlama ve e-posta mesajlarını yönlendirme adımlarını açıklar. Veri birleştirmeden önce Excel veri kaynaklarını programatik olarak oluşturmak veya doğrulamak isteyen geliştiriciler, IronXL ile .NET'te Microsoft Office yüklü olmadan Excel dosyası oluşturma ve formatlama işlemine dair bir bölüm bulacak.
Adım 1: Excel Elektronik Tablonuzu Hazırlayın
Temiz ve iyi yapılandırılmış bir Excel elektronik tablosu, güvenilir bir Word veri birleştirmenin temelidir. Word'u açmadan önce, verileriniz ve birleştirme alanlarınız arasındaki eşleşmenin tamamen Excel dosyasının nasıl ayarlandığına bağlı olduğunu unutmayın.
İlk satırda sütun başlıkları. Excel elektronik tablonuzda, Ekenecek her öğe için bir sütun olduğundan emin olun; örneğin, Ad, Adres, Şehir, Eyalet ve Posta Kodu. İlk satırdaki sütun adları, Word'de kullanılabilir birleştirme alanları haline gelir, bu yüzden benzersiz, açık bir şekilde etiketlenmiş ve üstlerinde boş satır olmadan yerleştirilmiş olmaları gerekir. İlk satırın benzersiz başlıklar içerdiğinden ve üstünde boş satır olmadığından emin olun, çünkü Word ilk satırı kullanılabilir birleştirme alanlarını tanımlamak için kullanır.
Her veri parçası için ayrı sütunlar kullanın. Adı, soyadı ve hitap biçimini birleştirmek yerine ayrı sütunlarda saklayın. Bu, ileride hitap cümlesi ve adres bloğu oluştururken size tam kontrol sağlar. Word'de veri birleştirmeden önce Excel dosyanızın gerekli tüm bilgileri içerdiğinden emin olun; örneğin, ad, soyad, hitap, posta kodları ve adresler.
Posta kodlarını ve zip kodlarını metin olarak formatlayın. Excel verilerinizi veri birleştirme için hazırlarken, ZIP kodları veya posta kodları için sütunun metin olarak formatlandığından emin olun, böylece sıfırların kaybolmasını önleyebilirsiniz. 02101 gibi bir posta kodu, hücre bir sayı olarak biçimlendirilirse sessizce baştaki sıfırını düşürecektir, bu da her birleşik mektupta yanlış biçimlendirilmiş bir sonuç çıkmasına sebep olur.
Tüm verileri ilk sayfada tutun. Excel çalışma kitabının ilk sayfasında tüm verilerin bulunması, başarılı bir veri birleştirme için şarttır. Çalışma kitabınızda birden fazla sekme varsa, Word yalnızca ilk sayfayı okuyacaktır, bu yüzden tüm veri girişlerinizi Dosya1'e taşıyın.
Excel dosyasını kaydedin ve kapatın. Excel dosyalarının Microsoft Word ile veri birleştirmede düzgün çalışması için kaydedilmesi ve kapatılması gerekir. Açık bir Excel dosyası, Word veri alırken bağlantı hatalarına sebep olabilir.
Mümkün olduğunca sütun başlıklarını kısa ve boşluklardan kaçınacak şekilde tutun. "AdınİlkHarf" ve "ZipKod" gibi sütun adları, boşluk veya özel karakter içeren adlara kıyasla eşleştirme alanları diyalog kutusunda sorun çıkarma olasılığı daha düşük.

Adım 2: Word'ü Açın ve Veri Birleştirmeye Başlayın
Excel dosyasını hazır ettikten sonra, Microsoft Word'ü açın ve ana belgenizi oluşturun veya açın. Eğer kullanmak istediğiniz bir belge şablonunuz varsa, boş bir sayfa yerine şimdi açın. Bu, her alıcıya gönderilecek olan mektup, etiket veya e-posta şablonudur.
Adım Adım Veri Birleştirme Sihirbazını Kullanma:
Microsoft Word'de Veri Birleştirme Sihirbazına başlamak için Posta sekmesine, ardından Veri Birleştirmeye Başla üzerine, ve alttaki açılır ok ile Adım Adım Veri Birleştirme Sihirbazı üzerine tıklayın. Veri Birleştirme Sihirbazı, kullanıcıların veri birleştirme belgeleri oluşturmasına yardımcı olmak için bir kılavuz sağlar ve süreci daha kolay gezinilebilir hale getirir. Ekranın sağ tarafında bir panel açılır ve Word sizi dizili her aşamada yönlendirir.
Veri Birleştirme Sihirbazını kullanırken, kullanıcılar oluşturmak istedikleri belge türünü, mektuplar veya etiketler gibi, seçebilir ve ardından veri kaynaklarına bağlanmak ve birleştirme alanlarını eklemek için adımları takip edebilir. Bu kılavuz için, belge türü olarak Mektuplar seçin.
Posta sekmesini doğrudan kullanma:
Daha deneyimli kullanıcılar, veri birleştirmeye başlama grubundan Posta sekmesinde veri birleştirmeye başla'yı tıklayıp, sihirbaz olmadan doğrudan belge türünü seçebilir. Her iki yaklaşım da aynı sonuca ulaşır.

Adım 3: Excel Dosyanızı Veri Kaynağı Olarak Bağlayın
Belge türü ayarlandığında, bir sonraki adım artık alıcı bilgilerini çekmek için Excel dosyanızı bağlamaktır.
- Posta sekmesinde, veri birleştirmeye başla grubunda Alıcıları Seç'e tıklayın.
- Açılır ok üzerinden, Var Olan Bir Liste Kullan'ı seçin. Veri birleştirme için bir Word belgesine Excel elektronik tablonuzu bağlamak için, Posta sekmesindeki Alıcıları Seçme seçeneği altında Var Olan Bir Liste Kullan'ı seçmeniz gerekir.
- Bir dosya gezgini açılır. Excel dosyanızın bulunduğu klasöre gidin, seçin ve Aç'a tıklayın.
- Çalışma kitabındaki sayfaların listelendiği bir diyalog kutusu ortaya çıkar. Sayfa1'i (verilerinizi içeren hedef sayfa) seçin ve Tamam'a tıklayın.
Word, artık Excel verilerinize var olan liste olarak bağlıdır. Var olan liste seçenekleri, xlsx dosyasını bilgisayarınızın herhangi bir yerinden bulup açmanıza olanak tanır. Bu noktada, Word çalışma kitabının ilk sayfasındaki bilgileri ithal etmeye başlar ve her sütun başlığını bir birleştirme alanı olarak kullanılabilir hale getirir.
Word, Excel dosyasını doğru okuyamazsa, dosyanın kapalı, xlsx formatında kaydedilmiş ve tüm sütun başlıklarının Sayfa1'in ilk satırında olup olmadığını ve üstlerinde boş bir satır bulunmadığını kontrol edin.
Bağlandıktan sonra, Posta sekmesinde alıcı listesi düzeni seçeneğine tıklayarak posta birleştirme alıcıları panelini açabilirsiniz. Bu, elektronik tablonuzdaki her satırı ayrı bir giriş olarak gösterir. Belirli alıcıları seçmemek, listeyi sıralamak veya birleştirmeye hangi satırların dahil edileceğini filtrelemek için kullanabilirsiniz. Devam etmeden önce, Word'ün tüm veri girişlerinizi doğru bir şekilde okuduğundan emin olmak için alıcı listesini dikkatlice gözden geçirin.

Adım 4: Belgenize Birleştirme Alanları Ekleyin
Veri kaynağınız bağlandığında, artık Word belgesine kişiselleştirilmiş verilerin görünmesini istediğiniz yerlere veri birleştirme alanları yerleştirebilirsiniz.
Adres Bloğunu Kullanarak:
Adres bloğu, ad, şirket ve posta adresini tek bir alan içinde birleştiren bir kısayoldur. Posta sekmesindeki alan ekleme grubunda Adres Bloğu'na tıklayın. Ad ve adresin nasıl biçimlendirileceğini yapılandırabileceğiniz bir diyalog kutusu açılır. Herhangi bir alan eşleşmezse, yan yana olan alanlar adılarınından otomatik olarak eşleşen bir alanı tıklayın. Alanlarını aynı isme direk eşleme listesine yerleştirmeyi sağlar ve yan yana olan sütun ismini manuel olarak içsel Word'ün kullandığı alan isimleriyle değiştirilebilir.
Bağımsız Birleştirme Alanlarını Kullanarak:
Düzen ve biçimlendirme üzerinde tam kontrol için birleştirme alanlarını teker teker yerleştirin. Bir alanın yerleştirileceği yerde imlecinizi konumlandırın, ardından alan ekleme grubunda Birleştirme Alanları Ekle'yi tıklayın. Excel elektronik tablonuzdan her sütun başlığının listelendiği bir açılır liste vardır. İmleç konumunda yerleştirmek istediğiniz alan adını tıklayın. Eklenmesi gereken yaygın alanlar şunlardır:
- Adres bloğunun başına "Sayın " "Ad" "Soyad" için
- Alt satırda "Şirket"
- Ardından "Adres", "Şehir", "Eyalet" ve "ZipCode" ile
- "Sayın " "Soyad" gibi bir hitap satırı
Hitap Cümlesini Kullanarak:
Önceden biçimlendirilmiş bir hitap satırı eklemek için Posta sekmesinde hitap satırı seçeneğine tıklayın. Diyalog kutusu, hitap satırının biçimlendirilişini seçmenize olanak tanır (Sayın Bay Smith gibi), ve alıcılarınızın ad alanları boşsa yedekleme oluşturmanıza olanak tanır.
Aralıksız bir şekilde devam eden ardışık birleştirme alanları arasında her zaman otomatik bir boşluk ekleyin. Word, alanlar arasında boşluk eklemez, bu yüzden ""Ad""Soyad"" "JohnSmith" alanlarına bir boşluk karakteri eklemeden "JohnSmith" gibi görünür.

Adım 5: Son Birleştirmeyi Tamamlamadan Önce Sonuçları Önizleyin
Dokümanınıza birleştirme alanları ekledikten sonra, birleştirilmiş verilerin nasıl görüneceğini görmek için Posta sekmesindeki Sonuçları Önizle seçeneğini tıklayarak yapılan sonuçları önizleyebilirsiniz.
Sonuçları Önizle'yi Posta sekmesinde tıklayın. Word, birleştirme alanlarının her biriyle Excel elektronik tablonuzun ilk satırında karşılaştırma yapar. Kayıtlar arasında geçiş yapmak ve her alıcının verilerinin doğru görünün olup olmadığını kontrol etmek için Sonuçları Önizleme grubundaki sol ve sağ okları kullanın. Bu, eksiksiz bir birleştirme taahhüt etmeden önce alıcı detaylarının doğru olduğundan emin olmanızı sağlar.
Özellikle şunları kontrol edin:
- Hitap satırının doğal bir şekilde okunduğundan emin olun ("Sayın Bay Smith," değil "Sayın Bay Smith ,")
- Adres bloğunun her satırda doğru biçimlendiğini, uzun şirket isimlerini de içeren hallerini kontrol edin
- Posta kodlarının ve zip kodlarının uygulanabilir durumda sıfırlarla gösterildiğinden emin olun
- Sayfanın üstündeki mevcut kayıt sayacı beklediğinizle eşleşiyor
E-posta mesajınıza veya mektubunuza birleştirme alanları ekledikten sonra, birleşim sürecini tamamlamadan önce içeriğin doğru göründüğünü doğrulamak için sonuçları önizleyin. Kaydırma oklarıyla birden fazla kayıtta, sadece ilk kayanıkta gezinmek için sol ve sağ okları kullanın.

Adım 6: Veri Birleştirme İşlemini Tamamlayın ve Belgelerinizi Çıktılayın
Önizleme onaylandığında, artık birleştirme işlemini gerçekleştirin ve nihai çıktıyı üretin.
Yeni bir belgeye birleştirme (önerilen):
Posta sekmesinde Birleştirmeyi Bitir ve Birleştir düğmesini tıklayın, ardından açılır oklu menüden Bireysel Dokümanları Düzenle'yi seçin. Tüm kayıtları birleştirip birleştirmemeyi, mevcut kaydı veya bir aralığı soran bir diyalog kutusu açılır. Tümü'nü seçin ve Tamam'a tıklayın. Word, her alıcı için ayrı bir sayfa olarak tüm bireysel belgeleri içeren yeni bir belge oluşturur. Bu, birleştirilen belgeyi yazdırmadan veya gönderden önce gözden geçirmenizi sağladığından en güvenli yaklaşımdır.
Birleşik belgeyi saklamak için inceledikten sonra kaydetmeyi seçin. Ayrıca, Dosya > Farklı Kaydet seçeneğini kullanarak yeniden adlandırmayı ve şablonunuz ve veri kaynağınızla birlikte saklamayı da seçebilirsiniz.
Doğrudan yazdırma:
Birleştirme sonuçlarını bir ara dosya oluşturmadan doğrudan yazıcıya göndermek için Birleştirmeyi Bitir ve Birleştir > Belgeleri Yazdır seçeneğine tıklayın. Belgeleri hemen yazdırmanız gerektiğinde ve önce bireysel belgeleri inceleme veya arşivleme gereği duymuyorsanız bu faydalıdır.

Adım 7: Posta Etiketleri Oluşturun
Excel elektronik tablosunu veri kaynağı olarak kullanarak posta etiketleri oluşturmak için aynı veri birleştirme süreci mektuplar için kullanılan adımları takip eder.
- Posta sekmesinde, Veri Birleştirmeye Başla > Etiketler seçeneğine tıklayın.
- Etiket Seçenekleri diyalog kutusunda, bilgisayarınızdaki fiziksel etiket nesneleriyle eşleşen etiket sağlayıcısını ve ürün numarasını seçin.
- Alıcıları Seç > Var Olan Bir Listeyi Kullan seçeneğine tıklayın ve aynı Excel dosyasına bağlanın.
- Etiket alanlarına adres alanlarını yerleştirmek için Birleştirme Alanları Ekle seçeneğine tıklayın. Her bir etiket alanında ayrı satırlara "Ad", "Soyad", "Adres", "Şehir", "Eyalet ve", ve "ZipCode" ekleyin.
- Sayfadaki tüm etiketlere düzeni kopyalamak için Etiketleri Güncelleştir seçeneğine tıklayın.
- Önizleyin, ardından bireysel etiketler üretmek üzere işlemi tamamlayın ve yazdırmaya hazır hale getirin.
Adım 8: Mail Merge ile E-posta Mesajları Gönderin
Ayrıca Mail Merge, doğrudan Word'den kişiselleştirilmiş e-posta mesajları gönderebilir.
Mail merge aracılığıyla e-posta gönderme, Outlook'un açık ve varsayılan e-posta programı olarak ayarlanmış olmasını gerektirir. Bu hem klasik Outlook hem de yeni Outlook için geçerlidir. Başlatmadan önce bunun yapılandırıldığından emin olun.
Bir e-posta birleştirme kurarken, herkesin sadece e-posta adresleri sütunu bilgisini içermesini hep sağladıysanız, bu alandanye e-postalarını kişiselleştirilmiş gönderilir. Demo elektronik tablosunda, bu e-posta adresi sütunudur.
- Posta sekmesinde, Veri Birleştirmeye Başla > E-Posta Mesajları seçeneğine tıklayın.
- Word belgesinde e-posta içeriğinizi yazın, ardından hitap cümlesi ve diğer kişiselleştirilmiş içerik için birleştirme alanları ekleyin, bir mektupta yaptığınız gibi.
- Alıcıları Seç > Var Olan Bir Listeyi Kullan seçeneğine tıklayın ve Excel dosyanıza bağlanın.
- E-posta mesajlarını birleştirme işlemi kullanarak kişiselleştirmek için, ana belgeye adlar ve adresler gibi birleştirme alanlarını ekleyin, böylece bunlar mailing listenizden karşılık gelen verilerle değiştirilecektir.
- Birleştirmeyi Bitir ve Birleştir > E-posta Gönder seçeneğine tıklayın.
- Diyalog kutusunda, To alanını e-posta adresi sütuna ayarlayın (EmailAddress), bir konu satırı ekleyin ve uyumluluğunuz için posta biçimi olarak HTML'i seçin.
- Tamam buttonuna tıklayın. Word, Outlook üzerinden her alıcıya birer kişiselleştirilmiş e-posta gönderir. Bir alternatif veri kaynağı olarak Excel yaprağı yerine Outlook kişileri de kullanılabilir, eğer kişi listeniz orada saklanıyorsa.
E-posta birleştirmeyi tamamladıktan sonra, mesajların gönderildiğini doğrulamak için Outlook'un Gönderilen Öğeler klasörünü kontrol edin. Listedeki her e-posta, bir alıcı başına ayrı bir gönderilmiş mesaj olarak görünür.

Yaygın Sorunlar ve Sorun Giderme
Word Excel dosyasını bulamıyor veya bağlantıda hata veriyor
Excel dosyasının kaydedildiğini ve bağlantıyı denemeden önce tamamen kapatıldığını kontrol edin. Kaydedilmemiş değişikliklere sahip açık bir çalışma kitabı bağlantıyı engelleyebilir. Ayrıca, dosyanın .xlsx olarak kaydedilmiş olduğundan emin olun, .xls veya başka bir format değil.
Posta kodları veya zip kodları baştaki sıfırları kaybediyor
Bu gerçekleşirse, bunun nedeni Excel'de ZipCode sütununun metin yerine sayı olarak formatlanmış olmasıdır. Elektronik tabloyu açın, ZipCode sütununu seçin, metin olarak biçimlendirin, ardından baştaki sıfırlarını kaybeden değerleri yeniden girin. Excel dosyalarının Word'de yeniden bağlanmadan önce tekrar kaydedilmesi ve kapatılması gerekir.
Birleştirme alanları veri yerine alan kodları gösteriyor (ör. {MERGEFIELD Adı})
Alt + F9 tuşlarına basarak, Word'de alan kodu gösterimi ve alan sonucu gösterimi arasında geçiş yapabilirsiniz. Bu bir görüntüleme ayarıdır ve birleştirme işlemini etkilemez.
Eşleşme alanları diyalog kutusu eşlenmemiş alanlar gösteriyor
Bu, sütun adlarınızın adres bloğunu beklediği adlarla eşleşmediğinde meydana gelir. Posta sekmesinde Alanları Eşle'ye tıklayın ve her sütun adını karşılık gelen Word alanıyla manuel olarak eşleyin. Örneğin, "ZipCode" sütununuzu Word tanımazsa "Posta Kodu" alanıyla eşleyin.
Birleştirme çıktısından bazı alıcılar eksik
Posta sekmesinde alıcı düzenleme listesini seçerek, posta birleştirme alıcı panelini açın. Yanlışlıkla seçilmeyen herhangi bir satır olup olmadığını kontrol edin. Ayrıca, Excel yaprağınızdaki veri aralığında boş satırların olmadığından emin olun, çünkü bunlar, Word'ün veri girişlerini listenin sonuna varmadan önce okumayı durdurmasına sebep olabilir.
E-posta birleştirme gönderilirken alıcılar e-postaları almıyor
Birleştirme işlemini çalıştırmadan önce Outlook'un açık ve varsayılan e-posta programı olarak ayarlanmış olduğunu doğrulayın. Mesajların gönderildiğini görmek için Outlook'un Gönderilen Öğeler klasörünü kontrol edin. Yeni Outlook'u kullanıyorsa, bazı sürümlerin klasik Outlook'a kıyasla e-posta birleştirme için sınırlı destek sağladığını unutmayın.
Hızlı Referans: Excel'den Word'e Mail Merge
| Görev | Nerede Bulunabilir | Notlar |
|---|---|---|
| Posta birleştirmeye başla | Posta sekmesi > Posta Birleştirmeye Başla | Mektuplar, Etiketler veya E-posta Mesajları Seç |
| Excel dosyasını bağla | Alıcıları Seç > Var Olan Listeyi Kullan | Dosya kaydedilmeli ve kapatılmalı |
| Adres bloğu ekleyin | Alan Ekleme grubu > Adres Bloğu | Sütun eşleme için Alanları Eşleştirmeyi kullanın |
| Bireysel alanları ekleyin | Alan Ekleme grubu > Birleştirme Alanları Ekle | Birleştirme alanı ad başına bir alan |
| Hitap satırı ekleyin | Posta sekmesi > Hitap Satırı | Diyalog kutusunda hitap satırı biçimini seçin |
| Veri birleştirmeyi önizleme | Posta sekmesi > Sonuçları Önizle | Kayıtları kontrol etmek için sağ ve sol okları kullanın |
| Birleştirmeyi dosyaya tamamla | Birleştirmeyi Bitir ve Birleştir > Bireysel Belgeleri Düzenle | Tüm sayfaları içeren yeni belge oluşturur |
| Belgeleri yazdır | Birleştirmeyi Bitir ve Birleştir > Belgeleri Yazdır | Doğrudan yazıcıya gönderir |
| E-posta mesajları gönder | Birleştirmeyi Bitir ve Birleştir > E-posta Gönder | Varsayılan e-posta programı olarak Outlook gerektirir |
| Alıcı listesini düzenle | Alıcı Listesini Düzenle Seç | Satırları filtrele, sırala veya seçme |
Geliştiriciler İçin: IronXL ile Excel Mail Merge Verileri Oluşturun ve Doğrulayın
Uygulamanızdaki Excel veri kaynağı, bir mail merge sürecine besleyen veri kaynağı oluşturursa, dosya kalitesi ve biçimlendirmesi doğrudan birleştirmenin başarılı olup olmadığını belirler. IronXL .NET kütüphanesi, C# geliştiricilerinin sunucu veya geliştirici bilgisayarında Microsoft Office yüklü olmadan Excel dosyalarını programlı olarak oluşturmasına, okumasına ve biçimlendirmesine olanak tanır.
Mail merge veri dosyalarındaki en yaygın başarısızlık noktaları, eksik başlıklar, birleşik hücreler, yanlış yazılmış zip kodları ve veri aralığında boş satırlardır. IronXL size, dosyanın Word'e verilmeden önce tüm hücre, sütun formatı ve veri türleri üzerinde tam programatik kontrol sağlar, bu problemi kaynağında ortadan kaldırır.
Düzgün yapılandırılmış bir posta listesi Excel dosyası oluşturmanın yolu, IronXL kullanarak, tüm sütun başlıklarının Sayfa 1'in ilk satırında olduğu ve ZipCode sütununun metin olarak biçimlendirildiği bir şekilde:
using IronXL;
// Create a new workbook - data must be on the first sheet for mail merge
WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet workSheet = workBook.DefaultWorkSheet;
workSheet.Name = "Sheet1";
// Set column headers in row 1 - these become the merge field names in Word
string[] headers = {
"FirstName", "LastName", "Salutation", "Company",
"Address", "City", "State", "ZipCode", "EmailAddress"
};
for (int i = 0; i < headers.Length; i++)
{
var headerCell = workSheet.GetCell(0, i);
headerCell.Value = headers[i];
headerCell.Style.Font.Bold = true;
}
// Add recipient data rows
var recipients = new[]
{
new[] { "James", "Carter", "Mr.", "Carter & Associates", "142 Oak Lane", "Chicago", "IL", "60601", "j.carter@carterassoc.com" },
new[] { "Sarah", "Mitchell", "Ms.", "Blue Ridge Consulting", "890 Maple Avenue", "Austin", "TX", "78701", "s.mitchell@blueridge.com" },
new[] { "Robert", "Nguyen", "Mr.", "Nguyen Legal Group", "55 Harbor View", "Seattle", "WA", "98101", "r.nguyen@nguyenlegal.com" },
};
for (int row = 0; row < recipients.Length; row++)
{
for (int col = 0; col < recipients[row].Length; col++)
{
var cell = workSheet.GetCell(row + 1, col);
cell.Value = recipients[row][col];
// Format ZipCode column (index 7) as text to preserve leading zeros
// This prevents postal codes like "02101" from dropping to "2101"
if (col == 7)
{
cell.FormatString = "@"; // @ = text format in Excel
}
}
}
// Save - file must be closed before Word can link to it for mail merge
workBook.SaveAs("mailing-list.xlsx");
using IronXL;
// Create a new workbook - data must be on the first sheet for mail merge
WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet workSheet = workBook.DefaultWorkSheet;
workSheet.Name = "Sheet1";
// Set column headers in row 1 - these become the merge field names in Word
string[] headers = {
"FirstName", "LastName", "Salutation", "Company",
"Address", "City", "State", "ZipCode", "EmailAddress"
};
for (int i = 0; i < headers.Length; i++)
{
var headerCell = workSheet.GetCell(0, i);
headerCell.Value = headers[i];
headerCell.Style.Font.Bold = true;
}
// Add recipient data rows
var recipients = new[]
{
new[] { "James", "Carter", "Mr.", "Carter & Associates", "142 Oak Lane", "Chicago", "IL", "60601", "j.carter@carterassoc.com" },
new[] { "Sarah", "Mitchell", "Ms.", "Blue Ridge Consulting", "890 Maple Avenue", "Austin", "TX", "78701", "s.mitchell@blueridge.com" },
new[] { "Robert", "Nguyen", "Mr.", "Nguyen Legal Group", "55 Harbor View", "Seattle", "WA", "98101", "r.nguyen@nguyenlegal.com" },
};
for (int row = 0; row < recipients.Length; row++)
{
for (int col = 0; col < recipients[row].Length; col++)
{
var cell = workSheet.GetCell(row + 1, col);
cell.Value = recipients[row][col];
// Format ZipCode column (index 7) as text to preserve leading zeros
// This prevents postal codes like "02101" from dropping to "2101"
if (col == 7)
{
cell.FormatString = "@"; // @ = text format in Excel
}
}
}
// Save - file must be closed before Word can link to it for mail merge
workBook.SaveAs("mailing-list.xlsx");
Imports IronXL
' Create a new workbook - data must be on the first sheet for mail merge
Dim workBook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
Dim workSheet As WorkSheet = workBook.DefaultWorkSheet
workSheet.Name = "Sheet1"
' Set column headers in row 1 - these become the merge field names in Word
Dim headers As String() = {
"FirstName", "LastName", "Salutation", "Company",
"Address", "City", "State", "ZipCode", "EmailAddress"
}
For i As Integer = 0 To headers.Length - 1
Dim headerCell = workSheet.GetCell(0, i)
headerCell.Value = headers(i)
headerCell.Style.Font.Bold = True
Next
' Add recipient data rows
Dim recipients = {
New String() { "James", "Carter", "Mr.", "Carter & Associates", "142 Oak Lane", "Chicago", "IL", "60601", "j.carter@carterassoc.com" },
New String() { "Sarah", "Mitchell", "Ms.", "Blue Ridge Consulting", "890 Maple Avenue", "Austin", "TX", "78701", "s.mitchell@blueridge.com" },
New String() { "Robert", "Nguyen", "Mr.", "Nguyen Legal Group", "55 Harbor View", "Seattle", "WA", "98101", "r.nguyen@nguyenlegal.com" }
}
For row As Integer = 0 To recipients.Length - 1
For col As Integer = 0 To recipients(row).Length - 1
Dim cell = workSheet.GetCell(row + 1, col)
cell.Value = recipients(row)(col)
' Format ZipCode column (index 7) as text to preserve leading zeros
' This prevents postal codes like "02101" from dropping to "2101"
If col = 7 Then
cell.FormatString = "@" ' @ = text format in Excel
End If
Next
Next
' Save - file must be closed before Word can link to it for mail merge
workBook.SaveAs("mailing-list.xlsx")
Bir mail merge iş akışına bağlanmadan önce mevcut bir Excel dosyasını okuyup doğrulamak için, IronXL gerekli yapıyı kontrol etmeyi basit hale getirir:
using IronXL;
WorkBook workBook = WorkBook.Load("mailing-list.xlsx");
// Always read from the first sheet for mail merge compatibility
WorkSheet firstSheet = workBook.DefaultWorkSheet;
// Verify the first row contains column headers, not data
string firstHeader = firstSheet["A1"].StringValue;
Console.WriteLine($"First column header: {firstHeader}");
// Read all recipient data rows
foreach (var row in firstSheet.Rows.Skip(1)) // Skip header row
{
string firstName = row[0].StringValue;
string lastName = row[1].StringValue;
string zipCode = row[7].StringValue; // Read as string to preserve leading zeros
Console.WriteLine($"{firstName} {lastName} - ZIP: {zipCode}");
}
using IronXL;
WorkBook workBook = WorkBook.Load("mailing-list.xlsx");
// Always read from the first sheet for mail merge compatibility
WorkSheet firstSheet = workBook.DefaultWorkSheet;
// Verify the first row contains column headers, not data
string firstHeader = firstSheet["A1"].StringValue;
Console.WriteLine($"First column header: {firstHeader}");
// Read all recipient data rows
foreach (var row in firstSheet.Rows.Skip(1)) // Skip header row
{
string firstName = row[0].StringValue;
string lastName = row[1].StringValue;
string zipCode = row[7].StringValue; // Read as string to preserve leading zeros
Console.WriteLine($"{firstName} {lastName} - ZIP: {zipCode}");
}
Imports IronXL
Dim workBook As WorkBook = WorkBook.Load("mailing-list.xlsx")
' Always read from the first sheet for mail merge compatibility
Dim firstSheet As WorkSheet = workBook.DefaultWorkSheet
' Verify the first row contains column headers, not data
Dim firstHeader As String = firstSheet("A1").StringValue
Console.WriteLine($"First column header: {firstHeader}")
' Read all recipient data rows
For Each row In firstSheet.Rows.Skip(1) ' Skip header row
Dim firstName As String = row(0).StringValue
Dim lastName As String = row(1).StringValue
Dim zipCode As String = row(7).StringValue ' Read as string to preserve leading zeros
Console.WriteLine($"{firstName} {lastName} - ZIP: {zipCode}")
Next
IronXL, .NET 6 ve sonrası üzerinde çalışır ve Windows, Linux, macOS, Docker ve Azure ile tamamen uyumludur, bu da sunucu tabanlı uygulamalardan, planlı işlerden veya web API'lerinden mail merge veri dosyaları oluşturmayı mümkün kılar, Microsoft Office'e ihtiyaç duymadan.
Başlarken: PM> Install-Package IronXL.Excel ile NuGet aracılığıyla yükleyin. İhtiyacınız olan tüm işlevsellik ve kredi kartı gerektirmeyen 30 günlük ücretsiz deneme mevcuttur.
Daha fazla okuma:
Sonuç
Excel elektron tablosundan Word veri birleştirmeyle kişiselleştirilmiş mektuplar, posta etiketleri ve e-posta mesajları üretmenin en güvenilir yollarından biridir. Süreç, ilk sayfada doğru biçimlendirilmiş verilerle bir temiz posta listesi oluşturmaya, Veri Birleştirme sekmesi kullanılarak bu dosyayı Word'e bağlamaya, ve birleştirme alanlarını her alıcının verisinin görünmesi gerektiği yere tam olarak yerleştirmek için üç temel adıma ayrılır.
Verdata kaynağı bağlandığında, Word'deki alan ekleme grubu ve adres bloğu araçları işin büyük kısmını halleder. Birleşimi bitirmeden önce sol ve sağ oklarla sonuçları önizleyerek, format sorunlarını, yanlış hizalanmış alanları veya eksik posta kodlarını alıcıya ulaşmadan önce yakalayın. Mail merge tamamlandıktan sonra, birleşmiş belgeyi kaydetmeyi seçebilir, böylece veri kaynağına bağlantı korunur ve yeniden bağlanmayı gerektirmeden gelecekte kullanım imkanı sağlar.
Uygulamalarının mail merge iş akışına besleyen veya dönüştüren Excel verilerini oluşturan veya dönüştüren geliştirme ekipleri için, Office bağımlılıkları olmadan doğru yapıda, uygun formatta elektronik tablo dosyalarını .NET'te oluşturmak için temiz bir API sağlar. Tam özellik setini kendi ortamınızda keşfetmek için ücretsiz bir deneme ile başlayın.
Belirli bir mail merge senaryosu veya beklenildiği gibi gitmeyen bir adım hakkında sorularınız mı var? Aşağıda bir yorum bırakın ya da Excel otomasyonu, veri formatlama ve belge oluşturma konusunda daha fazla yardım için Iron Software blog'unu ziyaret edin.




