Bir Excel Çalışma Sayfasının İçeriğini Belirli Bir Sütuna Dayalı Birden Çok Çalışma Kitabına Bölmenin 2 Hızlı Yolu

Şimdi paylaş:

Veri analizinde bazen, bir Excel çalışma sayfasının içeriğini belirli bir sütuna göre birden fazla Excel çalışma kitabına bölmeniz gerekebilir. Bu yazıda, bunu yapmanın 2 hızlı yolunu öğreteceğiz.

Çoğu kullanıcının, çok büyük veri satırları içeren bir Excel çalışma sayfasını, belirli bir sütuna dayalı olarak birden çok ayrı Excel çalışma kitabına bölmesi gerekir. Örneğin, işte benim örnek Excel çalışma sayfam. Bu sayfanın verilerini "Tek lisans fiyatı (US$)" sütununa göre birden fazla çalışma kitabına bölmek istiyorum.

Örnek Excel Çalışma Sayfası

Genel olarak, verileri el ile filtrelemek ve kopyalamak için aşağıdaki Yöntem 1'i kullanma eğiliminde olacaksınız. Ancak, çok fazla filtre seçeneği varsa, oldukça sıkıcı ve aptalca olacaktır. Bu nedenle, burada ayrıca çok daha uygun bir yol gösteriyoruz - VBA kullanan Yöntem 2. Şimdi, onları ayrıntılı olarak almak için okumaya devam edin.

Yöntem 1: Filtreden Sonra İçeriği Ayrı Excel Çalışma Kitaplarına Kopyalayın

  1. İlk başta, kendi örneğimdeki "B1 Hücresi" gibi belirli bir sütunda bir hücre seçin.
  2. Ardından, “Veri” sekmesine dönün ve “Filtrele” düğmesine tıklayın.Verileri Filtrele
  3. Ardından, filtre seçeneklerinin bir listesini görüntülemek için sütun başlığındaki "aşağı ok" düğmesini tıklayın.
  4. Şimdi, “(Tümünü Seç)” seçeneğinin işaretini kaldırın."Tümünü Seç" seçeneğinin işaretini kaldırın
  5. Bundan sonra, örneğimdeki "29.95" gibi bir filtre seçeneği seçip "Tamam" ı tıklayabilirsiniz.
  6. Bir anda sadece Sütun B'deki değeri “29.95” olan veriler kalacaktır.Geriye Sadece Filtrelenmiş Veri Kalır
  7. Ardından, filtre uygulanmış verileri kopyalayın ve yeni bir Excel çalışma kitabına yapıştırın.İçeriği Kopyala ve Yapıştır
  8. Daha sonra, Excel çalışma kitaplarını ayırmak için diğer verileri bölmek için aynı yolu kullanın.

Yöntem 2: Bölünmüş İçeriği VBA aracılığıyla Birden Çok Excel Çalışma Kitabına Toplu İşleyin

  1. İlk etapta, belirli çalışma sayfasının açıldığından emin olun.
  2. Ardından, “ göre VBA editörünü başlatın.Excel'inizde VBA Kodunu Nasıl Çalıştırırsınız?".
  3. Daha sonra “ThisWorkbook” projesine aşağıdaki kodu ekleyin.
Sub SplitSheetDataIntoMultipleWorkbooksBasedOnSpecificColumn()
    Dim objWorksheet As Excel.Worksheet
    Dim nLastRow, nRow, nNextRow As Integer
    Dim strColumnValue As String
    Dim objDictionary As Object
    Dim varColumnValues As Variant
    Dim varColumnValue As Variant
    Dim objExcelWorkbook As Excel.Workbook
    Dim objSheet As Excel.Worksheet
 
    Set objWorksheet = ActiveSheet
    nLastRow = objWorksheet.Range("A" & objWorksheet.Rows.Count).End(xlUp).Row
 
    Set objDictionary = CreateObject("Scripting.Dictionary")
 
    For nRow = 2 To nLastRow
        'Get the specific Column
        'Here my instance is "B" column
        'You can change it to your case
        strColumnValue = objWorksheet.Range("B" & nRow).Value
 
        If objDictionary.Exists(strColumnValue) = False Then
           objDictionary.Add strColumnValue, 1
        End If
    Next
 
    varColumnValues = objDictionary.Keys
 
    For i = LBound(varColumnValues) To UBound(varColumnValues)
        varColumnValue = varColumnValues(i)
 
        'Create a new Excel workbook
        Set objExcelWorkbook = Excel.Application.Workbooks.Add
        Set objSheet = objExcelWorkbook.Sheets(1)
        objSheet.Name = objWorksheet.Name
 
        objWorksheet.Rows(1).EntireRow.Copy
        objSheet.Activate
        objSheet.Range("A1").Select
        objSheet.Paste
 
        For nRow = 2 To nLastRow
            If CStr(objWorksheet.Range("B" & nRow).Value) = CStr(varColumnValue) Then
               'Copy data with the same column "B" value to new workbook
               objWorksheet.Rows(nRow).EntireRow.Copy
  
               nNextRow = objSheet.Range("A" & objWorksheet.Rows.Count).End(xlUp).Row + 1
               objSheet.Range("A" & nNextRow).Select
               objSheet.Paste
               objSheet.Columns("A:B").AutoFit
            End If
        Next
    Next
End Sub

VBA Kodu - Bir Excel Çalışma Sayfasının İçeriğini Belirli Bir Sütuna Dayalı Olarak Birden Çok Çalışma Kitabına Bölme

  1. Ardından araç çubuğundaki “Çalıştır” simgesine tıklayın veya “F5” tuşuna basın.
  2. Makro tamamlandığında, kaynak Excel çalışma sayfasındaki bölünmüş verilerle ayrı Excel çalışma kitapları oluşturulacaktır.Yeni Excel Çalışma Kitapları
  3. Her çalışma kitabı aşağıdaki ekran görüntüsü gibi görünecektir.Ayrı Yeni Excel Çalışma Kitapları

karşılaştırma

  Avantajlar Dezavantajlar
Yöntem 1 1. Tüm Excel kullanıcıları için kullanımı kolay Çok fazla filtre seçeneği varsa zahmetli
2. Birkaç filtre seçeneği varsa hızlı
Yöntem 2 Filtre seçeneklerinin miktarı ne olursa olsun Yöntem 1'den çok daha verimli VBA'ya yeni başlayanlar için çalıştırması biraz zor

Excel Veri Kaybını Önleyin

MS Excel her geçen gün daha gelişmiş ve sofistike hale gelse de, kötü amaçlı üçüncü taraf eklentileri veya insan hataları vb. gibi çeşitli faktörler nedeniyle zaman zaman çökme eğilimindedir. Excel çökmesi doğrudan yol açabileceğinden Excel bozulması, Excel veri kaybını önlemek için, Excel dosyalarınızı düzenli olarak yedeklemeniz gerekir. Aksi takdirde, aşağıdaki gibi bir Excel onarım aracı uygulamanız gerekir. DataNumen Excel Repair bozuk Excel dosyalarını düzeltmek için.

Yazar Tanıtımı:

Shirley Zhang, bir veri kurtarma uzmanıdır. DataNumendahil olmak üzere veri kurtarma teknolojilerinde dünya lideri olan , Inc. SQL Server onarım ve görünüm onarım yazılım ürünleri. Daha fazla bilgi için ziyaret edin www.datanumen.com

Şimdi paylaş:

Yoruma kapalı.