Exceldeki bir listeyi word dosyasına aktarma

Katılım
1 Nisan 2009
Mesajlar
32
Excel Vers. ve Dili
Excel
Merhabalar
Evet haklıymışsınız Missingi iptal edince çalıştı.
Çok güzel anlatmışsınız elinize sağlık ama benim programcılık bilgim yok ve Exceldeki verileri worde aktarmak istiyorum. Sürekli davetler gönderiyoruz ve bunu exceldeki tablolardaki bilgileri her birini bir word sayfasına aktarıp çıktısını almam gerekiyor. Bana ekteki dosyaları o şekle çevirebilirseniz çok sevinirim. İlginizden dolayı şimdiden teşekkür ederim.
Saygılarımla
 

Ekli dosyalar

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Merhaba,
Eklediğim klasörü RAR'dan çıkarın. Veri olan satırın herhangi birine çift tıkladığınızda sablon isimli word dosyası açılacak ve bilgileriniz ilgili yerlere eklenecek. Sonrasında farklı kaydet ile geçici bir yazdır.doc dosyası oluşturulacak. Sablon dosyasında herhangi bir değişiklik yapmayın, ya da dikkatli biçimde değişiklikler yapın. Yer imlerinden herhangi biri silinirse kodlar doğru çalışmayacaktır.
Kod:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range("b2:I" & [b65536].End(3).Row)) Is Nothing Then Exit Sub
If Target = "" Then Exit Sub
Cancel = True
deg = Array("", "ad_soyad", "unvan", "sayi", "tarih", "yazi1", "yazi2", "gonderen", "g_unvan")
yol = ThisWorkbook.Path
Set wd = CreateObject("word.Application")
wd.Visible = True
wd.Application.Documents.Open yol & "\" & "sablon.doc"
For x = 1 To UBound(deg)
wd.Selection.GoTo What:=-1, Name:=deg(x)
hcr = Cells(Target.Row, x + 1)
If x = 1 Then hcr = Cells(Target.Row, x) & " " & Cells(Target.Row, x + 1)
wd.Selection = hcr
Next
Set WDDoc = wd.ActiveDocument
WDDoc.SaveAs yol & "\" & "yazdır" & ".doc"
End Sub
 

Ekli dosyalar

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,547
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Teşekkürler...
 
Katılım
1 Nisan 2009
Mesajlar
32
Excel Vers. ve Dili
Excel
Elinize sağlık çok güzel olmuş. Yanlız bu liste aşağı doğru uzuyor. Yüzlerce bir listeden oluşuyor bunu aşağı doğru nasıl uzatabilirim.
İlginizden dolayı teşekkür ederim.
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Elinize sağlık çok güzel olmuş. Yanlız bu liste aşağı doğru uzuyor. Yüzlerce bir listeden oluşuyor bunu aşağı doğru nasıl uzatabilirim.
İlginizden dolayı teşekkür ederim.
Exceldeki liste mi worddeki liste mi aşağı doğru uzuyor?
 
Katılım
1 Nisan 2009
Mesajlar
32
Excel Vers. ve Dili
Excel
Şöyle elimde 100 kişilik excel listesi var bunu bu excel dosyasına ekleyip buradan her biri farklı word sayfasında yazdırmam gerekiyor. Gönderdiğiniz excel listesini aşağıya uzatıp listeyi çoğaltıp çift tıkladığımda da böyle bir çıktı alamıyorum.
Teşekkür ederim.
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Şöyle elimde 100 kişilik excel listesi var bunu bu excel dosyasına ekleyip buradan her biri farklı word sayfasında yazdırmam gerekiyor. Gönderdiğiniz excel listesini aşağıya uzatıp listeyi çoğaltıp çift tıkladığımda da böyle bir çıktı alamıyorum.
Teşekkür ederim.
İstediğiniz işlemi yapıyor. Düzenlmeyi ona göre yapmıştım. Çalışmayan dosyanızı ekler misiniz, bir de ben bakayım.
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Syn. valid20,
Eklediğim dosya zaten istediğiniz işlemi yapıyor. 2., 3. 5. vs satırlara veriler ekledim. Çift tıkladığım satır word dosyasına ekleniyor. Çözüm üretebilmem için çalışmadığını söylediğiniz dosyayı görmem lazım.
 
