Khaladaadka Dib u Bilaabashada Xiga: Wax ka qabashada Khaladka Excel VBA

  • La Wadaag Tan
Hugh West

Microsoft Excel VBA, maaraynta khaladku waa mid ka mid ah hawlaha muhiimka ah. Haddii aad tahay cod-bixiye, waad garanaysaa muhiimada ay leedahay maaraynta khaladka si loo dhiso codsi qumman. Qaladaad kasta oo ku jirta bayaan waxay caqabad ku noqon kartaa koodka VBA-gaaga siyaabo badan. Markaa, waa inaad ka taxadirtaa inaad xakamayso khaladaadkaas markaad fulinayso code VBA. Waxaa jira khaladaad badan oo wakhtiga orodka ah oo aad la kulmi karto markaad isticmaalayso code VBA ee Excel. Si loo xalliyo mid ka mid ah, waxaan isticmaalnaa Ciladaha Dib-u-soo-celinta Xiga .

Casharkan, waxaad ku baran doontaa inaad isticmaasho Ciladaha Dib-u-soo-celinta Xiga ee Excel VBA Casharradani waxa ay noqon doontaa mid xambaarsan tusaalayaal ku habboon iyo sawiro habboon. Marka, nala joog.

>

Soo deji Buug-hawleed Layliska

>>>>>>>>>>>>

VBA Khaladaadka Dib u bilaw Xiga. VBA

Markaad la shaqaynayso Microsoft Excel VBA, waxaad la kulmi doontaa khaladaad badan oo ku jira hab-hoosaadkaaga. Marka VBA aysan fulin karin bayaan, waxay tuurtaa qalad run-time ah.

Excel si toos ah ayay wax uga qabtaa khaladaadkaan, marka marka uu soo baxo cilad run-time, waxay soo bandhigaysaa fariin qalad ah sida kuwa soo socota:

>

Hadda, si kala duwan ayaad kuwan ula macaamili kartaa odhaahyada VBA-da qaarkood. Waxaan uga hadli doonaa qaybaha dambe. >

Wax badan ka akhri: Sida loo hagaajiyo #REF! Khaladaadka Excel (6 Solutions) >

> Ku saabsan Bayaanada Cillad ee VBA> Si loo maareeyo khaladaadka waqtiga socda, waxaan ku barnaa Excel qoraalka qaladka. Way go'aansataaKhaladaadka Magaca ee Excel (10 Tusaalayaal)>

💬 Waxyaabaha la Xasuusto

> Waxay asal ahaan iska indhatiraa qaladka waxayna u gudubtaa bayaanka xiga. > Marka aan isticmaalno Cillad ku socota Resume Next , waxay tirtirtaa hantida shay. > bayaan ku qor code kaaga VBA ee Excel adiga oo ku dara On Error GoTo 0 statement.

Gabagabo

> Gabagabo, waxaan rajaynayaa in casharkan uu ku siiyay qayb faa'iido leh aqoonta loo isticmaalo Ciladka Dib-u-soo-socota ee Excel VBA. Waxaan kugula talinayaa inaad barato oo aad isticmaasho dhammaan tilmaamahan xogtaada. Soo deji buuga shaqada oo isku day kuwan naftaada. Sidoo kale, xor u noqo inaad faallo ka bixiso qaybta faallooyinka. Jawaab celintaada qiimaha leh waxay nagu dhiirigelinaysaa inaan abuurno casharro sidan oo kale ah.

Ha iloobin inaad hubiso boggayaga Exceldemy.com dhibaatooyin iyo xalal kala duwan oo Excel la xiriira.

Barashada habab cusub oo sii korodho!

Waa maxay nooca hawlgallada aan rabno inaan isla markiiba sameyno. Asal ahaan, waxaan ku joojinaa khaladaadkan iyadoo la adeegsanayo maaraynta khaladaadka noocaan ah.

Waxaan isticmaalnaa saddex nooc oo weedho khalad ah (syntax) gudaha Excel VBA.

>
    >
  • 1>Cillad ka jirta GoTo line >
