Paano Auto-update ang Sortadong Saklaw sa pamamagitan ng VBA sa Iyong Excel Worksheet

Ipamahagi ngayon:

Ang pasadyang pag-uuri sa Excel ay isang kapaki-pakinabang na tampok. Sa artikulong ito, pag-uusapan natin kung paano awtomatikong i-update ang pasadyang pag-uuri sa isang saklaw sa pamamagitan ng paggamit ng Excel VBA.

Kapag ginamit mo ang pasadyang pag-uuri, malalaman mo na ito ay isang kamangha-manghang tampok sa Excel. Gayunpaman, kung madalas mong ginagamit ang tampok na ito, maaari ka ring makahanap ng isang problema. Susuriin mo ang isang saklaw na may ilang mga data at impormasyon. Kapag nagdagdag ka ng karagdagang data at impormasyon sa saklaw, ang pagkakasunud-sunod sa saklaw ay hindi awtomatikong magbabago. Ang imahe sa ibaba ay nagpapakita ng isang halimbawa ng naturang kundisyon.halimbawa

Kapag nagdagdag ka ng isang bagong set ng data sa saklaw, hindi nito babaguhin ang ranggo nang awtomatiko. Kung nais mo pa ring pag-uri-uriin ang mas malaking saklaw na ito na may bagong data na itinakda ng parehong pamantayan, kailangan mong isagawa muli ang proseso ng pasadyang pag-uuri. Maaari mong makita na ito ay napaka-mahirap, lalo na kung kailangan mong patuloy na i-update ang data at impormasyon sa worksheet. Sa tuwing magdaragdag ka ng bagong impormasyon sa saklaw, kailangan mong ayusin muli. Upang malutas ang problemang ito at matapos ang iyong gawain nang mabilis, maaari mong ipagpatuloy ang pagbabasa ng artikulong ito.

Itala ang Macro

Kapag ang mga pamantayan ng pasadyang pag-uuri ay napaka-kumplikado, mahihirapan kang isulat nang direkta ang mga VBA code. Kaya, ngayon ay maaari mo munang maitala ang isang macro. At ang mga code sa macro na ito ay maaaring magamit sa ibang mga macros. Napakadali ng proseso ng pag-record ng mga code.

  1. Bago ka mag-record ng isang macro, kailangan mong idagdag ang tab ng VBA sa laso. Dito i-right click ang anuman sa isang tab sa laso.
  2. At pagkatapos ay piliin ang "Ipasadya ang Ribbon" sa menu.Ipasadya ang Ribbon
  3. Ngayon sa window ng "Mga Pagpipilian ng Excel", suriin ang pagpipiliang "Developer" sa listahan ng "Pangunahing Mga Tab".Developer
  4. Pagkatapos nito, i-click ang "OK" sa window. Samakatuwid, naidagdag mo ang tab sa laso.
  5. Ngayon babalik ka sa worksheet. I-click ang tab na "Developer" na naidagdag mo.
  6. At pagkatapos ay i-click ang pindutang "Record Macro" sa toolbar. Kaya, ang window na "Record Macro" ay mag-pop up.Itala ang Macro

Sa kabilang banda, maaari mo ring i-click ang maliit na pindutan sa ilalim ng worksheet upang mapalitan ang nasa itaas na 6 na mga hakbang.Itala ang Macro

  1. Ngayon sa window na "Record Macro", i-input ang pangalan sa unang text box. Magtalaga ng isang shortcut key kung kailangan mo. At pagkatapos ay idagdag ang paglalarawan ayon sa iyong pangangailangan.Itakda ang Macro
  2. Susunod na pag-click sa "OK". Sa gayon, nagsisimula ang macro na itala ang bawat operasyon na iyong ginagawa.
  3. Piliin ang saklaw na kailangan mong pag-uri-uriin sa worksheet.
  4. I-click ang tab na "Home".
  5. At pagkatapos ay i-click ang pindutang "Pagbukud-bukurin at I-filter" sa laso.
  6. Sa listahan ng drop-down, piliin ang opsyong "Pasadyang Pagbukud-bukurin".Pasadyang Pagbukud-bukurin
  7. Sa window na "Pagbukud-bukurin", itakda ang mga pamantayan ayon sa iyong pangangailangan. Ang lahat ng mga aksyon ay maitatala sa macro.Uri

Kapag nagre-record ka ng macro, huwag gumawa ng mga karagdagang hakbang. Kung hindi man ay maitatala din ang mga hakbang na iyon. At magdudulot ito ng kaguluhan sa sumusunod na bahagi.

  1. Matapos mong matapos ang setting sa window na "Pagbukud-bukurin", i-click ang "OK" upang mai-save ang mga setting.
  2. Ngayon i-click muli ang tab na "Developer" sa laso.
  3. At pagkatapos ay i-click ang pindutang "Ihinto ang Pagre-record". Kapag ang worksheet ay nasa kondisyon ng pagrekord ng macros, ang pindutan ay mababago sa "Itigil ang Pagre-record".Itigil ang Pagre-record

Maaari mo ring i-click ang pindutan sa ilalim ng worksheet upang ihinto ang pag-record ng macro. Sa gayon, natapos mo na ang pagrekord. Ang lahat ng mga pamantayan sa pag-uuri ay nai-save sa Macro 1.

Gumamit ng Excel VBA Macros

