Namig: drugi jeziki so prevedeni v Google. Lahko obiščete English različico te povezave.
Vpiši se
x
or
x
x
Registracija
x

or

Kako ustvariti nove liste za vsako vrstico v Excelu?

Predpostavljajte, da imate tabelo rezultatov z vsemi študentovim imenom v stolpcu A. Zdaj želite ustvariti nove liste na podlagi teh imen v stolpcu A in narediti na listu en edinstveni podatki študenta. Ali pa samo ustvarite nov list za vsako vrstico na mizi, ne da bi upoštevali ime v stolpcu A. V tem članku boste dobili načine za dosego tega.

Ustvari nove liste za vsako vrstico s kodo VBA

Ustvari nove liste za vsako vrstico s pripomočkom Split Data za Kutools za Excel


Preprosto ustvarjanje novih listov za vsako vrstico ali glede na določeno vrednost stolpca v Excelu:

Če imate Kutools za Excel, njegovo korist - Spletni podatki vam lahko pomaga hitro ustvariti nove liste na podlagi določenih vrednosti kupca ali ustvariti nove liste za vsako vrstico v Excelu. Prikaz slike:

Kutools za Excel: z več kot 200 priročnimi dodatki Excel, lahko brezplačno poskusite brez omejitev v dnevih 60. Prenesite in brezplačno preizkusite zdaj!


Ustvari nove liste za vsako vrstico s kodo VBA


Z naslednjimi kodami lahko ustvarite nov list glede na vrednosti stolpcev ali ustvarite nove liste za vsako vrstico v Excelu.

1. Pritisnite druga + F11 tipke hkrati odpreti Microsoft Visual Basic za aplikacije okno.

2. V Ljubljani Microsoft Visual Basic za aplikacije okno, kliknite Vstavi > Moduli. In nato prilepite naslednjo kodo v Moduli okno.

VBA koda: ustvarite nov list za vsako vrstico, ki temelji na stolpcu

Sub parse_data()
'Update by Extendoffice 2018/3/2
    Dim xRCount As Long
    Dim xSht As Worksheet
    Dim xNSht As Worksheet
    Dim I As Long
    Dim xTRrow As Integer
    Dim xCol As New Collection
    Dim xTitle As String
    Dim xSUpdate As Boolean
    Set xSht = ActiveSheet
    On Error Resume Next
    xRCount = xSht.Cells(xSht.Rows.Count, 1).End(xlUp).Row
    xTitle = "A1:C1"
    xTRrow = xSht.Range(xTitle).Cells(1).Row
    For I = 2 To xRCount
        Call xCol.Add(xSht.Cells(I, 1).Text, xSht.Cells(I, 1).Text)
    Next
    xSUpdate = Application.ScreenUpdating
    Application.ScreenUpdating = False
    For I = 1 To xCol.Count
        Call xSht.Range(xTitle).AutoFilter(1, CStr(xCol.Item(I)))
        Set xNSht = Nothing
        Set xNSht = Worksheets(CStr(xCol.Item(I)))
        If xNSht Is Nothing Then
            Set xNSht = Worksheets.Add(, Sheets(Sheets.Count))
            xNSht.Name = CStr(xCol.Item(I))
        Else
            xNSht.Move , Sheets(Sheets.Count)
        End If
        xSht.Range("A" & xTRrow & ":A" & xRCount).EntireRow.Copy xNSht.Range("A1")
        xNSht.Columns.AutoFit
    Next
    xSht.AutoFilterMode = False
    xSht.Activate
    Application.ScreenUpdating = xSUpdate
End Sub

Opombe: A1: naslov C1 je vaša tabela. To lahko spremenite glede na vaše potrebe.

3. Pritisnite F5 ključ za zagon kode, nato pa se po vseh delovnih preglednicah trenutne delovne knjige ustvarijo novi delovni listi, ki so pod sliko spodaj:

Če želite neposredno ustvariti nove liste za vsako vrstico, ne da bi upoštevali vrednost stolpca, lahko uporabite naslednjo kodo.

VBA koda: Neposredno ustvarite nov list za vsako vrstico

Sub RowToSheet()
	Dim xRow As Long
	Dim I As Long
	With ActiveSheet
		xRow = .Range("A" & Rows.Count).End(xlUp).Row
		For I = 1 To xRow
			Worksheets.Add(, Sheets(Sheets.Count)).Name = "Row " & I
			.Rows(I).Copy Sheets("Row " & I).Range("A1")
		Next I
	End With
End Sub

Po zagonu kode bo vsaka vrstica v aktivnem delovnem listu postavljena v nov delovni list.

Opombe: Vrstica naslova bo tudi v novem listu s to kodo VBA.


Ustvari nove liste za vsako vrstico s pripomočkom Split Data za Kutools za Excel

Pravzaprav je zgornja metoda zapletena in težko razumljiva. V tem poglavju vam predstavljamo Spletni podatki uporabnost Kutools za Excel.

Kutools za Excel : z več kot 300 priročnimi dodatki Excel, brezplačno lahko poskusite brez omejitev v 60 dneh.

1. Izberite tabelo, ki jo potrebujete za ustvarjanje novih listov, in nato kliknite Kutools Plus> Podatki pljuvanja. Prikaz slike:

2. V Ljubljani Razdelite podatke v več delovnih listov pogovorno okno, naredite, kot sledi.

