Mektup birleştirme hakkında

Katılım
3 Şubat 2015
Mesajlar
2
Excel Vers. ve Dili
office 2013 türkçe
Merhaba, exceldeki veriler ile Word de mektup birleştirme yapıyorum. Elimde çok veri olduğu için 1000 sayfa yapıyor ve tek dosya olarak kaydediyor. Ben bunları 9 sayfada bir Farklı Word dosyası olarak kaydetmek istiyorum. Nasıl yapabilirim yardımcı olur musunuz
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,370
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,
Birleştirme menüsünde başlangıç ve bitiş satır numaraları veriliyordu. Onu kullanabilirsiniz.
Baktım mektup birleştirme olmayınca menüler pasif, nokta atışı veremiyorum.
 
Katılım
3 Şubat 2015
Mesajlar
2
Excel Vers. ve Dili
office 2013 türkçe
O şekilde olmuyor. Elimde 1000 sayfalık Word dosyası var ve her 9 sayfayı yeni bir Word belgesi olarak kaydetmem gerekiyor. Tek tek yapması çok zor oluyor
 
Katılım
20 Ekim 2021
Mesajlar
104
Excel Vers. ve Dili
TR 2016
Altın Üyelik Bitiş Tarihi
21-10-2022
1000 sayfayı 9 ar sayfa olacak şekilde ayrı ayrı wordlara makro ile ayırıp sonra yine bu ayrılan wordları yine makro ile isimlendirseniz olmazmı
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,370
Excel Vers. ve Dili
Ofis 365 Türkçe
word makrosu bambaşka bir şey, bilgim yok maalesef
 

netzone

Altın Üye
Katılım
10 Mayıs 2006
Mesajlar
791
Excel Vers. ve Dili
🅾🅵🅵🅸🅲🅴
⎝365 64 Bit 𝙏𝙍⎠
🆆🅸🅽🅳🅾🆆🆂
⎝11 64 Bit 𝙏𝙍⎠
Altın Üyelik Bitiş Tarihi
12-09-2027
Merhaba,

1000 Sayfalık word dosyanızı oluşturduktan sonra açık olan dosyanız üzerinde;
- ALT+F11 tuşlarına basın.
- Menüden Insert > Module seçerek boş modül ekleyin.
- Aşağıdaki kodları bu modüle yapıştırın.
- Modüldeyken F5 tuşuna basın ve kodları çalıştırın.

*Kodlar AI ile oluşturuldu, ufak bir kaç dokunuş yaptım ancak Son parçayı böldükten sonra (Run-time error '4605': Bu yöntem veya özellik kullanılamaz. Çünkü seçili metin yok.) uyarısını aşamadım. [END butonuna basıp sonlandırın, dosyalarınız sorunsuz bir şekilde oluşturuldu.]

İyi çalışmalar.

C#:
Sub DosyalaraBol()
    Dim Belge As Document
    Dim SayfaSayisi As Long
    Dim DosyaAdi As String
    Dim i As Long
    Dim DosyaNumarasi As Long
    Dim Baslangic As Long
    Dim Bitis As Long
    Dim Kopyalanacak As Range
   
    'Orijinal belgeyi ve sayfa sayısını belirleyin
    Set Belge = ActiveDocument
    SayfaSayisi = Belge.ComputeStatistics(wdStatisticPages)
   
    'Dosya numarasını belirle
    DosyaNumarasi = 1
   
    'Her bir dosya için yapılacak işlem
    Do While Baslangic < SayfaSayisi
        'Yeni bir dosya oluştur
        Documents.Add
        'Dosya adını belirle
        DosyaAdi = "Belge_" & DosyaNumarasi & ".docx"
       
        'Sayfa aralığını belirle
        Baslangic = (DosyaNumarasi - 1) * 9 + 1
        Bitis = DosyaNumarasi * 9 + 1
        If Bitis > SayfaSayisi Then
            Bitis = SayfaSayisi
        End If
       
        'Yeni dosyada sayfaları kopyala
        Set Kopyalanacak = Belge.Range(Start:=Belge.GoTo(What:=wdGoToPage, Which:=wdGoToAbsolute, Count:=Baslangic).Start, _
                    End:=Belge.GoTo(What:=wdGoToPage, Which:=wdGoToAbsolute, Count:=Bitis).End)
        Kopyalanacak.Copy
       
        'Yeni dosyaya yapıştır
        Selection.Paste
        Selection.TypeBackspace
        'Yeni dosyayı kaydet
        ActiveDocument.SaveAs2 FileName:=DosyaAdi
        'Yeni dosyayı kapat
        ActiveDocument.Close
        'Dosya numarasını bir arttır
        DosyaNumarasi = DosyaNumarasi + 1
    Loop

    'İşlem tamamlandı, mesaj göster
    MsgBox "Belge " & (DosyaNumarasi - 1) & " dosyaya bölündü.", vbInformation
End Sub
 
Son düzenleme:
Üst