Բաց թողնել հիմնական բովանդակությունը

Ինչպե՞ս ստեղծել Excel- ում յուրաքանչյուր տողի համար նոր թերթեր:

Ենթադրենք, որ դուք ունեք միավորների աղյուսակ՝ A սյունակում բոլոր ուսանողի անուններով: Այժմ դուք ցանկանում եք ստեղծել նոր թերթիկներ՝ հիմնվելով A սյունակի այս անունների վրա, և յուրաքանչյուր թերթիկը պարունակում է եզակի ուսանողի տվյալներ: Կամ պարզապես աղյուսակի յուրաքանչյուր տողի համար ստեղծեք նոր թերթ՝ առանց հաշվի առնելու Ա սյունակի անունները: Այս վեդիոյում դուք կստանաք դրան հասնելու մեթոդներ:

Յուրաքանչյուր շարքի համար ստեղծեք նոր թերթեր VBA կոդով
Յուրաքանչյուր շարքի համար ստեղծեք նոր թերթեր Excel- ի համար Kutools- ի Split Data օգտակար ծառայության միջոցով


Յուրաքանչյուր շարքի համար ստեղծեք նոր թերթեր VBA կոդով

Հետևյալ կոդերով դուք կարող եք ստեղծել նոր թերթ `հիմնվելով սյունակի արժեքների վրա, կամ պարզապես Excel- ում յուրաքանչյուր տողի համար պարզապես ստեղծել նոր թերթեր:

1. Մամուլ ալտ + F11 ստեղները միաժամանակ բացելու համար Microsoft Visual Basic հավելվածների համար պատուհան.

2. Մեջ Microsoft Visual Basic հավելվածների համար պատուհանը, սեղմեք Տեղադրել > Մոդուլներ, Եվ հետո տեղադրեք հետևյալ կոդը ՝ Մոդուլներ պատուհան.

VBA կոդ. Սյունակի հիման վրա յուրաքանչյուր շարքի համար ստեղծեք նոր թերթ

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

Նշում: A1: C1- ը ձեր սեղանի վերնագրի տիրույթն է: Կարող եք փոխել ՝ ելնելով ձեր կարիքներից:

3. Մամուլ F5 Կոդը գործարկելու բանալին, ապա ստեղծվում են նոր աշխատանքային թերթեր ընթացիկ աշխատանքային գրքի բոլոր աշխատանքային թերթերից հետո, ինչպես ցույց է տրված ստորև նշված էկրանի նկարը.

Եթե ​​ցանկանում եք յուրաքանչյուր շարքի համար ուղղակիորեն ստեղծել նոր թերթեր ՝ առանց սյունակի արժեքը հաշվի առնելու, կարող եք օգտագործել հետևյալ ծածկագիրը:

VBA կոդ. Յուրաքանչյուր տողի համար ուղղակիորեն ստեղծեք նոր թերթ

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

Կոդը գործարկելուց հետո յուրաքանչյուր աշխատանքային տողը ակտիվ աշխատաթերթում կտեղադրվի նոր աշխատանքային թերթում:

ՆշումՎերնագրի տողը նույնպես կտեղադրվի այս VBA կոդով նոր թերթի մեջ:


Յուրաքանչյուր շարքի համար ստեղծեք նոր թերթեր Excel- ի համար Kutools- ի Split Data օգտակար ծառայության միջոցով

Իրականում, վերոնշյալ մեթոդը բարդ է և դժվար է հասկանալ: Այս բաժնում մենք ձեզ ներկայացնում ենք Տրոհված տվյալներ օգտակարությունը Excel- ի համար նախատեսված գործիքներ.

Նախքան դիմելը Excel- ի համար նախատեսված գործիքներ, խնդրում եմ նախ ներբեռնեք և տեղադրեք այն.

1. Ընտրեք աղյուսակը, որը դուք պետք է օգտագործեք նոր թերթեր ստեղծելու համար, և այնուհետև կտտացրեք Kutools Plus> Թքել տվյալները, Տեսեք,

2. Մեջ Տվյալները բաժանեք մի քանի աշխատանքային թերթերի երկխոսության տուփ, խնդրում ենք անել հետևյալ կերպ.

A. Սյունակի արժեքի հիման վրա նոր թերթեր ստեղծելու համար.

1) Խնդրում ենք ընտրել Հատուկ սյունակ տարբերակը և նշեք այն սյունակը, որի վրա ցանկանում եք բաժանել տվյալները ՝ իջնող ցուցակում:
2) Եթե ​​ցանկանում եք անվանել սյունակի արժեքներով աշխատաթերթերը, ընտրեք Սյունակի արժեքները է Կանոններ բացվող ցուցակ;
3) Սեղմիր OK կոճակ Տեսեք,

B. Յուրաքանչյուր շարքի համար նոր թերթեր ուղղակիորեն ստեղծելու համար.

1) Ընտրեք Ֆիքսված շարքեր տարբերակ, մուտքագրեք համարը 1 տուփի մեջ;
2) Ընտրեք Տողի համարներ - ից Կանոններ բացվող ցուցակ;
3) Սեղմիր OK կոճակ Տեսեք,

ստեղծվում է նոր աշխատանքային գրքույկ, որի ներսում կան բոլոր նոր թերթերը: Տեսեք սքրինշոթերը ստորև:

Յուրաքանչյուր տողի համար սյունակի արժեքի հիման վրա նոր թերթերի ստեղծում.

Յուրաքանչյուր շարքի համար նոր թերթի ստեղծում ՝ առանց սյունակի արժեքը հաշվի առնելու.

  Եթե ​​ցանկանում եք ունենալ այս օգտակար ծառայության անվճար փորձարկում (30-օրյա), խնդրում ենք կտտացնել այն ներբեռնելու համար, և այնուհետև անցեք գործողությունը կիրառելու վերը նշված քայլերին համապատասխան:

Յուրաքանչյուր շարքի համար ստեղծեք նոր թերթեր Excel- ի համար Kutools- ի Split Data օգտակար ծառայության միջոցով

Գրասենյակի արտադրողականության լավագույն գործիքները

🤖 Kutools AI օգնականՀեղափոխություն կատարել տվյալների վերլուծության հիման վրա՝ Խելացի կատարում   |  Ստեղծեք ծածկագիր  |  Ստեղծեք հատուկ բանաձևեր  |  Վերլուծել տվյալները և ստեղծել գծապատկերներ  |  Invoke Kutools-ի գործառույթները...
Հանրաճանաչ հատկություններ: Գտեք, ընդգծեք կամ նույնականացրեք կրկնօրինակները   |  Deleteնջել դատարկ շարքերը   |  Միավորել սյունակները կամ բջիջները՝ առանց տվյալների կորստի   |   Կլոր առանց բանաձևի ...
Super Փնտրել: Բազմաթիվ չափանիշների VLookup    Բազմակի արժեք VLookup  |   VLookup բազմաթիվ թերթերում   |   Fuzzy Փնտրել ....
Ընդլայնված բացվող ցուցակ: Արագ ստեղծեք բացվող ցուցակը   |  Կախված բացվող ցուցակ   |  Բազմակի ընտրություն Drop Down ցուցակ ....
Սյունակի կառավարիչ: Ավելացրեք որոշակի քանակությամբ սյունակներ  |  Տեղափոխել սյունակները  |  Փոխարկել թաքնված սյունակների տեսանելիության կարգավիճակը  |  Համեմատեք միջակայքերը և սյունակները ...
Առանձնահատկություններ: Ցանցի կենտրոնացում   |  Դիզայնի տեսք   |   Մեծ Formula Bar    Աշխատանքային գրքույկի և թերթիկների կառավարիչ   |  Ռեսուրսների գրադարան (Ավտոմատ տեքստ)   |  Ամսաթիվ ընտրող   |  Միավորել աշխատանքային թերթերը   |  Գաղտնագրել/գաղտնազերծել բջիջները    Ուղարկեք նամակներ ըստ ցանկի   |  Սուպեր զտիչ   |   Հատուկ զտիչ (զտել թավ/շեղ/շեղված...) ...
Լավագույն 15 գործիքների հավաքածու12 Տեքստ Գործիքներ (Ավելացրեք տեքստ, Հեռացնել նիշերը, ...)   |   50+ Աղյուսակ Տեսակներ (Գանտի աղյուսակը, ...)   |   40+ Գործնական Բանաձեւեր (Հաշվարկել տարիքը ՝ ելնելով ծննդյան տարեդարձից, ...)   |   19 միացում Գործիքներ (Տեղադրեք QR կոդ, Տեղադրեք նկար ուղուց, ...)   |   12 Փոխարկում Գործիքներ (Բառեր համարներ, Արտարժույթի փոխակերպումը, ...)   |   7 Միաձուլում և պառակտում Գործիքներ (Ընդլայնված կոմբինատ տողեր, Պառակտված բջիջներ, ...)   |   ... եւ ավելին

Լրացրեք ձեր Excel-ի հմտությունները Kutools-ի հետ Excel-ի համար և փորձեք արդյունավետությունը, ինչպես երբեք: Kutools-ը Excel-ի համար առաջարկում է ավելի քան 300 առաջադեմ առանձնահատկություններ՝ արտադրողականությունը բարձրացնելու և ժամանակ խնայելու համար:  Սեղմեք այստեղ՝ Ձեզ ամենաշատ անհրաժեշտ հատկանիշը ստանալու համար...

Նկարագրություն


Office Tab- ը Tabbed ինտերֆեյսը բերում է Office, և ձեր աշխատանքը շատ ավելի դյուրին դարձրեք

  • Միացնել ներդիրներով խմբագրումը և ընթերցումը Word, Excel, PowerPoint- ով, Հրատարակիչ, Access, Visio և Project:
  • Բացեք և ստեղծեք բազմաթիվ փաստաթղթեր նույն պատուհանի նոր ներդիրներում, այլ ոչ թե նոր պատուհաններում:
  • Բարձրացնում է ձեր արտադրողականությունը 50%-ով և նվազեցնում մկնիկի հարյուրավոր սեղմումները ձեզ համար ամեն օր:
Comments (33)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
HI, Thanks for this wonder-full code, Can we get dynamic sheet, means if i update data in respective sheet it will get updated in main sheet.
This comment was minimized by the moderator on the site
Hi vikas chandra,
I can't fix this problem. Sorry about that.
This comment was minimized by the moderator on the site
Hi, I have a problem about title, the title range of my table is A1:AI2, when I changed the code like that it doesn't work.

***Note: A1:C1 is the title range of your table. You can change it based on your needs.***
This comment was minimized by the moderator on the site
Hello, thanks so much for this. I'm looking to modify the macro such that it will create a sheet for each row of a column and within each sheet have a function (average) that I can populate data into and in turn have the outcome linked back into the original sheet. Is this possible? I can try to clarify further if this doesn't make sense or is ambiguous.
This comment was minimized by the moderator on the site
Hi, is there a code which would add only 1 new sheet each time the macro is run, eg 1st time the new sheet would be named on the contents of cell A1, 2nd time the macro was run the new sheet would be named on the contents of A2 etc. thanks in anticipation
This comment was minimized by the moderator on the site
Hello, used this code and worked, but If I want select the more then one rows in header, what will be change in the code ? I have multiple lines in the sheet which I want in every sheet.
This comment was minimized by the moderator on the site
Hello, did you figured out how?
This comment was minimized by the moderator on the site
Hello! I just used this code and it worked! In addition to creating a new sheet for each entry, I want to transpose it to columns and can't figure it out. So for the above example, the output for Nana would look like this - Name NanaScore 86No. 2
This comment was minimized by the moderator on the site
<p> Nana
86
2</p>
This comment was minimized by the moderator on the site
How to reference the use of the code above (credit) ? Is it possible to modify the code ?
This comment was minimized by the moderator on the site
Hi, this is an open communication platform. The code is allowed to reference and modify.
This comment was minimized by the moderator on the site
Nevermind it was hidden trailing spaces. I used the TRIM feature and cleaned it up. Having a row count (line count really so rows -1 prepended to the sheet would be amazing)
This comment was minimized by the moderator on the site
Please can i get help on how to automatically name the sheets using a particular column. This is for the row to sheet VBA. See below

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
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations