İpucu: Digər dillər Google-tərcümə olunur. Sizi ziyarət edə bilərsiniz English bu linkin versiyası.
Daxil ol
x
or
x
x
Qeydiyyatdan
x

or

Bir qovluqda fayllar vasitəsilə döngə necə və məlumatları Excel-də əsas səhifəyə çevirirsiniz?

Bir qovluğa birdən çox Excel iş kitabı olduğunu düşünürsən və bütün bu Excel faylları içərisində döngə və eyni iş yerlərinin müəyyən aralığından verilən məlumatları Excel-in əsas iş səhifəsinə çevirmək istəyirsən, nə edə bilərsən? Bu yazıda ətraflı məlumat əldə etmək üçün bir üsul təqdim olunur.

Bir qovluqdakı fayllar vasitəsilə döngə çəkin və məlumatları VBA kodu ilə əsas səhifəyə daxil edin


Asanlıqla bir iş kitabçasına bir iş kitabçasındakı məlumatları kopyalayın / idxal edin:

İlə Faylı Kursorda daxil edin faydası Excel üçün Kutoolsasanlıqla açıq bir iş kitabının müəyyən bir iş kitabından məlumatları açıq bir iş kitabına kopyalayabilirsiniz. Ekran görüntüsünə baxın:

Excel üçün Kutools: 200 gündə heç bir məhdudiyyət olmadan 60-dən çox lazımlı Excel eklentisi ilə pulsuzdur. İndi indir və pulsuz sınaq!


Bir qovluqdakı fayllar vasitəsilə döngə çəkin və məlumatları VBA kodu ilə əsas səhifəyə daxil edin


A1: D4-də müəyyən edilmiş məlumatları kopyalamaq istəyirsinizsə, iş kitablarının bütün səhifələrindən1 bir əsas qovluğa bir əsas səhifəyə aşağıdakı xahiş edirik.

1. Çalışma kitabında master iş səhifəsi yaratmaq üçün basın Dayandırmaq + F11 düymələri açmaq üçün Proqramlar üçün Microsoft Visual Basic pəncərə.

2. İçində Proqramlar üçün Microsoft Visual Basic pəncərə basın Taxmaq > Modules. Sonra VBA kodu aşağıda kod penceresine kopyalayın.

VBA kodu: bir qovluqdakı fayllardan keçmək və məlumatları master səhifəyə daxil edin

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

Qeyd:

1. Kodda "A1: D4"Və"Sheet1"A1 aralığındaki məlumatlar: Sheet4-dan D1, ana səhifəyə çıxarılacaq. Və "Yeni Sheet"Yeni yaradılmış ana səhifənin adıdır.

2. Xüsusi qovluqdakı Excel faylları açılmamalıdır.

3. Basın F5 kodunu çalıştırmak üçün düyməsini basın.

4. Açılışda İnsanlar pəncərəni seçin, qovluğa daxil edəcəyi faylları daxil edin və sonra basın OK düyməsini basın. Ekran görüntüsünə baxın:

Sonra, mövcud iş kitabının sonunda "Yeni Sheet" adlı bir master işi yaranır. A1 diapazonunda məlumat: Seçilən qovluqdakı bütün Sheet4-dən D1 iş səhifəsinin daxilində göstərilir.


Related articles:



Təklif olunan Məhsuldarlıq Vasitələri

Office Tab

qızıl star1 Chrome, Firefox və yeni Internet Explorer kimi Excel və digər Office proqramlarına lazımlı sekmeleri gətirin.

Excel üçün Kutools

qızıl star1 Amazing! 5 dəqiqədə məhsuldarlığınızı artırın. Heç bir xüsusi bacarıqa ehtiyac yoxdur, hər gün iki saat saxlaya bilərsiniz!

qızıl star1 300 Excel üçün yeni funksiyalar, Excel çox asan və güclü olun:

  • Veriyi ləğv etmədən Cell / Satır / Sütunları birləşdirin.
  • Bir neçə Çarşaf və İş Kitabını birləşdirin və birləşdirin.
  • Çaprazları müqayisə edin, birdən çox aralığa kopyalayın, mətni tarixə, vahidə və valyuta çevrilməsinə çevirin.
  • Rənglər, Paging Subtotals, Advanced Sort və Super Filter tərəfindən sayılan,
  • Daha çox seçin / Insert / Sil / Mətn / Biçim / Bağlantı / Yorum / Çalışma kitabları / Çalışma Qurğuları Tools ...

Excel üçün Kutools-un ekranı

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Paul Gill · 7 days ago
    Hi, thanks for the code. Please can you let me know how I can include the Excel file name from which the data range was copied? This would be a great help!

    Thank you.
  • To post as a guest, your comment is unpublished.
    Lai Ling · 3 months ago
    thank you for the vba code! It works perfectly! Would like to know what is the code if i need to PASTE AS VALUE instead? Thx in advance!
    • To post as a guest, your comment is unpublished.
      crystal · 2 months ago
      Hi Lai Ling,
      The following code can help you solve the problem. Thank you for your comment.

      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
      Set xRg = xSheet.UsedRange
      xRg.ClearFormats
      xRg.UseStandardHeight = True
      xRg.UseStandardWidth = True
      Application.DisplayAlerts = True
      Application.EnableEvents = True
      Application.ScreenUpdating = True
      End Sub