Excel VBA ile Farklı Excel Dosyalarını Bir Excelde Birleştirmek
Merhabalar,
bu yazımda sizlere farklı excel workbooklarını bir excel içerisinde otomatik olarak birleştirmek için yazmamız gereken kodu paylaşacağım.
Öncelikle birleştireceğimiz workbookları aynı dosya içerisine atıyoruz.
Yukarıdaki gibi dosyalarımızı aynı konumda birleştirdikten sonra aşağıdaki kodu yazıyoruz.
Sub macro1()
Dim Filename As String
'aşağıdaki yolu kendi dosyalarınızı bulunduğu yol ile değiştirin
Path = "C:\Users\zülal\Desktop\Çalışma Dosyası\Çalışma Dosyası\MAKRO BİRLEŞTİR\"
Filename = Dir(Path & "*.xlsx")
Do While Filename <> ""
Workbooks.Open Filename:=Path & Filename, ReadOnly:=True
For Each Sheet In ActiveWorkbook.Sheets
Sheet.Copy After:=ThisWorkbook.Sheets(1)
' sayfa adı ile dosya adı aynı olması için yazdığımız kod
Dim LArray() As String
LArray = Split(Filename, ".")
Sheets(2).Name = LArray(0)
Next Sheet
Workbooks(Filename).Close
Filename = Dir()
Loop
End Sub
yukarıdaki kodu çalıştırdığımızda sayfalarımız bir excel dosyası içerisinde aşağıdaki gibi birleşmiş olacak.
bu yazımda sizlere farklı excel workbooklarını bir excel içerisinde otomatik olarak birleştirmek için yazmamız gereken kodu paylaşacağım.
Öncelikle birleştireceğimiz workbookları aynı dosya içerisine atıyoruz.
Yukarıdaki gibi dosyalarımızı aynı konumda birleştirdikten sonra aşağıdaki kodu yazıyoruz.
Sub macro1()
Dim Filename As String
'aşağıdaki yolu kendi dosyalarınızı bulunduğu yol ile değiştirin
Path = "C:\Users\zülal\Desktop\Çalışma Dosyası\Çalışma Dosyası\MAKRO BİRLEŞTİR\"
Filename = Dir(Path & "*.xlsx")
Do While Filename <> ""
Workbooks.Open Filename:=Path & Filename, ReadOnly:=True
For Each Sheet In ActiveWorkbook.Sheets
Sheet.Copy After:=ThisWorkbook.Sheets(1)
' sayfa adı ile dosya adı aynı olması için yazdığımız kod
Dim LArray() As String
LArray = Split(Filename, ".")
Sheets(2).Name = LArray(0)
Next Sheet
Workbooks(Filename).Close
Filename = Dir()
Loop
End Sub
yukarıdaki kodu çalıştırdığımızda sayfalarımız bir excel dosyası içerisinde aşağıdaki gibi birleşmiş olacak.
Teşekkür ederim. Bu makroyu uzun süre aradım.
YanıtlaSilAnlatılan şekilde csv dosyalarını birleştirdiğimde verilerin hepsi ilk stuna geliyor.bunun için yapılacak bir şey var mı acaba ?
YanıtlaSilPaylaşımlarınız için teşekkür ederim. Birçok sitede kolayca bulunamayacak değerli çalışmalarınız var. Bloğunuzun daha aktif kullanılmasını sağlamak için size geri dönüş yapan takipçilerinizi cevaplamanız değerli hissettirecektir. Kanaatim budur. İyi çalışmalar dilerim.
YanıtlaSil