2 brza sredstva za podjelu sadržaja Excel radnog lista u više radnih knjiga na osnovu određene kolone

Podijeli sada:

Ponekad, prilikom analize podataka, možda ćete morati podijeliti sadržaj Excel radnog lista u više Excel radnih svezaka prema određenoj koloni. U ovom postu ćemo vas naučiti dva brza načina da to postignete.

Mnogi korisnici često moraju da podele Excel radni list koji sadrži ogromne redove podataka u više zasebnih Excel radnih knjiga na osnovu određene kolone. Na primjer, evo mog primjera Excel radnog lista. Želio bih podijeliti podatke ovog lista na osnovu kolone “Cijena jedne licence (US$)” u više radnih knjiga.

Uzorak Excel radnog lista

Općenito, obično ćete koristiti sljedeću metodu 1 za ručno filtriranje i kopiranje podataka. Ali, biće prilično zamorno i glupo ako postoji previše opcija filtera. Stoga, ovdje pokazujemo i mnogo praktičniji način – metod 2, koji koristi VBA. Sada, čitajte dalje da biste ih detaljno saznali.

Metoda 1: Kopirajte sadržaj da odvojite Excel radne knjige nakon Filter

  1. Prvo odaberite ćeliju u određenoj koloni, kao što je "Ćelija B1" u mojoj instanci.
  2. Zatim idite na karticu „Podaci“ i kliknite na dugme „Filter“.Filtriraj podatke
  3. Zatim kliknite na dugme „strelica nadole“ u zaglavlju kolone da biste prikazali listu izbora filtera.
  4. Sada poništite opciju "(Odaberi sve)".Poništite izbor "Odaberi sve"
  5. Nakon toga, možete odabrati jedan izbor filtera, kao što je "29.95" u mom primjeru, i kliknite "OK".
  6. Odjednom će ostati samo podaci čija je vrijednost u koloni B “29.95”.Ostaju samo filtrirani podaci
  7. Zatim kopirajte filtrirane podatke i zalijepite ih u novu Excel radnu knjigu.Kopiraj i zalijepi sadržaj
  8. Kasnije koristite isti način da podijelite ostale podatke da biste razdvojili Excel radne knjige.

Metoda 2: Grupno podijelite sadržaj u više Excel radnih knjiga putem VBA

  1. Prije svega, osigurajte da je određeni radni list otvoren.
  2. Zatim pokrenite VBA editor prema “Kako pokrenuti VBA kod u vašem Excelu".
  3. Zatim stavite sljedeći kod u projekat “ThisWorkbook”.
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 kod - podijelite sadržaj Excel radnog lista u više radnih knjiga na osnovu određene kolone

  1. Nakon toga kliknite na ikonu “Run” na traci sa alatkama ili pritisnite dugme “F5”.
  2. Kada makronaredba završi, kreiraće se zasebne Excel radne knjige sa podeljenim podacima iz izvornog Excel radnog lista.Nove Excel radne sveske
  3. Svaka radna sveska će izgledati kao na sljedećoj slici ekrana.Odvojite nove Excel radne sveske

poređenje

  prednosti nedostaci
Način 1 1. Jednostavan za rad za sve korisnike programa Excel Problematično ako postoji previše izbora filtera
2. Brzo ako postoji nekoliko izbora filtera
Način 2 Mnogo efikasnije od metode 1 bez obzira na količinu izbora filtera Malo je teško raditi za VBA početnike

Spriječite gubitak Excel podataka

Iako MS Excel postaje sve napredniji i sofisticiraniji, i dalje ima tendenciju pada s vremena na vrijeme zbog raznih faktora, kao što su zlonamjerni dodaci trećih strana ili ljudske greške i tako dalje. Budući da Excel pad može direktno dovesti do Korupcija u Excelu, kako biste izbjegli gubitak Excel podataka, morate redovno praviti sigurnosnu kopiju svojih Excel datoteka. U suprotnom, morate primijeniti Excel alat za popravku, kao što je DataNumen Excel Repair da popravite oštećene Excel datoteke.

Uvod za autora:

Shirley Zhang je stručnjak za oporavak podataka DataNumen, Inc., koji je svjetski lider u tehnologijama za oporavak podataka, uključujući SQL Server Popravak i Outlook softverski proizvodi za popravku. Za više informacija posjetite www.datanumen.com

Podijeli sada:

Komentari su zatvoreni.