Հատուկ սյունակի հիման վրա Excel- ի աշխատաթերթի պարունակությունը բազմակի աշխատանքային տետրերի բաժանելու 2 արագ միջոց

Կիսվել հիմա ՝

Երբեմն տվյալների վերլուծության ժամանակ կարող է անհրաժեշտ լինել Excel-ի աշխատանքային թերթիկի պարունակությունը բաժանել մի քանի Excel աշխատանքային գրքերի՝ ըստ որոշակի սյունակի: Այժմ, այս գրառման մեջ մենք ձեզ կսովորեցնենք այն ստանալու 2 արագ եղանակ:

Շատ օգտվողներ հաճախ պետք է բաժանեն Excel- ի աշխատաթերթը, որը պարունակում է տվյալների հսկայական շարքեր մի շարք առանձին Excel աշխատանքային գրքերի վրա `հիմնվելով որոշակի սյունակի վրա: Օրինակ, ահա իմ Excel- ի աշխատանքային թերթիկը: Ես կցանկանայի այս թերթիկի տվյալները բաժանել «Միայնակ լիցենզիայի գինը (ԱՄՆ դոլար)» սյունակի ՝ բազում աշխատանքային գրքերի:

Excel աշխատաթերթի նմուշ

Ընդհանուր առմամբ, դուք հակված եք օգտագործել հետևյալ մեթոդը 1 ՝ տվյալների ձեռքով զտման և պատճենման համար: Բայց բավականին հոգնեցուցիչ և հիմար կլինի, եթե ֆիլտրի շատ տարբերակներ լինեն: Հետեւաբար, այստեղ մենք նաև ցույց ենք տալիս շատ ավելի հարմարավետ եղանակ ՝ մեթոդ 2, որն օգտագործում է VBA: Հիմա կարդացեք դրանք մանրամասն ստանալու համար:

Մեթոդ 1. Պատճենել բովանդակությունը ֆիլտրից հետո Excel- ի առանձին աշխատանքային գրքույկներին

  1. Սկզբում ընտրեք բջիջը հատուկ սյունակում, ինչպես իմ սեփական օրինակով «Բջիջ B1»:
  2. Դրանից հետո անցեք «Տվյալներ» ներդիրին և կտտացրեք «terտել» կոճակին:Terտել տվյալները
  3. Հաջորդը, կտտացրեք սյունակի վերնագրի «ներքևի սլաքը» կոճակին ՝ ֆիլտրի ընտրության ցուցակը ցուցադրելու համար:
  4. Այժմ ընտրեք «(Ընտրեք բոլորը)» տարբերակը:Ապանշել «Ընտրել բոլորը»
  5. Դրանից հետո դուք կարող եք ընտրել մեկ զտիչի ընտրություն, ինչպիսին է իմ օրինակում «29.95» -ը և կտտացնել «Լավ»:
  6. Միանգամից կմնան միայն այն տվյալները, որոնց արժեքը B սյունակում «29.95» է:Մնացել է միայն զտված տվյալները
  7. Դրանից հետո պատճենեք զտված տվյալները և տեղադրեք դրանք Excel- ի նոր աշխատանքային գրքում:Պատճենեք և տեղադրեք բովանդակությունը
  8. Հետագայում օգտագործեք նույն ձևը ՝ բաժանելու մյուս տվյալները ՝ Excel աշխատանքային գրքերն առանձնացնելու համար:

Մեթոդ 2. Խմբաքանակի պառակտված պարունակությունը Excel- ի մի քանի աշխատանքային գրքերում VBA- ի միջոցով

  1. Առաջին հերթին համոզվեք, որ հատուկ աշխատանքային թերթը բացված է:
  2. Հաջորդը, գործարկեք VBA խմբագիրը ՝ համաձայն «Ինչպես գործարկել VBA կոդը ձեր Excel- ում".
  3. Հետո հետևյալ կոդը տեղադրեք «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

VBA կոդ - Հատուկ սյունակի հիման վրա բաժանեք Excel- ի աշխատանքային թերթի բովանդակությունը մի քանի աշխատանքային գրքերի

  1. Դրանից հետո կտտացրեք «Գործարկել» պատկերակին գործիքագոտում կամ սեղմեք «F5» ստեղնի կոճակը:
  2. Մակրոյի ավարտից հետո Excel- ի առանձին աշխատանքային գրքերը կստեղծվեն Excel աղբյուրի աղբյուրի պառակտված տվյալների հետ:Նոր Excel աշխատանքային գրքեր
  3. Յուրաքանչյուր աշխատանքային գիրք նման կլինի հետևյալ նկարին.Առանձնացրեք նոր Excel- ի աշխատանքային գրքերը

Համեմատություն

  Առավելությունները Թերությունները
Մեթոդ 1 1. Հեշտ է գործել Excel- ի բոլոր օգտագործողների համար Անհանգստացնող է, եթե ֆիլտրի ընտրությունը չափազանց շատ է
2. Արագ, եթե ֆիլտրի քիչ ընտրություն կա
Մեթոդ 2 Շատ ավելի արդյունավետ, քան մեթոդը 1 ՝ անկախ ֆիլտրի ընտրության քանակից Մի փոքր դժվար է գործել VBA նորեկների համար

Կանխել Excel տվյալների կորուստը

Չնայած MS Excel- ը գնալով ավելի ու ավելի առաջադեմ և բարդ է դառնում, այն, այնուամենայնիվ, ժամանակ առ ժամանակ խափանվում է տարբեր գործոնների պատճառով, ինչպիսիք են վնասակար երրորդ կողմի հավելումները կամ մարդկային սխալները և այլն: Քանի որ Excel- ի վթարը կարող է ուղղակիորեն հանգեցնել Excel կոռուպցիա, որպեսզի խուսափեն Excel տվյալների կորստից, դուք պետք է կանոնավոր կերպով կրկնօրինակեք ձեր Excel ֆայլերը: Հակառակ դեպքում, դուք պետք է կիրառեք Excel- ի վերականգնման գործիք, ինչպես, օրինակ DataNumen Excel Repair Excel- ի կոռումպացված ֆայլերը շտկելու համար:

Հեղինակի ներածություն.

Shirley Zhang- ը տվյալների վերականգման փորձագետ է DataNumen, Inc., որը տվյալների վերականգման տեխնոլոգիաների համաշխարհային առաջատարն է, այդ թվում SQL Server նորոգում և հեռանկարների նորոգման ծրագրակազմի արտադրանքները: Լրացուցիչ տեղեկությունների համար այցելեք www.datanumen.com

Կիսվել հիմա ՝

Comments փակվում են: