Ndonjëherë, në analizën e të dhënave, mund t'ju duhet të ndani përmbajtjen e një flete pune Excel në shumë libra pune Excel sipas një kolone specifike. Tani, në këtë fqost, ne do t'ju mësojmë 2 mënyra të shpejta për ta marrë atë.
Shumë përdorues shpesh duhet të ndajnë një fletë pune në Excel që përmban rreshta të mëdhenj të dhënash në shumë libra të veçantë të Excel-it bazuar në një kolonë specifike. Për shembull, këtu është mostra ime e fletës së punës në Excel. Dëshiroj t'i ndaj të dhënat e kësaj flete në bazë të kolonës "Çmimi i licencës së vetme (US$)" në shumë libra pune.
Në përgjithësi, do të tentoni të përdorni metodën 1 të mëposhtme për të filtruar dhe kopjuar manualisht të dhënat. Por, do të jetë mjaft e lodhshme dhe marrëzi nëse ka shumë opsione filtri. Prandaj, këtu tregojmë gjithashtu një mënyrë shumë më të përshtatshme - Metoda 2, e cila përdor VBA. Tani, lexoni për t'i marrë ato në detaje.
Metoda 1: Kopjoni përmbajtjen për të ndarë librat e punës në Excel pas filtrit
- Në fillim, zgjidhni një qelizë në kolonën specifike, si "Qeliza B1" në shembullin tim.
- Më pas, kthehu te skeda "Të dhënat" dhe kliko butonin "Filter".
- Më pas, klikoni butonin "shigjeta poshtë" në kokën e kolonës për të shfaqur një listë të zgjedhjeve të filtrit.
- Tani, zgjidhni opsionin "(Zgjidh të gjitha)".
- Pas kësaj, ju mund të zgjidhni një zgjedhje filtri, si "29.95" në shembullin tim, dhe klikoni "OK".
- Menjëherë do të lihen vetëm të dhënat, vlera e të cilave në kolonën B është "29.95".
- Më pas, kopjoni të dhënat e filtruara dhe ngjitini ato në një libër të ri pune në Excel.
- Më vonë, përdorni të njëjtën mënyrë për të ndarë të dhënat e tjera për të ndarë librat e punës në Excel.
Metoda 2: Ndarja e përmbajtjeve në grupe në libra të shumtë të Excel-it nëpërmjet VBA
- Në radhë të parë, sigurohuni që të hapet fleta specifike e punës.
- Më pas, hapni redaktorin VBA sipas "Si të ekzekutoni kodin VBA në Excel".
- Më pas, vendosni kodin e mëposhtëm në projektin "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
- Pas kësaj, klikoni ikonën "Run" në shiritin e veglave ose shtypni butonin "F5".
- Kur të përfundojë makroja, do të krijohen libra të veçantë të Excel-it me të dhënat e ndara nga fleta e punës e Excel-it.
- Çdo libër pune do të duket si pamja e mëposhtme e ekranit.
Krahasim
| Përparësitë | Disavantazhet | |
| Metoda 1 | 1. Lehtë për t'u përdorur për të gjithë përdoruesit e Excel | Probleme nëse ka shumë zgjedhje filtri |
| 2. Shpejt nëse ka pak zgjedhje filtri | ||
| Metoda 2 | Shumë më efikase se Metoda 1 pa marrë parasysh sasinë e zgjedhjeve të filtrit | Pak e vështirë për t'u përdorur për fillestarët e VBA |
Parandalimi i humbjes së të dhënave në Excel
Megjithëse MS Excel po bëhet gjithnjë e më i avancuar dhe i sofistikuar, ai ende tenton të dështojë herë pas here për shkak të faktorëve të ndryshëm, si shtesat me qëllim të keq të palëve të treta ose gabimet njerëzore etj. Meqenëse rrëzimi i Excel mund të çojë drejtpërdrejt në Korrupsioni në Excel, në mënyrë që të shmangni humbjen e të dhënave në Excel, duhet të kopjoni skedarët tuaj Excel rregullisht. Përndryshe, duhet të aplikoni një mjet riparimi Excel, si p.sh DataNumen Excel Repair për të rregulluar skedarët e dëmtuar të Excel.
Hyrje e autorit:
Shirley Zhang është një eksperte për rikuperimin e të dhënave DataNumen, Inc., e cila është lider botëror në teknologjitë e rikuperimit të të dhënave, duke përfshirë SQL Server riparim dhe produkte softuerike të riparimit të pamjes. Për më shumë informacion vizitoni www.datanumen.com







