Sisukord
Suur andmekogum võib sisaldada mitu väärtust, mis põhinevad samal veerul. Kui soovite, saate jagada samade kategooriate (osakond, kuu, piirkond, riigid jne) väärtused või oma eelistused erinevatele töölehtedele või töövihikutele. Selles artiklis selgitan, kuidas jagada Exceli leht mitmeks töölehele.
Et see selgitus teile selgemaks teha, kasutan ma näidisandmestikku. Andmestikus on 4 veergu, mis kujutavad eri kuude müügiinfot. Need veerud on järgmised Müügiinimene, piirkond, kuu, ja Müük .
Lae alla praktikasse
Exceli lehe jagamine mitmeks tööleheks.xlsmVõimalused Exceli lehe jagamiseks mitmeks tööleheks
1. Filtri ja koopia kasutamine
Mis tahes lehel saate jagada andmed mitmele lehele, kasutades selleks funktsiooni Filter .
Kõigepealt valige lahtrivahemik, kus soovite rakendada Filter .
➤ Siin ma valisin rakkude vahemiku B3:E15 .
Seejärel avage Andmed tab>> valige Filter .
Võite kasutada ka CTRL + SHIFT + L kohaldada Filter klaviatuuri kasutamine .
Nüüd, Filter kohaldatakse valitud lahtrite vahemiku suhtes.
Seejärel klõpsake nupule Kuu veergu, sest ma tahan jagada andmeid sõltuvalt Kuu väärtused.
Sealt ma deselected kõik peale Jaanuar . Lõpuks klõpsake OK .
Nüüd kõik väärtused, kus Kuu on Jaanuar filtreeritakse.
Siis, Koopia andmed ja Paste see uuele töölehele.
Siin ma nimetasin uue lehe Jaanuar. Seega näete kogu müügiteavet Jaanuar on esitatud siin.
Ülejäänud osa Kuu võite järgida samu protseduure.
Klõpsake jälle nupule Kuu veergu, sest ma tahan jagada andmeid sõltuvalt Kuu väärtused.
Sealt edasi Tühista valik kõik peale Veebruar . Lõpuks klõpsake OK .
Nüüd on kõik väärtused Veebruar Kuu filtreeritakse.
Siis, Koopia andmed ja Paste see uuele töölehele.
Hiljem nimetasin uue lehe Veebruar. Seega näete kogu müügiinfot, mis on seotud Kuu aadressilt Veebruar on esitatud siin.
Klõpsake jälle nupule Kuu veergu, sest ma tahan jagada andmeid sõltuvalt Kuu väärtused.
Sealt edasi Tühista valik kõik peale Märts . Lõpuks klõpsake OK .
Nüüd näete kõiki väärtusi Märts filtreeritakse.
Siis, Koopia andmed ja Paste see uuele töölehele.
Lõpuks nimetasin uue lehe Märts Seega näete kogu müügiteavet järgmise kohta Märts on esitatud siin.
Loe edasi: Exceli lehe jagamine mitmeks leheks ridade põhjal
2. Exceli lehe jagamine ridade arvu alusel VBA abil
Enne protseduuri alustamist tuleb meeles pidada, et andmeid tuleb alustada esimestest ridadest.
Nüüd avage Arendaja tab>> valige Visual Basic
See avab uue akna Microsoft Visual Basic for Applications .
Nüüd, alates Sisesta >> valige Moodul
A Moodul avatakse seal.
Seejärel kirjutage järgmine kood Moodul .
Sub SplitExcelSheet_into_MultipleSheets() Dim WorkRng As Range Dim xRow As Range Dim SplitRow As Integer Dim xWs As Worksheet On Error Resume Next EcelTitleId = "Split Row Numt" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox("Range", ExcelTitleId, WorkRng.Address, Type:=8) SplitRow = Application.InputBox("Split Row Num", ExcelTitleId, 4, Type:=1) Set xWs = WorkRng.ParentSet xRow = WorkRng.Rows(1) Application.ScreenUpdating = False For i = 1 To WorkRng.Rows.Count Step SplitRow resizeCount = SplitRow If (WorkRng.Rows.Count - xRow.Row + 1) <SplitRow Then resizeCount = WorkRng.Rows.Count - xRow.Row + 1 xRow.Resize(resizeCount).Copy Application.Worksheets.Add after:=Application.Worksheets(Application.Worksheets.Count)Application.ActiveSheet.Range("A1").PasteSpecial Set xRow = xRow.Offset(SplitRow) Next Application.CutCopyMode = False Application.ScreenUpdating = True End Sub
Siin olen loonud alamprotseduuri nimega SplitExcelSheet_into_MultipleSheets .
Kui ma deklareerisin paar muutujat, siis need on järgmised WorkRng ja xRow nagu Range tüüp siis
SplitRow nagu Tervearvuline ka xWs nagu Tööleht tüüp.
Samuti kasutatud ExcelTitleId anda dialoogiboks pealkiri.
Olen andnud jagatud rea numbri 4 jagada andmed 4 rea kaupa, sest minu andmestikus on Kuu aadressilt Jaanuar on 4 rida.
Lõpuks kasutas Sest loop to SplitRow kuni antud lahtri vahemik lõpeb.
Siis, Salvesta koodi ja minge tagasi töölehele.
Nüüd avage Arendaja tab>> Alates Sisesta >> valige Nupp
A dialoogiboks avaneb.
Määrata Makro sisestatud Nupp .
Valige SplitExcelSheet_into_Multiplesheets alates Makro nimi seejärel klõpsake OK .
Lihtsalt klõpsake Nupp et käivitada Makro .
Nüüd on dialoogiboks avaneb, kuhu saab panna andmed vahemik.
➤ Siin ma valisin rakkude vahemiku B1:E12
Seejärel klõpsake OK .
Teine dialoogiboks avaneb, et näidata teile valitud ridade arvu, mille te juba andmekogumi jagamise koodis esitasite.
➤ Koodis esitasin järgmised andmed 4 nagu Jagatud rea number
Kuna ma olen kokku 12 read nii koos 4 rida seal on 3 lehte .
Veebilehel Leht1 näete esimese 4 rea andmeid.
Veebilehel Leht2 näete ridade 5-8 andmeid.
Veebilehel Leht3 näete viimase 4 rea andmeid.
Loe edasi: Excel VBA: lehe jagamine mitmeks leheks ridade põhjal
Sarnased lugemised
- Kuidas jagada ekraani Excelis (3 võimalust)
- [Fix:] Excel View Side by Side ei tööta
- Kuidas eraldada lehed Excelis (6 tõhusat viisi)
- Avage kaks Exceli faili eraldi (5 lihtsat meetodit)
- Kuidas jagada Exceli leht mitmeks failiks (3 kiiret meetodit)
3. Exceli lehe jagamine mitmeks töövihikuks veeru põhjal
Enne protseduuriga alustamist tuleb meeles pidada, et andmeid tuleb alustada esimesest reast ja esimesest veerust.
Nüüd avage Arendaja tab>> valige Visual Basic
See avab uue akna Microsoft Visual Basic for Applications .
Nüüd, alates Sisesta >> valige Moodul
A Moodul avatakse seal.
Seejärel kirjutage järgmine kood Moodul .
Sub SplitSheetIntoMultipleWorkbooksBasedOnColumn() 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 strColumnValue = objWorksheet.Range("C" & nRow).Value If objDictionary.Exists(strColumnValue) = False Then objDictionary.Add strColumnValue, 1 End If Next varColumnValues = objDictionary.KeysFor i = LBound(varColumnValues) To UBound(varColumnValues) varColumnValue = varColumnValues(i) 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.PasteFor nRow = 2 To nLastRow If CStr(objWorksheet.Range("C" & nRow).Value) = CStr(varColumnValue) Then objWorksheet.Rows(nRow).EntireRow.Copy nNextRow = objSheet.Range("A" & objWorksheet.Rows.Count).End(xlUp).Row + 1 objSheet.Range("A" & nNextRow).Select objSheet.PasteobjSheet.Columns("A:D").AutoFit End If Next Next End Sub
Siin olen loonud alamprotseduuri nimega SplitSheetIntoMultipleWorkbooksBasedOnColumn , kus ma deklareerisin mitu muutujat.
Ma kasutasin 3 FOR ringid. 1. FOR loop loeb read alates reast 2 kuni viimase reani väärtuseni, et saada konkreetne veerg. Olen andnud instantsi "C" veerus.
Saate seda muuta oma juhtumi järgi
2. Sest tsükkel loob uue Exceli töövihiku.
Kolmas Fo r loop kopeerib andmed sama veeruga "C" väärtus uude töövihikusse alates 2. reast kuni viimase reani väärtuseni.
Siis, Salvesta koodi ja minge tagasi töölehele.
Nüüd avage Vaata tab>> Alates Makros >> valige Vaata makrosid
A dialoogiboks avaneb.
Nüüd, alates Makro nimi valige SplitSheetIntoMultipleWorkbooksBasedOnColumn valige ka töövihik sees Makrode kasutamine .
Lõpuks, Käivita valitud Makro .
Lõpuks näete, et on loodud 3 uut töövihikut, kuna on 3 erinevat Kuu veerus C . Raamat1 . Jaanuar .
The Raamat2 jaoks Veebruar .
The Raamat3 . Märts .
Loe edasi: Kuidas jagada Exceli leht mitmeks leheks veeru väärtuse alusel
Kokkuvõte
Selles artiklis olen selgitanud 3 viisi, kuidas jagada Exceli leht mitmeks tööleheks. Saate järgida mõnda selgitatud viisi, kuidas jagada oma Exceli leht mitmeks tööleheks. Kui teil on nende meetodite kohta segadust või küsimusi, võite kommenteerida allpool.