Note: The other languages of the website are Google-translated. Back to English

Ինչպե՞ս ստեղծել 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 օգտակար ծառայության միջոցով


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

Excel-ի համար Kutools-ը լուծում է ձեր խնդիրների մեծ մասը և բարձրացնում ձեր արտադրողականությունը 80%-ով

  • Վերաօգտագործել: Արագ տեղադրեք բարդ բանաձևեր, գծապատկերներ և այն ամենը, ինչ դուք նախկինում օգտագործել եք. Ryածկագրել բջիջները գաղտնաբառով; Ստեղծեք փոստային ցուցակ և նամակներ ուղարկել ...
  • Super Formula Bar (հեշտությամբ խմբագրեք տեքստի և բանաձևի բազմաթիվ տողեր); Ընթերցանության դասավորությունը (հեշտությամբ կարդալ և խմբագրել մեծ թվով բջիջներ); Տեղադրել ֆիլտրացված տիրույթում...
  • Միաձուլել բջիջները / տողերը / սյունակները առանց տվյալների կորստի. Պառակտված բջիջների պարունակությունը; Միավորել կրկնօրինակ տողերը / սյունակները... Կանխել կրկնօրինակ բջիջները; Համեմատեք միջակայքերը...
  • Ընտրեք Կրկնօրինակ կամ Եզակի Շարքեր; Ընտրեք դատարկ շարքեր (բոլոր բջիջները դատարկ են); Super Find և Fuzzy Find շատ աշխատանքային գրքույկներում; Պատահական ընտրություն ...
  • Actշգրիտ պատճեն Բազմաթիվ բջիջներ ՝ առանց բանաձևի հղումը փոխելու; Ավտոմատ ստեղծեք հղումներ դեպի մի քանի թերթեր; Տեղադրեք փամփուշտներ, Տուփեր և ավելին ...
  • Քաղվածք տեքստ, Տեքստ ավելացնել, հեռացնել ըստ դիրքի, Հեռացնել տարածությունը; Ստեղծել և տպել էջային ենթագոտիներ; Փոխարկել բջիջների բովանդակության և մեկնաբանությունների միջև...
  • Սուպեր զտիչ (պահպանել և կիրառել ֆիլտրի սխեմաները այլ թերթերի վրա); Ընդլայնված տեսակավորում ըստ ամիս / շաբաթ / օր, հաճախականություն և ավելին; Հատուկ զտիչ համարձակ, շեղատառով ...
  • Միավորել աշխատանքային տետրերը և աշխատանքային թերթերը; Միավորել աղյուսակները ՝ հիմնված հիմնական սյունակների վրա; Տվյալները բաժանեք մի քանի թերթերի; Խմբաքանակի փոխակերպում xls, xlsx և PDF...
  • Ավելի քան 300 հզոր հատկություններ. Աջակցում է Office / Excel 2007-2021 և 365: Աջակցում է բոլոր լեզուներին: Հեշտ տեղակայում ձեր ձեռնարկությունում կամ կազմակերպությունում: Ամբողջական հնարավորություններ 30-օրյա անվճար փորձարկում: 60-օրյա գումարի վերադարձի երաշխիք:
kte էջանիշը 201905

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

  • Միացնել ներդիրներով խմբագրումը և ընթերցումը Word, Excel, PowerPoint- ով, Հրատարակիչ, Access, Visio և Project:
  • Բացեք և ստեղծեք բազմաթիվ փաստաթղթեր նույն պատուհանի նոր ներդիրներում, այլ ոչ թե նոր պատուհաններում:
  • Բարձրացնում է ձեր արտադրողականությունը 50%-ով և նվազեցնում մկնիկի հարյուրավոր սեղմումները ձեզ համար ամեն օր:
officetab ներքևում
Տեսակավորել մեկնաբանությունները ըստ
մեկնաբանություններ (33)
Դեռևս գնահատականներ չկան: Եղիր առաջինը, ով կգնահատի:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարև ձեզ, ես ուզում եմ ստեղծել աշխատանքային թերթեր՝ հիմնվելով իմ ձևանմուշի Myformat ֆայլի վրա և անվանել դրանք՝ ըստ առաջին սյունակի տվյալների: Ես հարմարեցրեցի VBA կոդը հետևյալ կերպ, բայց այն չափազանց շատ դատարկ թերթեր է առաջացնում: Խնդրում եմ, կարող եք օգնել ինձ դադարեցնել դատարկ թերթեր ստեղծելը: Շնորհակալություն. Kumar Sub AddSheets() Dim բջիջը որպես Excel.Range Dim wsWithSheetNames As Excel.Worksheet Dim wbToAddSheetsTo As Excel.Workbook Set wsWithSheetNames = ActiveSheet Սահմանել wbToAddSheetSet wbToAddSheetsTo = ActiveWithSheetsTo = ActiveWithSheetsTo = ActiveWithSheets. Ավելացնել հետո:=ActiveSheet Sheets.Add Type:= _ "C:\Users\Dimple\AppData\Roaming\Microsoft\Templates\MyFormat.xltx" Սխալի դեպքում Resume Next ActiveSheet.Name = cell.Value If Err.Number = 2 Ապա Վրիպազերծել.Տպել բջիջը.Արժեքը և «արդեն օգտագործվել է որպես թերթի անուն» Ավարտել, եթե սխալվել է Գնալ դեպի 165 Ավարտել հաջորդ բջիջով:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ողջու՜յն,
Ես միշտ ստանում եմ 2 թերթ յուրաքանչյուր եզակի մուտքի համար տողում: Որևէ գաղափար, թե ինչու: Նաև որքան դժվար կլինի ստեղծած թերթի ստեղծած տողերի ընդհանուր քանակությունը թերթի անվանը վերագրել: Շատ շնորհակալություն! Տեղեկացրեք ինձ, եթե նվիրատվություններ եք կատարում:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարև ձեզ, ես ուզում եմ օգտագործել իմ exel ֆայլի ձևանմուշը՝ MyFormat, աշխատաթերթեր ստեղծելու և աշխատաթերթերը առաջին սյունակի տվյալների հիման վրա անվանելու համար: Հետևյալ VBA կոդը լավ է աշխատում, որպեսզի ստեղծի աշխատաթերթերը՝ ըստ MyFormat-ի: Բայց այն ստեղծում է հարյուրավոր դատարկ թերթիկներ նորմալ excel-ի վրա: Խնդրում եմ, կարող է ինչ-որ մարմին օգնել ինձ դադարեցնել ավելորդ դատարկ թերթիկներ ստեղծելը: Շնորհակալություն Kumar Sub AddSheets() Dim cell As Excel.Range Dim wsWithSheetNames As Excel.Worksheet Dim wbToAddSheetsTo As Excel.Workbook Set wsWithSheetNames = ActiveSheet Set wbToAddSheetsTo =WithSheetSheetsTo =ActiveSheetW2. .Ավելացնել հետո:=ActiveSheet Sheets.Add Type:= _ "C:\Users\Dreamline\AppData\Roaming\Microsoft\Templates\MyFormat.xltx" Սխալի դեպքում Resume Next ActiveSheet.Name = cell.Value If Err.Number = 165 Այնուհետև Debug.Print cell.Value & "-ը արդեն օգտագործվում է որպես թերթի անուն" Ավարտ, եթե սխալ է, Գնալ 1004 Ավարտել հաջորդ բջիջով:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Աշխատանքային թերթիկների անունները պետք է լինեն երեսուն նիշից պակաս կամ հավասար:
Ոչ այնքան տարածված, բայց հակառակ դեպքում կոդը դուրս կգա լռելյայն դատարկ «Թերթ #» աշխատաթերթ:

Ստեղծեք նոր աշխատաթերթ, որի միջոցով կանցնի ձեր վերլուծական կոդը և հղում կատարեք առաջին սյունակին հետևյալ կերպ.
=IF(OR('Հղումներով բնօրինակ'!B1<>"", LEN('Հղված բնօրինակ'!B1)>30), LEFT('Հղված բնօրինակ'!B1,30),'Հղված բնօրինակ'!B1)