Katılım
1 Nisan 2009
Mesajlar
32
Excel Vers. ve Dili
Excel
Haklısnız ben kendimi tam anlatamadım. Şöyle Excelde oluşturduğum listeyi ayrı ayrı word dosyalarında değil hepsini tek bir word dosyasında oluşturmak istiyorum. Tabii bunlar davet olduğundan aynı dosya içinde fakat her biri yeni bir sayfada oluşturmasını istiyorum böylece hepsini tek komutla yazdırabileceğim. Birde excelden herbirinin üzerine tek tek tıklayarak değilde topluca hepsini tek bir tıkla oluşturulması gerek çünkü tek tek tıklama oldukça zaman alır. Bu kadar zahmetli bir işe yardımcı olduğunuz için gerçekten çok çok teşekkür ederim.
Saygılarımla
 
Son düzenleme:

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Amaç sadece çıktı almaksa bu yöntemle kulağımızı tersten tutmuş oluruz. Excelin sayfalarından birini çıktı sayfası yapalım. Butona basınca listedekileri tek tek yazıcıya göndersin... Eğer uygunsa çıktı sayfasının şablonunu oluşturun ben de kodlarını yazayım.
 
Katılım
1 Nisan 2009
Mesajlar
32
Excel Vers. ve Dili
Excel
Size Excel ve wordde dosyaları gönderiyorum böylece daha anlaşılır olacağını inanıyorum. Wordde kırmızı ile yazılmışlar değişkenler, ayrıca bunları excelde de görebilirsiniz. Wordde ayrıca logo ve imzalar jpg olup bunlar tüm dosyalarda aynı şekilde jpg olacaktır.
Teşekkür ederim.
Saygılarımla
 

Ekli dosyalar

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Merhaba,
Örnek dosyayı inceleyiniz.
Kod:
Sub Aktar()
Set WD = CreateObject("Word.Application")
WD.Visible = True
Set MyDoc = WD.Documents.Add(DocumentType:=wdNewBlankDocument)
Application.ScreenUpdating = False
Set s2 = Sheets("Sayfa2")
s2.Cells.Delete
deg = Array("", "", "a3", "a4", "a1", "I1", "b8", "b10", "J25", "J26")
For q = 2 To [a65536].End(3).Row
For x = 2 To 9
If x = 2 Then
s2.Range(deg(x)) = "Sayın " & Cells(q, x - 1) & " " & Cells(q, x)
ElseIf x = 4 Then
s2.Range(deg(x)) = "Sayı: " & Cells(q, x)
ElseIf x = 5 Then
s2.Range(deg(x)) = Format(Cells(q, x), "dd.mm.yyyy")
Else
s2.Range(deg(x)) = Cells(q, x)
End If
Next
For x = 1 To 7: WD.Selection.TypeText Text:=vbTab: Next
WD.Selection.InlineShapes.AddPicture Filename:= _
ThisWorkbook.Path & "\adres.JPG", LinkToFile:=False, SaveWithDocument:=True
For x = 1 To 3: WD.Selection.TypeParagraph: Next

s2.Range("a1:J26").Copy
WD.Selection.PasteSpecial DataType:=2

WD.Selection.TypeParagraph

For x = 1 To 6: WD.Selection.TypeText Text:=vbTab: Next
WD.Selection.InlineShapes.AddPicture Filename:= _
ThisWorkbook.Path & "\imza.JPG", LinkToFile:=False, SaveWithDocument:=True

If q < [a65536].End(3).Row Then
WD.Selection.EndKey Unit:=6
WD.Selection.InsertBreak Type:=7
End If
Next
WD.Selection.homeKey Unit:=6
s2.Cells.Delete
Application.CutCopyMode = False
End Sub
 

