Python'da Excel Verisinden Word Belgeleri Oluşturma
Python kullanarak Excel tablolarından Word şablonları oluşturmak, çeşitli profesyonel ve kişisel bağlamlarda verimlilik, doğruluk ve sunumu önemli ölçüde artırabilecek birçok fayda sunar. Otomasyon, özelleştirme ve veri bütünlüğünden faydalanarak, profesyoneller Word belgelerinin gerekli bilgiyi net ve doğru bir şekilde ileten etkili iletişim araçları olmasını sağlayabilirler. Excel'i Microsoft Word biçimine dönüştürebilen bir kütüphane, IronXL Python paketi ve python-docx kütüphanesidir.
Bu makalede, Excel dosyalarından Word belgeleri oluşturmak için gerekli adımlar incelenecektir.
Python'da Excel Verilerinden Word Belgesi Nasıl Oluşturulur
excelToWord.pyadında bir Python dosyası oluşturun.- IronXL ve python-docx paketlerini yükleyin.
- Proje klasörüne bir Excel dosyası oluşturun veya ekleyin.
- IronXL kullanarak Excel belgelerini okuyun.
- python-docx kullanarak Excel verilerini içeren bir Word belgesi oluşturun.
IronXL Nedir?
IronXL for Python, Iron Software tarafından geliştirilen ve geliştiricilerin Python projelerinde Excel dosyalarını (XLS, XLSX ve CSV) oluşturmasına, okumasına ve düzenlemesine olanak tanıyan güçlü bir kütüphanedir. IronXL kullanmanın bazı önemli özellikleri ve avantajları şunlardır:
Temel Özellikler
- Excel Bağımlılığı Yok: IronXL, sunucunuza Microsoft Excel yüklemenizi gerektirmez, bu da Excel'in bulunmadığı sunucu ortamları için idealdir.
- Sezgisel API: IronXL, Excel dosyaları ile çalışma konusunda doğal ve sezgisel bir API sunar, bu da Python projelerinize kolayca entegre edilmesini sağlar.
- Birden Çok Formata Destek: IronXL, XLS, XLSX, CSV ve TSV gibi çeşitli Excel dosya formatlarını destekler.
- Hücre Biçimlendirme: Farklı yazı tipleri, boyutlar, arka planlar, kenarlıklar ve sayı formatları ile hücreleri biçimlendirebilirsiniz.
- Formül İşleme: IronXL, Excel formülleri ile çalışabilir ve bir sayfa düzenlendiğinde yeniden hesaplayabilir.
- Çoklu Platform Uyumluluğu: IronXL, Windows, macOS, Linux, Docker, Azure ve AWS üzerinde çalışır.
Python-docx Nedir
python-docx, Microsoft Word belgeleri (ör. .docx dosyaları) oluşturan, değiştiren ve bunlarla çalışan bir Python kütüphanesidir. Word belgeleriyle etkileşimde bulunmak için basit bir API sağlar ve metin eklemek, biçimlendirmek, tablolar ve resimler eklemek gibi görevleri gerçekleştirmenize olanak tanır.
Ana Özellikler
1. Belgeler Oluşturma
Scratch'tan Word belgeleri oluşturabilir ve paragraflar, tablolar, başlıklar ve daha fazlası dahil olmak üzere içerik ekleyebilirsiniz. Bu paket, bireysel belgeleri düzenlemek için de kullanılabilir.
2. Metin Manipülasyonu
Metin paragrafları ekleyin ve değiştirin. "Çalışma" yöntemiyle metin (örn. kalın, italik, altı çizili vb.) formatlayın (bir paragrafof parça içerisinde farklı stillere sahip metin parçaları). Farklı seviyelerde başlıklar ekleyin ve stillendirin.
3. Tablolar Ekleme
Belirli bir satır ve sütun sayısına sahip tablolar oluşturun. Tablodaki bireysel hücrelere erişin ve değiştirin.
4. Listeler
Önceden tanımlanmış stillerle madde işaretli veya numaralandırılmış listeler oluşturun.
5. Stillerle Çalışma
"Başlık 1", "Normal" gibi önceden tanımlanmış stiller uygulayın. Ayrıca paragraflara veya metinlere özel stiller tanımlayıp uygulayabilirsiniz.
6. Görseller Ekleme
Dokümana belirli konumlara resimler ekleyin. Resimleri, genişlik ve yüksekliklerini belirterek yeniden boyutlandırabilirsiniz.
Ön Koşullar
Koda dalmadan önce, aşağıdaki ön koşullara sahip olduğunuzdan emin olun:
- Python Yüklenmiş: Makinenizde Python yüklü olduğundan emin olun. Resmi Python web sitesinden indirebilirsiniz.
- IronXL Yüklenmiş: IronXL paketini yüklemeniz gerekmektedir. Bunu pip kullanarak yapabilirsiniz.
- Python-docx Yüklü: python-docx paketini yüklemeniz gerekmektedir. Bunu pip kullanarak yapabilirsiniz.
- Excel Dosyası: Verilere sahip bir örnek Excel dosyası oluşturun.
Adım 1: excelToWord.py Adında Bir Python Dosyası Oluşturun
Visual Studio Code gibi sevdiğiniz bir IDE'yi açın ve excelToWord.py adlı bir dosya oluşturun.

