Skip to main content

Bir dizindeki çalışma kitaplarını dolaşarak verileri Excel'deki bir ana sayfaya nasıl kopyalayabilirsiniz?

Author: Siluvia Last Modified: 2025-06-10

Diyelim ki bir klasörde birden fazla Excel çalışma kitabı var ve bu dosyaların tamamında belirli bir aralıktaki (örneğin, Sayfa1) verileri ana bir çalışma sayfasına kopyalamak için dolaşmanız gerekiyor. Bu kılavuz, bu süreci Excel'de kolaylaştırmak için ayrıntılı bir VBA çözümü sunar.

VBA kodu ile bir dizindeki çalışma kitaplarını dolaşma ve verileri ana sayfaya kopyalama


VBA kodu ile bir dizindeki dosyaları dolaşma ve verileri ana sayfaya kopyalama

Belirli bir klasördeki tüm çalışma kitaplarının Sayfa1 çalışma sayfalarındaki A1:D4 aralığından verileri kopyalamak ve bunları bir ana sayfaya yapıştırmak istiyorsanız, lütfen aşağıdaki adımları izleyin.

1. Ana çalışma sayfasını oluşturacağınız çalışma kitabında, Microsoft Visual Basic for Applications penceresini açmak için Alt + F11 tuşlarına basın.

2. Microsoft Visual Basic for Applications penceresinde, Ekle > Modül'e tıklayın. Ardından aşağıdaki VBA kodunu kod penceresine kopyalayın.

VBA kodu: Bir klasördeki dosyaları dolaşma ve verileri ana sayfaya kopyalama

Sub Merge2MultiSheets()
    Dim xRg As Range
    Dim xSelItem As Variant
    Dim xFileDlg As FileDialog
    Dim xFileName, xSheetName, xRgStr As String
    Dim xBook, xWorkBook As Workbook
    Dim xSheet As Worksheet
    On Error Resume Next
    Application.DisplayAlerts = False
    Application.EnableEvents = False
    Application.ScreenUpdating = False
    xSheetName = "Sheet1"
    xRgStr = "A1:D4"
    Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    With xFileDlg
        If .Show = -1 Then
            xSelItem = .SelectedItems.Item(1)
            Set xWorkBook = ThisWorkbook
            Set xSheet = xWorkBook.Sheets("New Sheet")
            If xSheet Is Nothing Then
                xWorkBook.Sheets.Add(after:=xWorkBook.Worksheets(xWorkBook.Worksheets.Count)).Name = "New Sheet"
                Set xSheet = xWorkBook.Sheets("New Sheet")
            End If
            xFileName = Dir(xSelItem & "\*.xlsx", vbNormal)
            If xFileName = "" Then Exit Sub
            Do Until xFileName = ""
               Set xBook = Workbooks.Open(xSelItem & "\" & xFileName)
                Set xRg = xBook.Worksheets(xSheetName).Range(xRgStr)
                xRg.Copy xSheet.Range("A65536").End(xlUp).Offset(1, 0)
                xFileName = Dir()
                xBook.Close
            Loop
        End If
    End With
    Application.DisplayAlerts = True
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub

Not:

1). Kodda, “A1:D4” ve “Sayfa1”, tüm Sayfa1’lerdeki A1:D4 aralığındaki verilerin ana sayfaya kopyalanacağını gösterir. Ve “Yeni Sayfa”, oluşturulan yeni ana sayfanın adıdır.
2). Belirli klasördeki Excel dosyaları açık olmamalıdır.

3. Kodu çalıştırmak için F5 tuşuna basın.

4. Açılır Gözat penceresinde, dolaşacağınız dosyaları içeren klasörü seçin ve ardından Tamam düğmesine tıklayın. Ekran görüntüsüne bakın:

A screenshot of the Browse dialog box in Excel for selecting a folder containing files to loop through

“Yeni Sayfa” adlı bir ana çalışma sayfası, mevcut çalışma kitabının sonuna eklenir. Ve seçilen klasördeki tüm Sayfa1’lerdeki A1:D4 aralığındaki veriler, çalışma sayfasının içine listelenir.


İlgili makaleler:

En İyi Ofis Verimlilik Araçları

🤖 Kutools AI Asistanı: Veri analizinde devrim yaratın: Akıllı Yürütme   |  Kod Oluştur  |  Özel Formüller Oluştur  |  Verileri Analiz Et ve Grafikler Oluştur  |  Geliştirilmiş İşlevleri Çağır
Popüler Özellikler: Yinelenenleri Bul, Vurgula veya İşaretle   |  Boş Satırları Sil   |  Sütunları veya Hücreleri Verileri Kaybetmeden Birleştir   |   Formül Olmadan Yuvarla ...
Süper ARA: Çok Kriterli Düşeyara    Çoklu Değer Düşeyara  |   Çoklu sayfa araması   |   Bulanık Eşleme ....
Gelişmiş Açılır Liste: Hızlıca Açılır Liste Oluştur   |  Bağımlı Açılır Liste   |  Çoklu Seçimli Açılır Liste ....
Sütun Yöneticisi: Belirli Sayıda Sütun Ekle  |  Sütunları Taşı  |  Gizli Sütunların Görünürlük Durumunu Değiştir  |  Aralıkları ve Sütunları Karşılaştır ...
Öne Çıkan Özellikler: Izgara Odaklama   |  Tasarım Görünümü   |   Gelişmiş formül çubuğu    Çalışma Kitabı & Çalışma Sayfası Yöneticisi   |  Otomatik Metin Kütüphanesi (Auto Text)   |  Tarih Seçici   |  Veri Birleştir   |  Hücreleri Şifrele/Şifre Çöz    Listeye Göre E-posta Gönder   |  Süper Filtre   |   Özel Filtre (kalın/italik/üstü çizili filtrele...) ...
En İyi15 Araç Seti12 Metin Aracı (Metin Ekle, Belirli Karakterleri Sil, ...)   |   50+ Grafik Türü (Gantt Grafiği, ...)   |   40+ Pratik Formül (Doğum tarihine dayanarak yaş hesapla, ...)   |   19 Ekleme Aracı (QR Kodu Ekle, Yoldan Resim Ekle, ...)   |   12 Dönüşüm Aracı (Kelimeye Dönüştür, Para Birimi Dönüştürme, ...)   |   7 Birleştir & Böl Aracı (Gelişmiş Satırları Birleştir, Hücreleri Böl, ...)   |   ... ve daha fazlası

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!