Excel'de birden fazla csv/metin/xml dosyasını hızlıca toplu olarak nasıl içe aktarabilirsiniz?
Excel'de, bir çalışma kitabını csv dosyası, metin dosyası veya xml dosyası olarak kaydetmeye çalışmış olabilirsiniz, ancak bir klasörden birden fazla csv/metin/xml dosyasını bir çalışma kitabı veya çalışma sayfasına aktarmayı denediniz mi? Bu makalede, bunları hızlıca toplu olarak içe aktarmak için bazı yöntemler tanıtıyorum.
VBA ile bir klasörden birden fazla metin dosyasını bir çalışma kitabının her bir çalışma sayfasına aktarma
Bir klasörden metin dosyalarını bir çalışma kitabına aktarmak için aşağıdaki VBA'yı kullanabilirsiniz.
1. Boş bir çalışma kitabını etkinleştirin ve Alt + F11 tuşlarına basarak Microsoft Visual Basic for Applications penceresini açın.
2. Ekle > Modül'e tıklayın ve VBA kodunu Modül penceresine yapıştırın.
VBA: Bir klasörden tüm metin dosyalarını bir çalışma kitabına aktarma
Sub LoadPipeDelimitedFiles()
'UpdatebyKutoolsforExcel20151214
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xCount As Long
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\*.txt")
Do While xFile <> ""
xCount = xCount + 1
Sheets(xCount).Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" _
& xStrPath & "\" & xFile, Destination:=Range("A1"))
.Name = "a" & xCount
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 437
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileOtherDelimiter = "|"
.TextFileColumnDataTypes = Array(1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
xFile = Dir
End With
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "no files txt", , "Kutools for Excel"
End Sub
3. VBA'yı çalıştırmak için F5 tuşuna basın veya Çalıştır düğmesine tıklayın ve açılan diyalog kutusunda içe aktaracağınız metin dosyalarının bulunduğu klasörü seçin. Ekran görüntüsüne bakın:
4. Tamam'a tıklayın ve seçilen klasördeki her bir metin dosyası, etkin çalışma kitabının bir çalışma sayfasına aktarılır. Ekran görüntüsüne bakın:



Kutools AI ile Excel Sihirini Keşfedin
- Akıllı Yürütme: Hücre işlemleri gerçekleştirin, verileri analiz edin ve grafikler oluşturun—tümü basit komutlarla sürülür.
- Özel Formüller: İş akışlarınızı hızlandırmak için özel formüller oluşturun.
- VBA Kodlama: VBA kodunu kolayca yazın ve uygulayın.
- Formül Yorumlama: Karmaşık formülleri kolayca anlayın.
- Metin Çevirisi: Elektronik tablolarınız içindeki dil engellerini aşın.
VBA ile bir klasörden birden fazla csv dosyasını tek bir sayfaya aktarma
Bir klasörden tüm csv dosyalarını tek bir sayfaya aktarmak için aşağıdaki VBA kodunu kullanabilirsiniz.
1. Boş bir çalışma sayfasını etkinleştirin ve Alt + F11 tuşlarına basarak Microsoft Visual Basic for Applications penceresini açın.
2. Ekle > Modül'e tıklayın ve aşağıdaki VBA'yı yeni Modül penceresine yapıştırın.
VBA: Bir klasörden csv dosyalarını tek bir çalışma sayfasına aktarma
Sub ImportCSVsWithReference()
'UpdatebyKutoolsforExcel20151214
Dim xSht As Worksheet
Dim xWb As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Set xSht = ThisWorkbook.ActiveSheet
If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Kutools for Excel") = vbYes Then xSht.UsedRange.Clear
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\" & "*.csv")
Do While xFile <> ""
Set xWb = Workbooks.Open(xStrPath & "\" & xFile)
Columns(1).Insert xlShiftToRight
Columns(1).SpecialCells(xlBlanks).Value = ActiveSheet.Name
ActiveSheet.UsedRange.Copy xSht.Range("A" & Rows.Count).End(xlUp).Offset(1)
xWb.Close False
xFile = Dir
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "no files csv", , "Kutools for Excel"
End Sub
3. VBA'yı çalıştırmak için F5 tuşuna basın veya Çalıştır düğmesine tıklayın ve açılan diyalog kutusunda tüm csv dosyalarını içe aktarmak istediğiniz klasörü seçin. Ekran görüntüsüne bakın:
4. Tamam'a tıklayın ve açılan diyalog kutusu, içe aktarmadan önce etkin çalışma sayfasının içeriğini temizlemek isteyip istemediğinizi hatırlatır, burada Evet'i tıklıyorum. Ekran görüntüsüne bakın:
Evet'e tıkladıktan sonra, seçilen klasördeki tüm csv dosyaları mevcut sayfaya aktarılır ve veriler Sütun A'dan itibaren sağa doğru yerleştirilir. Ekran görüntüsüne bakın:


İpucu: Csv dosyalarını yatay olarak bir çalışma sayfasına yerleştirmek istiyorsanız, aşağıdaki VBA'yı kullanabilirsiniz.
Sub ImportCSVsWithReferenceI()
'UpdatebyKutoolsforExcel20151214
Dim xSht As Worksheet
Dim xWb As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xCount As Long
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Set xSht = ThisWorkbook.ActiveSheet
If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Kutools for Excel") = vbYes Then
xSht.UsedRange.Clear
xCount = 1
Else
xCount = xSht.Cells(3, Columns.Count).End(xlToLeft).Column + 1
End If
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\" & "*.csv")
Do While xFile <> ""
Set xWb = Workbooks.Open(xStrPath & "\" & xFile)
Rows(1).Insert xlShiftDown
Range("A1") = ActiveSheet.Name
ActiveSheet.UsedRange.Copy xSht.Cells(1, xCount)
xWb.Close False
xFile = Dir
xCount = xSht.Cells(3, Columns.Count).End(xlToLeft).Column + 1
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "no files csv", , "Kutools for Excel"
End Sub
VBA ile bir klasörden birden fazla xml dosyasını tek bir sayfaya aktarma
Bir klasörden tüm XML dosyalarını tek bir sayfaya aktarmak istiyorsanız, aşağıdaki VBA kodunu kullanabilirsiniz.
1. İçeri aktarılan verileri yerleştirmek istediğiniz boş bir sayfayı seçin ve Alt + F11 tuşlarına basarak Microsoft Visual Basic for Applications penceresini açın.
2. Ekle > Modül'e tıklayın, VBA kodunu Modül penceresine yapıştırın.
VBA: Bir klasörden XML dosyalarını bir çalışma sayfasına aktarma.
Sub From_XML_To_XL()
'UpdatebyKutoolsforExcel20151214
Dim xWb As Workbook
Dim xSWb As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xCount As Long
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Application.ScreenUpdating = False
Set xSWb = ThisWorkbook
xCount = 1
xFile = Dir(xStrPath & "\*.xml")
Do While xFile <> ""
Set xWb = Workbooks.OpenXML(xStrPath & "\" & xFile)
xWb.Sheets(1).UsedRange.Copy xSWb.Sheets(1).Cells(xCount, 1)
xWb.Close False
xCount = xSWb.Sheets(1).UsedRange.Rows.Count + 2
xFile = Dir()
Loop
Application.ScreenUpdating = True
xSWb.Save
Exit Sub
ErrHandler:
MsgBox "no files xml", , "Kutools for Excel"
End Sub
3. VBA'yı çalıştırmak için Çalıştır düğmesine tıklayın veya F5 tuşuna basın ve açılan diyalog kutusunda bir klasör seçin, ekran görüntüsüne bakın:
4. Tamam'a tıklayın ve seçilen klasördeki tüm XML dosyaları etkin sayfaya aktarılır.
Kutools for Excel ile birden fazla xml/csv dosyasını bir sayfa veya çalışma kitabına aktarma veya birleştirme
VBA ile ilgili bilginiz yoksa endişelenmeyin, size pratik bir araç olan Kutools for Excel'i tanıtayım. Güçlü Birleştir yardımcı programıyla, birden fazla xml dosyasını veya csv dosyasını hızlıca bir çalışma kitabına veya bir Excel sayfasına birleştirebilirsiniz.
Kutools for Excel'i yükledikten sonra lütfen aşağıdaki adımları izleyin:(Kutools for Excel'i Şimdi Ücretsiz İndir!)
1. Excel'i etkinleştirin ve tıklayın Kutools Plus > Birleştir. Ekran görüntüsüne bakın:
2. Ve Birleştir adım 1 diyalogunda ihtiyacınız olan bir ayırma seçeneği seçin. Ekran görüntüsüne bakın:
3. Tıklayın Sonraki gidin Birleştir adım 2'sine, tıklayın Ekle çeşitli klasörlerden dosya eklemek veya bir klasörden dosyalar eklemek için Çalışma Kitabı listesine, ayrıca birleştirmek istediğiniz sayfaları da belirtebilirsiniz Çalışma Sayfası sağ bölümdeki listeden. Ekran görüntüsüne bakın:
4. Tıklayın Sonraki son adımına gidin Birleştir, ve birleştirme seçeneklerini belirleyebilirsiniz.
5. Tıklayın Tamamla, yeni birleştirilmiş sonucu kaydetmek için bir konum seçmenizi hatırlatan bir diyalog kutusu açılır. Ekran görüntüsüne bakın:
6. Tıklayın Kaydet. Tüm eklenen sayfalar yeni tek bir sayfaya birleştirilmiştir.
İpucu: Birleştir ile aynı zamanda birden fazla CSV dosyasını birden fazla klasörden veya bir klasörden tek bir sayfa veya çalışma kitabına birleştirebilirsiniz.
Kutools for Excel ile her bir sayfayı bir klasöre csv/metin/pdf olarak dışa aktarma
Her bir sayfayı bir klasöre csv/metin/pdf dosyası olarak dışa aktarmak istiyorsanız, Kutools for Excel'in Çalışma Kitabını Böl yardımcı programı sizin için bu işi yapabilir.
Ücretsiz indirme ve kurma işleminden sonra Kutools for Excel, lütfen aşağıdaki adımları izleyin:
1. Çalışma kitabını etkinleştirin ve dışa aktarmak istediğiniz çalışma sayfalarını seçin, ardından Kutools Plus > Çalışma Kitabı > Çalışma Kitabını Böl'e tıklayın. Ekran görüntüsüne bakın:
2. Çalışma Kitabını Böl diyalogunda, dışa aktarmak istediğiniz sayfa isimlerini işaretleyebilirsiniz, varsayılan olarak tüm sayfalar işaretlidir ve Kaydetme Biçimini Belirt seçeneğini işaretleyerek aşağıdan açılır listeden kaydetmek istediğiniz dosya biçimini seçebilirsiniz. Ekran görüntüsüne bakın:
3. Click Split and select a folder that to save the split files in the Browse for Folder dialog, see screenshot:
4. Click OK, now all the checked sheets are exported as new file format in the selected folder.
Relative Articles:
- How to convert hyperlink to plain text in Excel?
- How to convert decimal number to binary/octal/hex number or vice versa in Excel?
- How to insert live exchange rate in Excel?
En İyi Ofis Verimlilik Araçları
Kutools for Excel ile Excel becerilerinizi geliştirin ve daha önce hiç olmadığı kadar verimli olun. Kutools for Excel, üretkenliğinizi artırmak ve zamanınızı kaydetmek için300'den fazla gelişmiş özellik sunar. En çok ihtiyacınız olan özelliği almak için buraya tıklayın...
Office Tab, Office'e sekmeli arayüz getirir ve işinizi çok daha kolaylaştırır
- Word, Excel, PowerPoint'te sekmeli düzenleme ve okuma özelliğini etkinleştirin.
- Aynı pencerenin yeni sekmelerinde birden fazla belge açın ve oluşturun, yeni pencerelerde değil.
- Verimliliğinizi %50 artırır ve her gün yüzlerce fare tıklamasını azaltır!