A. Za ustvarjanje novih listov na podlagi vrednosti stolpca:

1). Prosimo, izberite Posebni stolpec možnost in določite stolpec, na katerega želite razdeliti podatke, ki temeljijo na spustnem seznamu;

2). Če želite delovne liste poimenovati s vrednostmi stolpcev, izberite Vrednosti stolpca v Pravila spustni seznam;

3). Kliknite na OK gumb. Prikaz slike:

B. Za neposredno izdelavo novih listov za vsako vrstico:

1). Izberite Fiksne vrstice možnost, vnesite številko 1 v škatlo;

2). Izberite Vrstice Iz Pravila spustni seznam;

3). Kliknite na OK gumb. Prikaz slike:

z novimi listi je ustvarjen nov delovni zvezek. Glej slike spodaj.

Ustvarjanje novih listov za vsako vrstico glede na vrednost stolpca:

Ustvarjanje novega lista za vsako vrstico brez upoštevanja vrednosti stolpca:

Ustvari nove liste za vsako vrstico s pripomočkom Split Data za Kutools za Excel

Kutools za Excel vključuje več kot 300 priročno orodje Excel. Prosti brez omejitev v 60 dneh. Prenesite brezplačen preskus zdaj!


Priporočena orodja za produktivnost za Excel

zavihek kte 201905

Kutools za Excel vam pomaga, da vedno končate delo pred časom in izstopite iz množice

  • Več kot zmogljive napredne funkcije 300, zasnovane za 1500 delovne scenarije, ki povečujejo produktivnost z 70%, vam dajejo več časa za skrb za družino in uživanje v življenju.
  • Ne potrebujete več pomnilniških formul in VBA kod, od zdaj naprej pa dajate svojim možganom počitek.
  • Postanite strokovnjak za Excel v minutah 3, zapletene in ponavljajoče se operacije lahko opravite v nekaj sekundah,
  • Vsak dan zmanjšajte število operacij tipkovnice in miške, zdaj se poslovite od poklicnih bolezni.
  • 110,000 visoko učinkovite ljudi in 300 + svetovno priznanih podjetij izbiro.
  • Brezplačna preizkusna različica 60 dneva. 60-dnevno jamstvo vračila denarja. 2 let brezplačne nadgradnje in podpore.

Prinaša kartično brskanje in urejanje za Microsoft Office, veliko močnejši od zavihkov brskalnika

  • Office Tab je namenjen za Word, Excel, PowerPoint in druge Office aplikacije: Založnik, Dostop, Visio in Projekt.
  • Odprite in ustvarite več dokumentov v novih zavihkih istega okna in ne v novih oknih.
  • Z 50% poveča vašo produktivnost in vsak dan zmanjša na stotine klikov z miško!
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.
    ComplianceHound · 4 months ago
    This is great code. Many thanks to brain-boxes at OfficeExtend !! Is there anyway this code could be slightly adapted to to create separate sheets for each *column* instead of row? I've attached a picture of what I'm trying to achieve. Is this possible? Kind regards.
  • To post as a guest, your comment is unpublished.
    Sam · 4 months ago
    Great code, but could I get some help if I my data is on column G instead of column A? what do I need to change to have the Column G data in different tab?

    Thanks
  • To post as a guest, your comment is unpublished.
    Michele · 7 months ago
    Hi, is there a way to keep the heading row on each new worksheet? (circled in red on my attachment)

    The code takes all the rows from my master worksheet and transfers them into new worksheets, which is great. But I want to keep my "master" header value (circled in red) at the top of each new worksheet. Thanks!



    I'm referring to this code from above:

    Sub RowToSheet()
    Dim xRow As Long
    Dim I As Long
    With ActiveSheet
    xRow = .Range("A" & Rows.Count).End(xlUp).Row
    For I = 1 To xRow
    Worksheets.Add(, Sheets(Sheets.Count)).Name = "Row " & I
    .Rows(I).Copy Sheets("Row " & I).Range("A1")
    Next I
    End With
    End Sub
  • To post as a guest, your comment is unpublished.
    BK TAN · 10 months ago
    Hello, I think there is something useful here for my situation, but I'm able to to do VBA or script, hope you can help.
    I have a template w/ many cells to fill with data, and there will be a search key (non unique) that I would like to enter into the template. Based on the search key, the data is searched and corresponding data on the matched key is fetched and filled into the template. The filled template is saved into a new worksheet. There maybe more than 1 match entries. I need the script to continue search down the list, until all matches are picked, and the certain number of new worksheets created.
  • To post as a guest, your comment is unpublished.
    Beatriz · 1 years ago
    Hello I tried to use your code but I get an error
    Run-timeerror '1004':
    Application-defined or object-defined error
    I have no knowledge of VBA (or any technology for that matter) but if a press debug it highlights line 11 xRCount=xSht.Cells(xSht.Rows.Count,1). End(xIUp).Row
    I am working with a large file that has 127 columns and 337 rows (rows will vary columns won't) and it is a list with I'd numbers and their details.
    I did change the range as you noted but still doesn't work I'm using Excel 2010 could you please tell me how to make it work if possible
    Thank you
    • To post as a guest, your comment is unpublished.
      crystal · 1 years ago
      Dear Beatriz,
      The code is updated with the problem solving. Please try it again. Thank you for your comment.