cavanoos
Altın Üye
- Katılım
- 17 Aralık 2008
- Mesajlar
- 727
- Excel Vers. ve Dili
- Microsoft 365
- Altın Üyelik Bitiş Tarihi
- 11-01-2026
Merhaba arkadaşlar;
Bankadan bize gönderilen csv formatlı dosyalar var.Ben bu dosyaları tek bir excel sayfasında birleştirmek istiyorum.Birleştirme için makro kodum var ama sadece xls uzantılı dosyaları birleştiriyor.Csv yi de birleştiriyor ama hücreler bozuk olarak birleşiyor.
1-Csv formatlı dosyaları düzgün bir şekilde nasıl birleşiririm.
2-Birleştiremediğimizi düşünelim.O zaman,Csv formatlı dosyaları farklı kaydet yapıp,xls formatında kaydedecek makro kodu yazabilir miyiz?
Birleştirme için kullandığım makro kodum alttadır.Yardım edebilir misiniz ?
Sub Birlestir()
Dim AktifDosya As Workbook
Dim Dosya As Workbook
Dim DosyaAdi
Set AktifDosya = ActiveWorkbook
With Application.FileDialog(msoFileDialogOpen)
.AllowMultiSelect = True
.Title = "Birleştirilecek Dosyaları Seçin"
If .Show Then
For Each DosyaAdi In .SelectedItems
Set Dosya = Workbooks.Open(DosyaAdi)
Dosya.Worksheets(1).UsedRange.Copy AktifDosya.Worksheets(1).Range("A65536").End(xlUp)(2, 1)
Dosya.Close False
Set Dosya = Nothing
Next
End If
End With
Set AktifDosya = Nothing
End Sub
Bankadan bize gönderilen csv formatlı dosyalar var.Ben bu dosyaları tek bir excel sayfasında birleştirmek istiyorum.Birleştirme için makro kodum var ama sadece xls uzantılı dosyaları birleştiriyor.Csv yi de birleştiriyor ama hücreler bozuk olarak birleşiyor.
1-Csv formatlı dosyaları düzgün bir şekilde nasıl birleşiririm.
2-Birleştiremediğimizi düşünelim.O zaman,Csv formatlı dosyaları farklı kaydet yapıp,xls formatında kaydedecek makro kodu yazabilir miyiz?
Birleştirme için kullandığım makro kodum alttadır.Yardım edebilir misiniz ?
Sub Birlestir()
Dim AktifDosya As Workbook
Dim Dosya As Workbook
Dim DosyaAdi
Set AktifDosya = ActiveWorkbook
With Application.FileDialog(msoFileDialogOpen)
.AllowMultiSelect = True
.Title = "Birleştirilecek Dosyaları Seçin"
If .Show Then
For Each DosyaAdi In .SelectedItems
Set Dosya = Workbooks.Open(DosyaAdi)
Dosya.Worksheets(1).UsedRange.Copy AktifDosya.Worksheets(1).Range("A65536").End(xlUp)(2, 1)
Dosya.Close False
Set Dosya = Nothing
Next
End If
End With
Set AktifDosya = Nothing
End Sub