• 29-04-2024, 15:45:48
    #1
    Merhaba, konu kısaca iş yerinden benden 100 kadar klasörün içine aynı anda 2 exel dosyasını eklemem istendi ama bu exel dosyasının ana şablonunda 1 değişiklik yaptığımda bu klasörlerin içindeki exel tablolarının da değişmesi gerekiyor yardım edebilecek var mı ?

    yardıma ihtiyaç duyduğum kısımlar:
    bu 100 klasörün isimlerini exel ile md komutu kullanarak yaptım ( burda da türkçe karakter sorununu çözemedim ama bu şekilde de iş görür)
    klasörlerin içerisine otomatik olarak 2 exel dosyası eklemem lazım
    bu exel dosyasının şablonunu değiştirdiğimde tüm klasördeki istediğim kısımlar değişmeli
  • 29-04-2024, 15:49:54
    #2
    G⭐L⭐T⭐S⭐R⭐Y
    Merhaba! Excel’de bu tür bir işlemi gerçekleştirmek için bağlantılı çalışma kitapları kullanabilirsiniz. Ana şablonunuzdaki değişikliklerin diğer tüm Excel dosyalarına yansıması için, her bir dosyanın ana şablonla bağlantılı olması gerekir. İşte adım adım bir rehber:
    1. Ana Şablon Oluşturma:
      • Ana şablon olarak kullanmak istediğiniz Excel dosyasını açın veya oluşturun.
      • Gerekli tüm ayarlamaları ve formatlamaları yapın.
    2. Klasörlerin İçine Excel Dosyalarını Otomatik Olarak Ekleme:
      • Bir Excel dosyası açın ve VBA (Visual Basic for Applications) editörünü açmak için Alt + F11 tuşlarına basın.
      • Aşağıdaki VBA kodunu kullanarak, belirli bir klasördeki tüm klasörlere iki Excel dosyası ekleyebilirsiniz:
    Sub KlasorlereDosyaEkle()
        Dim anaKlasor As String
        Dim klasor As String
        Dim fs As Object
        Dim klasorObjesi As Object
        Dim dosya1 As String, dosya2 As String
    
        ' Ana klasör yolu
        anaKlasor = "C:\KlasörYolu\" ' Burayı kendi ana klasör yolunuzla değiştirin
    
        ' Eklenecek dosyaların yolları
        dosya1 = anaKlasor & "Şablon1.xlsx"
        dosya2 = anaKlasor & "Şablon2.xlsx"
    
        Set fs = CreateObject("Scripting.FileSystemObject")
        Set klasorObjesi = fs.GetFolder(anaKlasor)
    
        ' Her bir alt klasöre dosyaları kopyala
        For Each klasor In klasorObjesi.SubFolders
            fs.CopyFile dosya1, klasor.Path & "\"
            fs.CopyFile dosya2, klasor.Path & "\"
        Next klasor
    End Sub
    1. Bağlantılı Çalışma Kitaplarını Ayarlama:
      • Her bir klasördeki Excel dosyalarını açın.
      • Ana şablonunuzdaki hücrelere veya aralıklara başvurmak için formüller kullanın. Örneğin, ana şablonunuzdaki A1 hücresine başvurmak için =[Şablon.xlsx]Sayfa1!$A$1 formülünü kullanabilirsiniz.
    2. Türkçe Karakter Sorunu:
      • Türkçe karakter sorunu genellikle sistem locale ayarlarından kaynaklanır. Sistem locale ayarlarınızı Türkçe’ye ayarlamayı deneyin.
      • Eğer bu çözüm işe yaramazsa, VBA kodları içinde ChrW fonksiyonunu kullanarak Türkçe karakterleri doğru bir şekilde oluşturabilirsiniz.
    Bu adımları takip ederek, ana şablonunuzda yaptığınız değişikliklerin tüm klasörlerdeki Excel dosyalarına otomatik olarak yansımasını sağlayabilirsiniz. Unutmayın, VBA kodlarını çalıştırmadan önce Excel’de makroları etkinleştirmeniz gerekebilir.