Կամ պատճենեք կամ հղում կատարեք թերթի մնացած հատվածին, ինչպես կարող եք: Համոզվեք, որ սյունակը զերծ է տվյալների վավերացման սահմանափակումներից, եթե որևէ խնդիր ունեք՝ հղում կատարելով մյուս աշխատաթերթին:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Շատ շնորհակալ եմ սա տեղադրելու համար!!!! Աշխատել է հմայքի պես: Կարո՞ղ եք բացատրել, թե ինչպես է աշխատում կոդի առաջին հավաքածուն:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Շնորհակալություն դրա համար:



VBA կոդում կա՞ արդյոք, այնուամենայնիվ, անվանել ստացված թերթերը առաջին և երկրորդ սյունակների տողերի տվյալների համակցված:



Այսպիսով, ձեր օրինակի համար 2-րդ թերթիկը կլինի ավտոմատ անունը «linda 100»
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Հարգելի Ջոյս,
Շնորհակալություն ձեր մեկնաբանության համար: Հուսով եմ, որ ստորև բերված VBA սցենարը կարող է օգնել ձեզ:

Ենթավերլուծական_տվյալներ()
Dim xRCcount As Long
Dim xSht As Worksheet
Dim xNSht As Worksheet
Dim I As Long
Dim xTRrow որպես ամբողջ թիվ
Dim xCol որպես նոր հավաքածու
Dim xTitle As String
Ս.թ. սխալի Ռեզյումե Next
Դիմում. ScreenUpdating = Սուտ է
Սահմանել xSht = ActiveSheet
xRCount = xSht.UsedRange.End(xlDown).Տող
xTitle = «A1:B1»
xTRrow = xSht.Range(xTitle).Տող
I = 2-ի համար դեպի xRCcount
Զանգահարեք xCol.Add(CStr(xSht.Cells(I, 1)), CStr(xSht.Cells(I, 1)))
հաջորդ
Debug.Print xCol.Count
I = 1-ի համար դեպի xCol.Count
Զանգահարեք xSht.Range(xTitle).AutoFilter(1, CStr(xCol.Item(I)))
Սահմանել xNSht = Ոչինչ
Սահմանել xNSht = Worksheets (CStr(xCol.Item(I)))
Եթե ​​xNSht-ը ոչինչ է, ապա
Սահմանել xNSht = Worksheets.Add(, Sheets(Sheets.Count))
xNSht.Name = CStr(xCol.Item(I) & xSht.Cells(I + 1, 2))
Ուրիշ
xNSht.Move , Sheets(Sheets.Count)
Վերջ: Եթե
xSht.Range("A" & xTRrow & ":A" & xRCount).EntireRow.Copy xNSht.Range("A1")
xNSht.Columns.AutoFit
հաջորդ
xSht.AutoFilterMode = False
xSht.Ակտիվացնել
Դիմում. ScreenUpdating = ueիշտ է
Վերջ Sub
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Սա չափազանց օգտակար էր, հենց այն, ինչ ես փնտրում էի: Շնորհակալություն
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Այս կոդը շատ օգտակար է, և գրեթե այն, ինչ ես փնտրում էի:
Բայց կարելի՞ է այնպես կարգավորել, որ երկու թերթ լինի.
Թերթ 1-ը Տվյալներ է՝ տվյալների աղյուսակ, որի անունը Ա սյունակ է
Թերթ 2-ը ձևանմուշ է, որտեղ լրացվում են բազմաթիվ դաշտեր
Այն, ինչ ես ակնկալում էի, մակրո գործարկելն է, որը կկատարվի
1 Պատճենեք-տեղադրեք ձևանմուշը, նույն ֆայլում, անվանեք թերթիկը որպես A1 բջիջի անուն
2 Պատճենեք B1 բջիջը, այնուհետև անցեք նոր ձևանմուշի ընտրված դաշտ
3 կրկնել 1-ին շարքի երկայնքով մինչև դատարկը
4-ը, ապա կրկնել 2-րդ շարքը և յուրաքանչյուր շարքը մինչև վերջ:
Արդյունքը ֆայլ է x no. թերթերը նույնն են, ինչ կաղապարը, բոլոր դաշտերը լրացված են:
Ես ժառանգել եմ մի ֆայլ, որն աշխատում է այլ կերպ՝ տվյալներ կաղապարներից աղյուսակ հանելով, բայց այն չի կարող շրջել…
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Հարգելի Սեմ,
Լավ կլինի, եթե կարողանաք ձեր աշխատանքային գրքույկը կցել այստեղ:
Դուք կարող եք վերբեռնել ձեր ֆայլը ստորև «Վերբեռնել ֆայլեր» կոճակով:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարև Ես փորձեցի օգտագործել ձեր կոդը, բայց սխալ է ստացվել
Run-timeerror '1004':
Ծրագրի կողմից սահմանված կամ օբյեկտի կողմից սահմանված սխալ
Ես չգիտեմ VBA-ի (կամ այդ հարցում որևէ տեխնոլոգիայի մասին), բայց եթե մամուլում վրիպազերծվում է, այն ընդգծում է 11 տողը xRCount=xSht.Cells(xSht.Rows.Count,1): Վերջ (xIUp).Տող
Ես աշխատում եմ մեծ ֆայլի հետ, որն ունի 127 սյունակ և 337 տող (տողերը կտարբերվեն, սյունակները՝ ոչ), և դա ցուցակ է I'd թվերով և դրանց մանրամասներով:
Ես փոխեցի միջակայքը, ինչպես դուք նշեցիք, բայց դեռ չի աշխատում, ես օգտագործում եմ Excel 2010, կարո՞ղ եք ինձ ասել, թե ինչպես դա աշխատի, եթե հնարավոր է:
Շնորհակալություն
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Հարգելի Բեատրիզ,
Կոդը թարմացվում է խնդրի լուծման հետ: Խնդրում ենք կրկին փորձել: Շնորհակալություն մեկնաբանության համար։
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ողջույն, ես կարծում եմ, որ այստեղ ինչ-որ օգտակար բան կա իմ իրավիճակի համար, բայց ես կարող եմ անել VBA կամ script, հուսով եմ, որ դուք կարող եք օգնել:
Ես ունեմ կաղապար՝ բազմաթիվ բջիջներով, որոնք պետք է լրացվեն տվյալների հետ, և կլինի որոնման բանալին (ոչ եզակի), որը ես կցանկանայի մուտքագրել կաղապարի մեջ: Որոնման բանալի հիման վրա տվյալները որոնվում են, և համապատասխան տվյալներ համապատասխան բանալու վրա բերվում և լրացվում են ձևանմուշում: Լրացված ձևանմուշը պահվում է նոր աշխատաթերթում: Հնարավոր է, որ 1-ից ավելի համապատասխան գրառումներ լինեն: Ինձ պետք է սկրիպտը՝ ցանկում որոնումը շարունակելու համար, մինչև ընտրվեն բոլոր համընկնումները և ստեղծվեն նոր աշխատաթերթերի որոշակի քանակություն:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ողջույն, կա՞ տարբերակ յուրաքանչյուր նոր աշխատաթերթում վերնագրի տողը պահելու համար: (Կարմիր շրջանակը իմ հավելվածի վրա)

