Pasirinktinis rūšiavimas programoje „Excel“ yra labai naudinga funkcija. Šiame straipsnyje kalbėsime apie tai, kaip automatiškai atnaujinti pasirinktinį rūšiavimą diapazone naudojant Excel VBA.
Kai naudosite pasirinktinį rūšiavimą, pamatysite, kad tai nuostabi „Excel“ funkcija. Tačiau jei šią funkciją naudosite dažnai, taip pat galite rasti problemų. Surūšiuosite tam tikrus duomenis ir informaciją diapazone. Kai į diapazoną įtrauksite papildomų duomenų ir informacijos, tvarka diapazone automatiškai nepasikeis. Žemiau esančiame paveikslėlyje parodytas tokios būklės pavyzdys.
Kai į diapazoną įtrauksite naują duomenų rinkinį, reitingas automatiškai nepakeis. Jei vis tiek norite rūšiuoti šį didesnį diapazoną naudodami naujus duomenis pagal tuos pačius kriterijus, turite dar kartą atlikti pasirinktinio rūšiavimo procesą. Matote, kad tai labai varginanti, ypač kai reikia nuolatos atnaujinti duomenis ir informaciją darbalapyje. Kiekvieną kartą, kai į diapazoną įtraukiate naujos informacijos, turite iš naujo rūšiuoti. Norėdami išspręsti šią problemą ir greitai užbaigti užduotį, galite tęsti šio straipsnio skaitymą.
Įrašyti makrokomandą
Kai pasirinktinio rūšiavimo kriterijai yra labai sudėtingi, jums bus sunku tiesiogiai parašyti VBA kodus. Taigi dabar pirmiausia galite įrašyti makrokomandą. Ir šios makrokomandos kodus galima naudoti kitose makrokomandose. Kodų įrašymo procesas yra labai paprastas.
- Prieš įrašydami makrokomandą, juostelėje turite pridėti VBA skirtuką. Čia dešiniuoju pelės mygtuku spustelėkite bet kurį juostelės skirtuką.
- Tada meniu pasirinkite „Tinkinti juostelę“.
- Dabar „Excel“ parinkčių lange pažymėkite parinktį „Kūrėjas“ sąraše „Pagrindiniai skirtukai“.
- Po to lange spustelėkite „Gerai“. Todėl juostoje pridėjote skirtuką.
- Dabar grįšite į darbalapį. Spustelėkite skirtuką „Kūrėjas“, kurį pridėjote.
- Tada įrankių juostoje spustelėkite mygtuką „Įrašyti makrokomandą“. Taigi pasirodys langas „Įrašyti makrokomandą“.
Kita vertus, taip pat galite spustelėti mažą mygtuką darbalapio apačioje, kad pakeistumėte aukščiau nurodytus 6 veiksmus.
- Dabar lange „Įrašyti makrokomandą“ įveskite pavadinimą į pirmąjį teksto laukelį. Jei reikia, priskirkite spartųjį klavišą. Ir tada pridėkite aprašymą pagal savo poreikį.
- Toliau spustelėkite „Gerai“. Taigi makrokomanda pradeda įrašyti kiekvieną jūsų atliktą operaciją.
- Pasirinkite diapazoną, kurį reikia rūšiuoti darbalapyje.
- Spustelėkite skirtuką „Pagrindinis“.
- Tada juostelėje spustelėkite mygtuką „Rūšiuoti ir filtruoti“.
- Išskleidžiamajame sąraše pasirinkite parinktį „Pasirinktinis rūšiavimas“.
- Lange „Rūšiuoti“ nustatykite kriterijus pagal savo poreikius. Visi veiksmai bus įrašyti makrokomandoje.
Kai įrašote makrokomandą, neatlikite papildomų veiksmų. Priešingu atveju tie žingsniai taip pat bus įrašyti. Ir tai sukels problemų kitoje dalyje.
- Baigę nustatymą lange „Rūšiuoti“, spustelėkite „Gerai“, kad išsaugotumėte nustatymus.
- Dabar juostelėje dar kartą spustelėkite skirtuką „Kūrėjas“.
- Tada spustelėkite mygtuką „Sustabdyti įrašymą“. Kai darbalapyje bus įrašytos makrokomandos, mygtukas pasikeis į „Stop Recording“.
Taip pat galite spustelėti darbalapio apačioje esantį mygtuką, kad sustabdytumėte makrokomandos įrašymą. Taigi, jūs baigėte įrašymą. Visi rūšiavimo kriterijai buvo išsaugoti 1 makrokomandoje.
Naudokite Excel VBA makrokomandas
Šioje dalyje parodysime, kaip naudoti VBA makrokomandas norint atnaujinti pasirinktinį rūšiavimą darbalapyje. Taip pat šioje dalyje naudosite įrašytas makrokomandas.
- Juostelėje spustelėkite skirtuką „Kūrėjas“.
- Tada įrankių juostoje spustelėkite mygtuką „Visual Basic“. Vietoj to taip pat galite paspausti klaviatūros mygtuką „Alt + F11“, kad pakeistumėte 2 veiksmus.
- „Visual Basic“ rengyklėje dukart spustelėkite lapą „VBAProject“ srityje. Šiame lape turite atnaujinti pasirinktinį rūšiavimą. Ir jūsų faktiniame faile turite du kartus spustelėti atitinkamą lapą.
- Dabar įveskite šiuos kodus į sritį.
Private Sub Worksheet_Change(ByVal Target As Range) End Sub
- Tada įveskite šiuos kodus tarp dviejų aukščiau pateiktų VBA sakinių.
Application.ScreenUpdating = False
If Not Intersect(Target, Range("A1:C13")) Is Nothing Then
End If
Čia apskaičiuojamas diapazonas. Pardavimo apimtims bus skirta 12 mėnesių, o kartu su pirmąja antraštės eilute įvesime diapazoną „A1:C13“. Taip pat galite įvesti diapazoną į kodus pagal savo faktinį darbalapį.
- Šiame žingsnyje atidarykite 1 modulį redaktoriuje. Šiame modulyje esantys kodai yra pasirinkto rūšiavimo procesas, kurį anksčiau atlikote. Matote, kad naudodami makrokomandų įrašymo funkciją galite sutaupyti daug laiko.
- Dabar nukopijuokite pagrindinę šio modulio dalį.
- Tada dukart spustelėkite tikslinį lapą „VBAProject“ dalyje.
- Po to įklijuokite kodus į IF-END IF kodus.
- Ir tada pakeiskite kodų diapazoną pagal savo poreikius. Įrašyta makrokomanda yra šiek tiek sudėtinga ir nereikalinga. Taip pat galite jį modifikuoti pagal savo poreikius. Todėl visi VBA kodai bus tokie:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Not Intersect(Target, Range("A1:C13")) Is Nothing Then
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SortFields.Clear
.SortFields.Add Key:=Range("B2:B13"), _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
.SortFields.Add Key:=Range("C2:C13"), _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
End With
With ActiveWorkbook.Worksheets("Sheet1").Sort
.SetRange Range("A1:C13")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End If
End Sub
Į kodus pridedame dar vieną WITH-END WITH. Taigi jis bus aiškesnis nei rekordinis rezultatas. Jei turite kitų reikalavimų, taip pat galite jį pakeisti pagal savo faktinį poreikį. Keisdami kodus turite būti atsargūs. Priešingu atveju darbalapyje gausite neteisingą rezultatą.
- Dabar jūs baigėte VBA kodus redaktoriuje. Galite grįžti į darbalapį ir patikrinti rezultatą. Kai į diapazoną įtrauksite kitą mėnesį ir atitinkamus skaičius, tinkintas rūšiavimas bus automatiškai atnaujintas.
Todėl jums niekada nereikės rankiniu būdu atnaujinti pasirinktinio rūšiavimo kiekvieną kartą įvedant naujus elementus į tikslinį diapazoną. Kita vertus, šią darbaknygę turite išsaugoti kaip makrokomandas palaikančią „Excel“ failą. Priešingu atveju, jei išsaugosite kaip įprastą failą, prarasite kodus.
Suteiksime pagalbą Excel korupcijos aukoms
Visi žinome, kad „Excel“ yra labai galingas ir gali padėti greitai ir lengvai užbaigti darbą. Tačiau „Excel“ programa dar toli gražu nėra tobula. Kartais „Excel“ sugenda dėl įvairių priežasčių. Kai „Excel“ sugadins, negalėsite užbaigti užduočių naudodami šią programą. Kad veiktų geriau, jį reikės kuo greičiau suremontuoti.
Mūsų įmonė daug metų dirba su atkūrimo sritimi, ypač su Excel atkūrimu. Todėl galite kreiptis pagalbos į mūsų techninius darbuotojus. Turėdami ilgametę patirtį galime lengvai išsiaiškinti priežastį, dėl kurios sugadinami jūsų failai. Ir padėti jums geriau pataisyti Excel xlsx failo žalą, sukūrėme trečiosios šalies įrankį. Šiuo įrankiu labai lengva naudotis ir jums nereikia jaudintis dėl privatumo problemų.
Autoriaus įvadas:
Anna Ma yra duomenų atkūrimo ekspertė DataNumen, Inc., kuri yra pasaulyje duomenų atkūrimo technologijų lyderė, įskaitant ištaisyti Word docx klaidą ir „Outlook“ taisymo programinės įrangos produktai. Norėdami gauti daugiau informacijos, apsilankykite WWW.datanumen.com