Adım 2: IronXL ve python-docx Paketlerini Ekleyin
IronXL ve python-docx paketlerini yüklemek için Pip kullanın.
pip install IronXL python-docxpip install IronXL python-docxAdım 3: Proje Klasörüne Excel Dosyası Ekleyin veya Oluşturun
Örnek Excel dosyasını kod klasörünüze kopyalayın. Dosya aşağıdaki verileri içerir.

Adım 4: IronXL Kullanarak Excel Belgesini Okuyun
IronXL kullanarak Excel belgesini yükleyin ve aşağıdaki kodu kullanarak tüm hücreleri okuyun.
import ironxl
# Import Document class from python-docx to work with Word documents
from docx import Document
# Set the License Key for IronXL (replace 'your license' with your actual license key)
ironxl.License.LicenseKey = "your license"
# Load the Excel workbook and select the first worksheet
workbook = ironxl.WorkBook.Load("sample.xlsx")
sheet = workbook.WorkSheets[0]
# Read data from the Excel sheet
data = []
# Iterate through rows and columns in the Excel sheet
for row in range(0, len(sheet.Rows)):
row_data = []
for col in range(0, len(sheet.Columns)):
cell_value = sheet.GetCellAt(row, col)
print(cell_value) # Print each cell value
row_data.append(cell_value)
data.append(row_data)import ironxl
# Import Document class from python-docx to work with Word documents
from docx import Document
# Set the License Key for IronXL (replace 'your license' with your actual license key)
ironxl.License.LicenseKey = "your license"
# Load the Excel workbook and select the first worksheet
workbook = ironxl.WorkBook.Load("sample.xlsx")
sheet = workbook.WorkSheets[0]
# Read data from the Excel sheet
data = []
# Iterate through rows and columns in the Excel sheet
for row in range(0, len(sheet.Rows)):
row_data = []
for col in range(0, len(sheet.Columns)):
cell_value = sheet.GetCellAt(row, col)
print(cell_value) # Print each cell value
row_data.append(cell_value)
data.append(row_data)Adım 5: Python-docx Kullanarak Bir Word Belgesi Oluşturun ve Excel Verilerini Ekleyin
Word belge oluşturma süreci bir Word belgesi oluşturmayı ve Excel dosyasından okunan verileri eklemeyi içerir.
# Create a new Word document
doc = Document()
# Add a title to the Word document
doc.add_heading('Excel Data Export Using Python Docx', 0)
# Create a table with headers (first row of Excel data)
table = doc.add_table(rows=1, cols=len(data[0]))
hdr_cells = table.rows[0].cells
# Populate header cells with data
for i, header in enumerate(data[0]):
hdr_cells[i].text = str(header)
# Populate table with data from Excel
for row in data[1:]:
row_cells = table.add_row().cells
for i, cell in enumerate(row):
row_cells[i].text = str(cell)
# Save the generated Word document
doc.save("sample.docx")# Create a new Word document
doc = Document()
# Add a title to the Word document
doc.add_heading('Excel Data Export Using Python Docx', 0)
# Create a table with headers (first row of Excel data)
table = doc.add_table(rows=1, cols=len(data[0]))
hdr_cells = table.rows[0].cells
# Populate header cells with data
for i, header in enumerate(data[0]):
hdr_cells[i].text = str(header)
# Populate table with data from Excel
for row in data[1:]:
row_cells = table.add_row().cells
for i, cell in enumerate(row):
row_cells[i].text = str(cell)
# Save the generated Word document
doc.save("sample.docx")Word Belgeleri Oluşturmak için Tam Kod
# Import required libraries
import ironxl
from docx import Document
# Set the License Key for IronXL
ironxl.License.LicenseKey = "your license"
# Load the Excel workbook
workbook = ironxl.WorkBook.Load("sample.xlsx")
sheet = workbook.WorkSheets[0]
# Read data from the Excel sheet
data = []
# Iterate through rows and columns in the Excel sheet
for row in range(0, len(sheet.Rows)):
row_data = []
for col in range(0, len(sheet.Columns)):
cell_value = sheet.GetCellAt(row, col)
print(cell_value) # Print each cell value
row_data.append(cell_value)
data.append(row_data)
# Document generation process
# Create a new Word document
doc = Document()
# Add a title to the Word document
doc.add_heading('Excel Data Export Using Python Docx', 0)
# Create a table in the Word document
table = doc.add_table(rows=1, cols=len(data[0]))
hdr_cells = table.rows[0].cells
for i, header in enumerate(data[0]):
hdr_cells[i].text = str(header) # Add header cells
for row in data[1:]:
row_cells = table.add_row().cells
for i, cell in enumerate(row):
row_cells[i].text = str(cell)
# Save the Word document
doc.save("sample.docx")# Import required libraries
import ironxl
from docx import Document
# Set the License Key for IronXL
ironxl.License.LicenseKey = "your license"
# Load the Excel workbook
workbook = ironxl.WorkBook.Load("sample.xlsx")
sheet = workbook.WorkSheets[0]
# Read data from the Excel sheet
data = []
# Iterate through rows and columns in the Excel sheet
for row in range(0, len(sheet.Rows)):
row_data = []
for col in range(0, len(sheet.Columns)):
cell_value = sheet.GetCellAt(row, col)
print(cell_value) # Print each cell value
row_data.append(cell_value)
data.append(row_data)
# Document generation process
# Create a new Word document
doc = Document()
# Add a title to the Word document
doc.add_heading('Excel Data Export Using Python Docx', 0)
# Create a table in the Word document
table = doc.add_table(rows=1, cols=len(data[0]))
hdr_cells = table.rows[0].cells
for i, header in enumerate(data[0]):
hdr_cells[i].text = str(header) # Add header cells
for row in data[1:]:
row_cells = table.add_row().cells
for i, cell in enumerate(row):
row_cells[i].text = str(cell)
# Save the Word document
doc.save("sample.docx")Kod Açıklaması
Bu Python betiği iki ana görev gerçekleştirir.
1. IronXL Kullanarak Excel Dosyasından Veri Okuma
- Betik, Python'da Excel dosyalarını ele almak için kullanılan IronXL kütüphanesi için bir lisans kurarak başlar.
- Daha sonra bir Excel dosyasını (
sample.xlsx) yükler ve dosyadan ilk çalışma sayfasını seçer. - Betik, çalışma sayfasından verileri okur, tüm satırlar ve sütunlar arasında döngü yapar. Her hücreden değerleri, Excel sayfasındaki her satırın veriler dahilindeki bir alt listeye karşılık geldiği 2D bir listede (verilerde) toplar.
- Hücrelerin değerleri okundukça konsola yazdırılır.
2. Python-docx Kullanarak Bir Word Belgesi Oluşturma
- python-docx kütüphanesi kullanılarak yeni bir Word belgesi oluşturulur.
- Betik, belgenin en üstüne bir başlık kullanarak ("Python Docx Kullanarak Excel Verileri İhracatı") bir başlık ekler.
- Ardından belgede bir tablo oluşturur, tablonun ilk satırı Excel sayfasının ilk satırındaki başlıkları içerir ve sonraki satırlar Excel dosyasından ilgili verileri içerir.
- Son olarak, Word belgesi
sample.docxolarak kaydedilir.
Betik, bir Excel dosyasından (sample.xlsx) veri okur, işler ve yeni bir Word belgesine (sample.docx) tablo şeklinde veri aktarır. Excel sayfasının ilk satırı tablo başlıkları olarak kullanılır ve Excel sayfasındaki her veri satırı, Word belgesine tablo satırı olarak eklenir.
Çıktı