Sa bahaging ito, ipapakita namin sa iyo kung paano gamitin ang mga macros ng VBA upang mai-update ang pasadyang pag-uuri sa iyong worksheet. At gagamitin mo rin ang naitala na macros sa bahaging ito.

  1. I-click ang tab na "Developer" sa laso.
  2. At pagkatapos ay i-click ang pindutang "Visual Basic" sa toolbar. Sa halip, maaari mo ring pindutin ang pindutang "Alt + F11" sa keyboard upang mapalitan ang 2 mga hakbang.Visual Basic
  3. Sa editor ng Visual Basic, i-double click ang sheet sa lugar na "VBAProject". Sa sheet na ito, kailangan mong i-update ang pasadyang pag-uuri. At sa iyong tunay na file, kailangan mong i-double click ang kaukulang sheet.
  4. I-input ngayon ang mga sumusunod na code sa lugar.
Private Sub Worksheet_Change(ByVal Target As Range)

End Sub
  1. At pagkatapos ay i-input ang mga sumusunod na code sa pagitan ng dalawang dalawang pangungusap na VBA sa itaas.
Application.ScreenUpdating = False
If Not Intersect(Target, Range("A1:C13")) Is Nothing Then

End If

Narito ang saklaw ay tinantya. Magkakaroon ng 12 buwan para sa dami ng mga benta, at kasama ang unang hilera ng header, inilalagay namin ang saklaw na "A1: C13". Maaari mo ring mai-input ang saklaw sa mga code alinsunod sa iyong aktwal na worksheet.

  1. Sa hakbang na ito, buksan ang module 1 sa editor. Ang mga code sa modyul na ito ay ang proseso ng pasadyang pag-uuri na dati mong ginawa. Maaari mong makita na ang paggamit ng tampok na pagrekord ng macros ay maaaring makatipid sa iyo ng maraming oras.
  2. Ngayon kopyahin ang pangunahing bahagi sa modyul na ito.Kopyahin
  3. At pagkatapos ay i-double click ang tarkumuha ng sheet sa bahaging "VBAProject".
  4. Pagkatapos nito, i-paste ang mga code sa mga code na IF-END IF.
  5. At pagkatapos ay baguhin ang saklaw sa mga code alinsunod sa iyong pangangailangan. Ang naitala na macro ay medyo kumplikado at kalabisan. Maaari mo ring baguhin ito ayon sa iyong pangangailangan. Samakatuwid, ang kumpletong mga VBA code ay magiging ganito:
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

Nagdagdag kami ng isa pang MAY KATAPOS SA mga code. Sa gayon, magiging mas malinaw ito kaysa sa resulta ng record. Kung mayroon kang iba pang mga kinakailangan, maaari mo ring baguhin ito ayon sa iyong aktwal na pangangailangan. Kailangan mong mag-ingat sa pagbabago ng mga code. Kung hindi man ay makakagawa ka ng ilang maling resulta sa worksheet.

  1. Ngayon natapos mo na ang mga VBA code sa editor. Maaari kang bumalik sa worksheet at subukan ang resulta. Kapag idinagdag mo ang susunod na buwan at ang mga kaukulang numero sa saklaw, ang pasadyang pag-uuri ay awtomatikong magre-refresh.Pagsubok

Samakatuwid, hindi mo na kakailanganing manu-manong i-update ang pasadyang pag-uuri tuwing maglalagay ka ng mga bagong elemento sa tarkumuha ng saklaw. Sa kabilang banda, kailangan mong i-save ang workbook na ito bilang isang file na Excel na pinapagana ng isang macro. Kung hindi man mawawala sa iyo ang mga code kung nagse-save ka bilang isang ordinaryong file.

Magbibigay Kami ng Tulong sa Mga Biktima ng Korapsyon sa Excel

Alam nating lahat na ang Excel ay napakalakas at makakatulong ito sa iyong tapusin ang iyong trabaho nang mabilis at madali. Ngunit ang application ng Excel ay malayo pa rin mula sa perpekto. Minsan masisira ang Excel dahil sa maraming iba't ibang mga kadahilanan. Sa sandaling masira ang Excel, hindi mo matatapos ang iyong mga gawain sa pamamagitan ng application na ito. Upang gumana nang mas mahusay, kakailanganin mong ayusin ito sa lalong madaling panahon.

Ang aming kumpanya ay nagtatrabaho sa lugar ng pagbawi sa loob ng maraming taon, lalo na ang paggaling ng Excel. Samakatuwid, maaari kang humingi sa aming mga staff ng tech para sa tulong. Sa karanasan ng mga taon, madali naming malalaman ang dahilan na nagdudulot ng pinsala sa iyong mga file. At para mas matulungan ka ayusin ang pinsala ng xlsx file ng Excel, nakabuo kami ng isang tool ng third-party. Napakadaling manipulahin ang tool na ito at hindi mo kailangang mag-alala tungkol sa problema sa privacy.

Panimula ng May-akda:

Si Anna Ma ay isang dalubhasa sa pagbawi ng data sa DataNumen, Inc., na pinuno ng mundo sa mga teknolohiya sa pagbawi ng data, kasama ang pagkumpuni ng Word docx error at pananaw sa pag-aayos ng mga produktong software. Para sa karagdagang impormasyon pagbisita www.datanumen. Sa

Ipamahagi ngayon:

Mga komento ay sarado.