Կոդը վերցնում է բոլոր տողերը իմ հիմնական աշխատաթերթից և դրանք փոխանցում նոր աշխատաթերթերի, ինչը հիանալի է: Բայց ես ուզում եմ պահպանել իմ «գլխավոր» վերնագրի արժեքը (կարմիր շրջանակով) յուրաքանչյուր նոր աշխատաթերթի վերևում: Շնորհակալություն



Ես վերևից նկատի ունեմ այս ծածկագիրը.

Sub RowToSheet ()
Dim xRow As Long
Dim I As Long
ActiveSheet- ով
xRow = .Range ("A" & Rows.Count).End(xlUp).Տող
For I = 1 To xRow
Worksheets.Add(, Sheets(Sheets.Count)).Name = "Row" & I
.Տողեր(I).Պատճենել թերթիկները("Տող" &I).Տարածք("A1")
Հաջորդը ես
Վերջ
Վերջ Sub
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Հիանալի կոդ, բայց կարո՞ղ եմ որևէ օգնություն ստանալ, եթե իմ տվյալները A սյունակի փոխարեն G սյունակում են: ինչ պետք է փոխեմ, որպեսզի G սյունակի տվյալները տարբեր ներդիրում լինեն:

Շնորհակալություն
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Սա հիանալի ծածկագիր է: Շատ շնորհակալություն OfficeExtend-ի ուղեղային տուփերին: Այնուամենայնիվ, կա՞ այս կոդը, որին կարելի է մի փոքր հարմարեցնել՝ տողի փոխարեն յուրաքանչյուր *սյունակի* համար առանձին թերթեր ստեղծելու համար: Ես կցել եմ նկար, թե ինչի եմ փորձում հասնել: Սա հնարավո՞ր է: Հարգանքներով.
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Լավ օր,
Ես քո նկարն այստեղ չտեսա:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ողջույն, ինչպես փոփոխել կոդը, եթե իմ անվան դաշտը գտնվում է C սյունակում
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարև Աբդուլ Բասիտ,
Ստորև բերված VBA կոդը կարող է օգնել ձեզ: Խնդրում ենք փորձել:
Տողում՝ xCName = «3», 3-ը ցույց է տալիս Excel-ի սյունակի համարը (այստեղ C սյունակն է): Դուք կարող եք փոխել այն ցանկացած սյունակի համարով, ինչպես ձեզ անհրաժեշտ է:

Ենթավերլուծական_տվյալներ()
«Թարմացվել է Extendoffice 2018 / 3 / 2
Dim xRCcount As Long
Dim xSht As Worksheet
Dim xNSht As Worksheet
Dim I As Long
Dim xTRrow որպես ամբողջ թիվ
Dim xCol որպես նոր հավաքածու
Dim xTitle As String
Dim xSUpdate որպես բուլյան
Dim xCName որպես ամբողջ թիվ
Dim xTA, xRA, xSRg1 Որպես տող
Սահմանել xSht = ActiveSheet
Ս.թ. սխալի Ռեզյումե Next
xRCount = xSht.Cells(xSht.Rows.Count, 1).End(xlUp).Տող
xTitle = «A1:C1»
xCName = "3" 'Փոխեք այս թիվը սյունակի համարով, որի հիման վրա կստեղծեք նոր թերթեր
xTRrow = xSht.Range(xTitle).Cells(1).Տող
I = 2-ի համար դեպի xRCcount
Զանգահարեք xCol.Add(xSht.Cells(I, xCName).Text, xSht.Cells(I, xCName).Text)
հաջորդ
xSUpdate = Application.ScreenUpdating
Դիմում. ScreenUpdating = Սուտ է
xSRg = xSht.Cells(1, xCName).Հասցե(RowAbsolute:=False, ColumnAbsolute:=False)
I = 1-ի համար դեպի xCol.Count
Զանգահարեք xSht.Range(xTitle).AutoFilter(xCName, CStr(xCol.Item(I)))
Սահմանել xNSht = Ոչինչ
Սահմանել xNSht = Worksheets (CStr(xCol.Item(I)))
Եթե ​​xNSht-ը ոչինչ է, ապա
Սահմանել xNSht = Worksheets.Add(, Sheets(Sheets.Count))
xNSht.Name = CStr(xCol.Item(I))
Ուրիշ
xNSht.Move , Sheets(Sheets.Count)
Վերջ: Եթե
xSht.Range("A" & xTRrow & ":A" & xRCount).EntireRow.Copy xNSht.Range("A1")
xNSht.Columns.AutoFit
հաջորդ
xSht.AutoFilterMode = False
xSht.Ակտիվացնել
Application.ScreenUpdating = xSUpdate
Վերջ Sub
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Հիանալի VBA կոդ՝ հնարք կատարելու համար:

Ինչպե՞ս կարող եմ այն ​​փոխել այնպես, որ չպատճենվի առաջին սյունակը: Իսկ սյունակի անունը հանե՞լ։

Regards
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Խնդրում եմ, կարո՞ղ եմ օգնություն ստանալ, թե ինչպես ինքնաբերաբար անվանել թերթերը՝ օգտագործելով որոշակի սյունակ: Սա տողի համար է VBA թերթիկ: Տես ներքեւում

Sub RowToSheet ()

Dim xRow As Long

Dim I As Long

ActiveSheet- ով

xRow = .Range ("A" & Rows.Count).End(xlUp).Տող

For I = 1 To xRow

Worksheets.Add(, Sheets(Sheets.Count)).Name = "Row" & I

.Տողեր(I).Պատճենել թերթիկները("Տող" &I).Տարածք("A1")

Հաջորդը ես

Վերջ

Վերջ Sub
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Չմոռանաք, որ դա թաքնված հետագծային տարածքներ էր: Ես օգտագործեցի TRIM ֆունկցիան և մաքրեցի այն: Ունենալով տողերի հաշվարկ (տողերի հաշվարկը իսկապես, այնպես որ տողերը -1-ը կցված լինեն թերթին, զարմանալի կլիներ)
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ինչպե՞ս հղում կատարել վերը նշված կոդի օգտագործմանը (վարկ): Հնարավո՞ր է փոխել կոդը:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարև, սա բաց հաղորդակցման հարթակ է: Կոդին թույլատրվում է հղում կատարել և փոփոխել:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Նանա
86
2
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարեւ Ձեզ! Ես պարզապես օգտագործեցի այս կոդը և այն աշխատեց: Ի լրումն յուրաքանչյուր մուտքի համար նոր թերթ ստեղծելու, ես ուզում եմ այն ​​տեղափոխել սյունակներում և չեմ կարողանում պարզել: Այսպիսով, վերը նշված օրինակի համար Նանայի արդյունքը այսպիսին կլինի. անուն, ազգանուն NanaՄիավոր 86Ոչ. 2
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարև ձեզ, օգտագործեցի այս կոդը և աշխատեցիք, բայց եթե ես ուզում եմ վերնագրում ընտրել մեկից ավելի տող, ի՞նչ կփոխվի կոդի մեջ: Ես ունեմ բազմաթիվ տողեր թերթում, որոնք ես ուզում եմ յուրաքանչյուր թերթում:
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Բարև Ձեզ, հասկացա՞ք ինչպես
Այս մեկնաբանությունը կայքի վարողի կողմից նվազագույնի է հասցվել
Ողջույն, կա՞ կոդ, որը յուրաքանչյուր անգամ մակրոյի գործարկումից հետո կավելացներ ընդամենը 1 նոր թերթ, օրինակ՝ 1-ին անգամ, երբ նոր թերթը կկոչվի A1 բջիջի բովանդակության վրա, 2-րդ անգամ, երբ մակրոն գործարկվի, նոր թերթի անունը կկոչվի: A2-ի բովանդակությունը և այլն: շնորհակալություն սպասումով
Առայժմ ոչ մի մեկնաբանություն չկա
Բեռնել More

Հետեւեք մեզ

Հեղինակային իրավունքի © 2009 - www.extendoffice.com. | Բոլոր իրավունքները պաշտպանված են. Powered by ExtendOffice. | | Կայքի քարտեզ
Microsoft- ը և Office- ի պատկերանշանը հանդիսանում են Microsoft Corporation- ի ապրանքային նշաններ կամ գրանցված ապրանքային նշաններ ԱՄՆ-ում և (կամ) այլ երկրներում:
Պաշտպանված է Sectigo SSL- ի կողմից