Word Dosyası

IronXL Lisansi (Deneme Mevcut)
IronXL, koda eklenmis gecerli bir lisans dosyasinda calisir. Kullanicilar, lisans sayfasindan kolayca deneme lisansi alabilirler.
IronXL kutuphanesini kullanmadan once, lisans anahtarini asagidaki gibi koddaki bir yere yerlestirin.
ironxl.License.LicenseKey = "Your License Key"ironxl.License.LicenseKey = "Your License Key"Sonuç
Örnek kod, IronXL kullanarak bir Excel dosyasindan veri okumak ve bu verileri python-docx kullanarak bir Word belgesine aktarmak icin etkili bir yöntemi göstermektedir. Surec iki ana adimdan olusur:
- Excel'den Veri Cikarma: Betik bir Excel dosyasini yukler ve ilk calisma sayfasindan verileri cikartir. Satirlar ve sutunlar boyunca yineleyerek hucresel degerleri kolayca yonetilebilecek veya kaydedilebilecek bir listeye toplar.
- Bir Word Belgesi Oluşturmak ve Doldurmak: python-docx kutuphanesi kullanarak, betik yeni bir Word belgesi oluşturur, bir baslik ekler ve cikartilan Excel verilerini bir tabloya dönüştürur. Excel verilerinin ilk satirini otomatik olarak baslik olarak yerlestirir ve kalan satirlari tablo verisi olarak kullanir.
Bu yaklasim, Excel'den Word'e kesintisiz veri aktarimini saglar, bu da rapor oluşturma, veri aktarma veya belge otomasyonu gibi gorevler icin yararlidir. Excel işlemleri icin IronXL ve Word belgesi oluşturma icin python-docx kombinasyonu, bu dosya formatlariyla Python'da calismak icin guclu bir cozum saglar.
Sıkça Sorulan Sorular
Python kullanarak Excel verilerini Word belgesine nasıl dönüştürebilirim?
Python'da IronXL kütüphanesini kullanarak Excel dosyalarını okuyup işleyerek, ardından python-docx kütüphanesini kullanarak bir Word belgesi oluşturup doldurarak Excel verilerini bir Word belgesine dönüştürebilirsiniz.
IronXL ve python-docx birlikte kullanmanın avantajları nelerdir?
IronXL ve python-docx kombinasyonu, Excel'den Word belge dönüşümlerinin kesintisiz entegrasyonunu ve otomasyonunu sağlar. IronXL, Microsoft Excel'e ihtiyaç duyulmayı okuyup düzenleme gibi özellikler sunarken, python-docx Word belgeleriyle çalışmak için basit bir API sağlar.
Microsoft Excel yüklü olmadan Python'da bir Excel dosyasını nasıl okursunuz?
Microsoft Excel yüklü olmadan Python'da bir Excel dosyasını okumak için IronXL kütüphanesi kullanabilirsiniz. IronXL, Excel dosyalarını yüklemenize ve verilerine programlı olarak erişmenize olanak tanır.
Excel verilerinden bir Word belgesi oluşturma süreci nedir?
Süreç, bir Excel dosyasından IronXL kullanarak veri okuma ve ardından bu verileri python-docx ile tablolar veya metin blokları olarak bir Word belgesine ekleme içerir.
IronXL çeşitli Excel dosya formatları ile çalışabilir mi?
Evet, IronXL, XLS, XLSX ve CSV gibi çeşitli Excel dosya formatlarını destekler ve farklı türdeki Excel dosyalarını ele almak için esneklik sağlar.
IronXL ve python-docx'i Python ortamıma nasıl kurabilirim?
IronXL ve python-docx'i pip komutu ile Python ortamınıza, şu komutla yükleyebilirsiniz: pip install IronXL python-docx.
Excel'den Word belge dönüşümlerinin otomasyonu hangi avantajları sağlar?
Excel'den Word belge dönüşümlerinin otomasyonu, manuel görevleri azaltarak, hataları en aza indirerek ve belgeler arasında tutarlı formatlama ve veri bütünlüğü sağlayarak verimliliği, doğruluğu ve sunumu artırabilir.
Excel hücrelerini IronXL kullanarak nasıl stillendirirsiniz?
IronXL, Excel hücrelerini stillendirmek için işlevler sağlar. Bu, hücre görünümünü özelleştirmenize, örneğin yazı tiplerini, renkleri ve kenarlıkları ayarlamanıza olanak tanır. Bu, verileri Word'e aktarmadan önce biçimlendirme için kullanışlı olabilir.