Ekli dosyalar

Katılım
1 Nisan 2009
Mesajlar
32
Excel Vers. ve Dili
Excel
Çok güzel elinize sağlık. Ama word dosyasında yukarıda bir logo ve adres kısmı eklemem gerek, logo jpg olarak ve yanınada adres ve telefon bilgilerini gireceğim. Önceki gönderdiğim word dosyasında bunu görebilirsiniz.
Birde önceki gönderdiğim word dosyasının en altında imza kısmınıda jpg olarak ekleyeceğim.
Saygılarımla.
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Merhaba,
29 nolu mesajımdaki kodu ve dosyayı güncelledim. Klasörü RAR'dan çıkarın ve herhangi bir satıra çift tıklayarak kodu çalıştırın.
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,547
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Sayın leumruk,

İyi geceler.

Konu ilgimi çekti. 29. iletiye eklediğiniz son dosyayı indirip, satıra çift tıkladığımda, veriler word dosyasına aktarılıyor. "Davetiyeyi yanınızda getiriniz" satırı ile "müdür ismi " arasında çok büyük büyük boş alan var ve "isim" sayfanın en altında, "imza" resmi ise 2. sayfada çıkıyor.

Bu düzeltme işlemi için ne yapılmalı?

Sevgiler...
 

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Sayın leumruk,

İyi geceler.

Konu ilgimi çekti. 29. iletiye eklediğiniz son dosyayı indirip, satıra çift tıkladığımda, veriler word dosyasına aktarılıyor. "Davetiyeyi yanınızda getiriniz" satırı ile "müdür ismi " arasında çok büyük büyük boş alan var ve "isim" sayfanın en altında, "imza" resmi ise 2. sayfada çıkıyor.

Bu düzeltme işlemi için ne yapılmalı?

Sevgiler...
Merhaba,
Bende belirttiğiniz sıkıntılar olmuyor. Kodları 2003'te hazırlıyorum. Belki word 2003 ile 2007 arasında farklılıklar olabilir, 2007'de denemek lazım. Sayfa yerleşimi ile ilgili kilit kısım aşağıda belirttiğim kod satırıdır:
Kod:
deg = Array("", "", "a3", "a4", "a1", "I1", "b8", "b10", "J25", "J26")
Bu kısım neyin nereye yerleşeceğinin özeti gibi. Örneğin j25-j26 kısmını j20-j21 yaparak isim-soyisim kısmını daha yukarı alabilirsiniz. Deneme yanılma yoluyla kağıt yerleşimini isteğinize göre bu satırdan düzenleyebilirsiniz.
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,547
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Bir dolu bir boş sayfa yaratıyor

Sayın leumruk,

Günaydın.

Yanıtınızdaki önerilerinize göre anılan değerlerle oynama yaptım. Bu kez de excel sayfa satırına çift tıklayınca, resimde de görüleceği gibi, word'e bir dolu bir boş sayfa aktarmaya başladı.

Sizi bilgilendirmek istedim.

İlgi ve yanıtınız için önceden teşekkürler...
 

Ekli dosyalar

leumruk

Uzman
Uzman
Katılım
15 Nisan 2007
Mesajlar
3,471
Excel Vers. ve Dili
Office 2010 & 2013 tr
Merhaba,
Ben de belirttiğiniz durum olmuyor. Daha öncede belirttiğim gibi çalışmalarımı office 2003'te yapıyorum. Sorun muhtemelen bundan kaynaklanıyor. 2007 bilgisayarımda şu an yüklü olmadığı için tamamen tahmini önerilerde bulunacağım.
Yeşille belirttiğim kısmı aşağıda olduğu gibi pasifleştirerek deneyin.
Kod:
If q < [a65536].End(3).Row Then
[COLOR="DarkGreen"]'WD.Selection.EndKey Unit:=6[/COLOR]
WD.Selection.InsertBreak Type:=7
End If
 
Üst