> >
  • Khaladaad ka dib dib u bilow
  • > <1

    Markaad hesho cilad, adeegso amarka Cilad-xumada. Sababtoo ah haddii aadan isticmaalin ku dhawaaqida Cillad , khaladaadkaas waqtiga-daaqeedka ayaa noqon doona masiibo. Waxay tusi doontaa qaladka degdega ah waxayna joojin doontaa fulinta.

    Markaan isticmaalno Cillad baydhana, waxaanu shidnaa maamulaha khaladka "karti". Xakameeyaha khaladka "firfircoon" waa maamule karti leh oo bilaabaya hawsha maaraynta khaladka. Haddii uu khalad yimaado inta uu khaladku ku lug leeyahay, maamulaha khaladka habka hadda ma adkaysan karo qaladka. Intaa ka dib, kontoroolku waxa uu ku soo noqonayaa habraaca wacitaanka.

    Hadii habka wacaysku uu leeyahay maamule cilad karti leh, waxa ay kicisaa si loo maareeyo khaladka. Haddii maamulaha khaladka nidaamka wicitaanka uu si isku mid ah u hawl galo, xakamaynta waxay dib ugu soo celinaysaa habraacyadii hore ee wicitaanka ilaa ay ka helayso maamule khalad hawl kar ah laakiin aan shaqaynayn. Haddi ay waydo mid ka mid ah maamuleha khaladka ee shaqayn kara, tani waxa ay la macno tahay in khaladku yahay masiibo marka uu dhacayo.

    Mar kasta oo maamulaha khaladku uu amar ku siiyo habraaca wacitaanka, nidaamkaasi waxa uu horumariyaa habraacii jiray. Fulintu waxay dib u bilaabmaysaanidaamka xaadirka ah ee ay doorteen Resume bayaan marka maamulaha khaladku uu qabto khaladaadka hab kasta.

    'Markay Cilad Ku Soo Bilaabanayso Xiga' gudaha VBA

    > Hadda, Ciladka Dib u Bilaabida Xiga Bayaanku wuxuu u sheegayaa VBA inay iska indho tirto khad kasta oo kood ah oo leh khaladaad, oo isla markiiba u gudub khadka soo socda ee koodka. Intaa ka dib, code-yada Excel VBA waxay ka boodi doonaan xariiqda ama xariiqyada ay ku jiraan khaladaadka iyaga, oo u gudbi doona taxanaha soo socda ee koodka.

    Cillad ku socota Dib u Bilaabida Xiga dib u bilow amarka adigoo si degdeg ah u daba socda xariiqa koodka ee keenay qaladka wakhtiga-kordhinta. Bayaankani waxa uu ogolaanayaa fulinta in la boodo xataa haddii uu jiro qalad wakhtiga-kordhinta ah. Haddii aad u malaynayso in xariiq gaar ah oo kood ah uu soo saari karo khalad, dhig hab-dhaqanka khaladka-qabashada halka aad ka dhigi lahayd meel kale oo habraaca ah. Qoraalka Cilaadku Ku Xiga Xiga waxa uu noqdaa shaqo-la'aan marka koodkaagu waco hab kale. Markaa, marka aad u baahato maaraynta khaladka isku midka ah ee habkaa caadiga ah, waa inaad socodsiisaa Ciladka Dib u Bilaabashada Xiga ee qaab kasta oo la magacaabay.

    >Waa macquul marka xariiqda koodka aad ka boodi kartaa lama huraan u ah socodka kobcaya ee makro. Laakin xusuusnow, waxay noqon kartaa dhaawac haddii aad si khaldan u isticmaasho sababtoo ah waxay keeni kartaa natiijooyin aan la rabin. >

    Cilad Dib u Bilowday Hadalka Xiga ma jirohagaajin khaladaadka runtime. Asal ahaan waxay iska indho-tiraysaa khaladaadka halka fulinta VB-gaagu uu dib uga bilaaban doono bayaanka abuuray khaladka runtime.

    >
    3878

    Ka eeg koodka soo socda:

    3878

    Waxaan isku daynay inaan qaybino 5 leh 0 iyo 1. Aan socodsiino koodhka. Waxay tusi doontaa wax soo saarka soo socda:

    > >

    Waxay soo saartaa qalad run-time ah. Ma u qaybin karno nambar 0. Marka aad saxdo koodka, waxaad arki doontaa kuwan soo socda:

    >

    Marka barnaamijka VB uu helo qalad, isla markiiba wuxuu joojiyaa nidaamka. Ma fuliso xariiqda soo socota.

    Hadda, aynu hirgelinno Cilaadku Dib u Bilow Xiga ka hor inta aan la sheegin khaladka:

    5020

    Ka dib markaad furto koodka, waxaad samayn doontaa eeg kuwan soo socda:

    Sida aad arki karto, VBA way iska indho tirtaa xariiqda soo saarta khaladka waxayna isla markiiba u socotaa xariiqa koodka soo socda. Sidan, waxaad isticmaali kartaa Ku-xiga Cilada ku xigta si aad u xalliso khaladka Excel VBA.

    Tusaalooyinka 'On Error Resume Next' gudaha VBA

    In Qaybaha soo socda, waxaan ku siin doonaa laba tusaale oo ah Ciladaha Dib u Bilaabashada Xiga oo aad ku hirgelin karto xaashidaada Excel adoo isticmaalaya VBA. Waxaan kugula talinayaa inaad barato oo aad ku dhaqdo kuwaas oo dhan buug-gacmeedkaaga. Waxay hubaal ahaan kordhin doontaa aqoontaada Excel.

    > 1. 'On Error Resume Next' Bayaanka lagu qariyo xaashida shaqada

    Hadda, tusaalahan, waxaan ku tusi doonaa koodka VBAwaxay qarin doontaa dhammaan xaashida shaqada ee buug-yarahaaga firfircoon

    Ka fiirso sawirka soo socda:

    > > Halkan, waxaan haynaa afar warqadood oo shaqo. Waanu qarin doonaa dhamaantood anagoo adeegsanayna summada VBA-da ee soo socota:
    6817

    Markaad fuliso koodka soo socda, waxaad arki doontaa cilada soo socota ee wakhtiga- ordaya:

    > > >Excel waxay muujinaysaa khaladkan sababtoo ah ma qarin kartid dhammaan xaashida buug-shaqeedka. Markaa, waa inaad iska indho tirtaa khaladka. Si aad tan u samayso, waa inaad fulisaa bayaanka ku xiga ee Error Resume ee khadkaaga koodka.
    9305

    Ka dib markaad dhamaystirto fulinta code-ka VBA, waxaad arki doontaa wax soo saarka soo socda:

    >

    22>

    Ugu dambayntii, ma arki doontid wax qalad ah marka la fuliyo. Marka, Cilladdeena Dib-u-soo-celinta Xiga ayaa runtii si fiican u shaqeysay koodka VBA.

    Wax badan ka sii akhri: Qaladaadka Excel iyo Macnahooda (15 Khaladaad oo kala duwan)

    2. Fikradda waxay la shaqeysaa 'qalad ku soo xigta' ee Vba

    Tusaalahan, waxaan ku tusi doonaa tusaale Shaqada muuqaalka Vba . Hadda, summadan VBA-da waxa kale oo ka mid ah Dib-u-soo-celinta Cilada ku xigta , waxaad arki kartaa dadka qaar magacyadooda iyo da'dooda. Jadwalka ku xiga, waxaanu isticmaali doonaa VLOOKUP si loo helo qofka magaciisa iyo da'diisa.

    >Ku qor code-kan soo socda si aad tan u samayso:
    7200

    Hadda, socodsii makro. . Waxaad arki doontaa cilada soo socota:

    > > > Hadda, tani waa wakhti- runqalad Maxay u dhacdaa? Mar labaad u fiirso xogta kaydka:

    >

    >Sida aad arki karto, ma jiraan wax xog ah oo loogu talagalay “Haaruun” iyo “Emma”. Taasi waa sababta ay kaliya u fuliso VLOOKUP gelitaanka ugu horreeya. Intaa ka dib, waxay joojinaysaa fulinta. Hadda, haddii aad rabto inaad iska indho tirto khaladka oo sii wad si aad u hesho inta ka hartay da'da, isticmaal Dib u bilaabista Cilad ku Xiga wax soo saarka soo socda: > > >Sida aad arki karto, addoo ku dabaqaya Cillad ku socota Resume Next , waanu iska indhatiray khaladkii oo waxaanu helnay inta kale ee dadka. da'da Koodhkayaga VBA ma helin wax xog ah Haaruun iyo Emma. Taasi waa sababta ay iska indhatirtay qiyamkaas oo ay u soo celisay qiyamka intiisa kale ee xaashida shaqada ee Excel.

    Wax badan ka akhri: 3>

    Dami 'On Error Resume Next' oo wata Excel VBA

    Hadda, waxaa laga yaabaa inaad ku jirto xaalad aad rabto inaad iska indho tirto khaladaadka qayb gaar ah oo code VBA ah. Xusuusnow, haddii aad isticmaasho bayaanka ku xiga ee ku xiga ee Error Resume koodka VBA, waxay ka boodi doontaa dhammaan khaladaadka intaas ka dib. Hadda, haddii aad rabto inaad taas damiso oo aad awood u yeelatid maaraynta khaladka qayb kale, isticmaal Cillad GoTo 0 . Waxay awood u siin doontaa maaraynta khaladka mar labaad.

    Isticmaalka guud:

    >

    Ciladaha-hoosaadka_handling()

    >In la iska indho tiro khaladaadka

    Cilaadku markuu dib u bilaabo

    >// khadadka koodka >Daar wax ka qabashada khaladka >

    Cillad GoTo 0 >

    >// khadadka koodka Dhammaadka sub >

    Fiiri koodka VBA ee raacaya:

    7424

    Waxaan u isticmaalnay koodhka hore ee VLOOKUP function. Halkan waxaa ku daray qayb dheeri ah oo kood ah si uu kuu tuso. Koodhkayagu wuu iska indho-tiraa khaladaadka marka la samaynayo VLOOKUP laakin waxa uu hawlgelin doonaa maaraynta khaladka ka dib On Error GoTo 0 odhaah.

    > > 0> Akhri wax dheeraad ah maaraynta khaladaadka iyadoo la isticmaalayo habka Qaladka On. Maqaalkeena oo dhan wuxuu ku saabsanaa Cilaadku wuxuu ku saabsan yahay Dib-u-soo-celinta Xiga. Hadda, waxa kale oo jira laba nooc oo khaladka lagu maamulo oo aan kaga hadli doono qaybaha soo socda. > 1. VBA On Error GoTo 0 > The On Error Goto 2>Bayaanku waa goobta la dhisay ee Excel haddii koodhadhkaagu aanu lahayn maamule khalad ah. Waxay asal ahaan ka dhigan tahay in marka VBA ay hesho cilad Cillad GoTo 0 , waxay joojin doontaa socodsiinta koodka oo waxay tusi doontaa sanduuqa farriinta khaladka dhaqameed. > Cillad GoTo 0 > bayaanku asal ahaan waxa uu damiyaa khaladka lagu maamulayo nidaamka hadda socda. Ma qeexdo xariiqda 0 inuu yahay bilowga koodhka qaladka, xitaa haddii habka lagu daro xariiq nambarkiisu yahay 0.

    Fiiri koodka soo socda:

    6669

    Waxaan haynaa mar hore ayaa ku tusay koodkan. Koodhkani asal ahaan wuxuu qariyaa dhammaan waraaqaha shaqadaBuuggaaga shaqada ee hadda. Hadda, runtii waxaan haystaa gabal kood oo dheeri ah oo leh Khaladka GoTo 0 si loo muujiyo khaladka. Haddii aad furto koodka, waxaad arki doontaa kuwan soo socda:

    > >> >Waxay muujinaysaa khaladkan sababtoo ah ma haysan karno xaashi isku magac ah buugga shaqada ee firfircoon. > 18> 2. VBA Khadka GoTo Khadka

    Hadda, waxaad sidoo kale ku amri kartaa Excel inuu socodsiiyo qayb kale oo kood ah haddii ay wax qalad ah ku helaan adigoo isticmaalaya Khadka GoTo Khaladaadka . Waxay u sheegaysaa Excel inuu fuliyo shay ka dib marka la helo qalad.

    Doodda laynku waa xarriiq kasta ama lambar lambar. Haddii koodkayaga uu keeno khalad kasta oo wakhtiga ku-talogalka ah, wuxuu u dhaqaaqi doonaa khadka, taasoo keenaysa maamulaha khaladku inuu ku firfircoon yahay fulinta. Xasuusnoow, xariiqaaga la qeexay waa in uu ahaadaa habka saxda ah sida bayaanka Qaladka; haddii kale waxay keenaysaa qalad la isku duba ridey.

    >
    9579

    eeg code-kan soo socda:

    9579

    Waxaad ku aragtay koodka tusaalihii hore. Markii aan isticmaalnay Cillad GoTo 0 , waxay keentay cilad. Laakin, halkan waxaan taas ku bedelnay Cillad ku taal GoTo line baydha.

    Hadda, socodsii koodka oo waxaad arki doontaa kuwan soo socda:

    >>> >

    Sida aad arki karto, nama tuso sanduuqa wada hadalka qaladka caadiga ah. Taa beddelkeeda, waxay muujinaysaa sanduuqa fariinta gaarka ah ee aan ku abuurnay qaybta error_handler . Marka Excel uu helo wax qalad ah, wuxuu u boodaa          qalad_handle

    oo waxa uu na tusaa sanduuqa farriinta.

    Waxaan sidoo kale u isticmaalnay Ka bax Sub habka.Haddii aysan jirin xaashi magaceedu yahay “ VLOOKUP “, koodkayaga VBA-da ayaa dib u magacaabi doona xaashida firfircoon. Kadib, waa inaan ku dhameeynnaa fulinta halkan sababtoo ah uma baahnid inaan u sii wadno maamulaha qaladka oo aan soo bandhigno sanduuqa fariinta.

    VBA 'Cilaadku' Aan Ka Shaqeynin Excel

    mararka qaar, si kasta oo aad isku daydo, habka Qaladka On ma shaqayn doono. Markii hore, waxaan fulinay habka Ciladaha si loo xalliyo khaladaadka. Laakin, mararka qaarkood waxay tusi doontaa khaladaad xitaa haddii aad isticmaasho Ciladka Dib u Bilaabashada Xiga ama Ciladaha GoTo 0 . Waxaa laga yaabaa inay jiraan sababo dhowr ah oo ku jira koodhkaaga oo ay tahay inaad hagaajiso. Ma doonayo inaan ku tuso taas.

    Sababta aasaasiga ah ee VBA ' Khaladka ku jira' Aan ka shaqeynin Excel waxay daaraysaa ikhtiyaarka "Break on All Errors" ee Excel.<3

    Raac tillaabooyinkan si aad taas u xalliso:

    > fur tafatiraha VBA >Hadda, dhagsii Qalabka > Ikhtiyaarada sanduuqa.

    • Halkan, waxaad arki kartaa, " Dhammaan khaladaadka " waa la hubiyay. Asal ahaan waxay kaa ilaalinaysaa inaad xalliso khaladaadka
    • >Si aad u bedesho, dooro ikhtiyaarka “ Jebiyo Khaladaadka aan la maarayn ” oo guji OK .

    >

    Waxaan rajaynayaa inay xallin doonto dhibaatadaada VBA "On Error" oo aan ka shaqayn Excel.

    Akhri wax dheeraad ah: >Sabab iyo Sixitaan

    Hugh West waa tababare iyo falanqeeye heer sare ah oo tayo sare leh oo khibrad ka badan 10 sano u leh warshadaha. Waxa uu shahaadada koowaad ee jaamacadda ka qaatay xisaabaadka iyo maaliyadda iyo maamulka ganacsiga. Hugh waxa uu jecel yahay waxbaridda waxana uu sameeyay hab waxbarid gaar ah oo ay fududahay in la raaco lana fahmo. Aqoontiisa khabiirka ah ee Excel waxay ka caawisay kumanaan arday iyo xirfadlayaal adduunka oo dhan ah inay horumariyaan xirfadahooda oo ay ku fiicnaadaan shaqadooda. Isaga oo u maraya balooggiisa, Hugh waxa uu aqoontiisa la wadaagaa adduunka, isaga oo siinaya casharro Excel ah oo bilaash ah iyo tababar online ah si uu uga caawiyo shakhsiyaadka iyo ganacsiyada in ay gaaraan awooddooda buuxda.