ഓൺ പിശക് പുനരാരംഭിക്കുക അടുത്തത്: Excel VBA-ൽ പിശക് കൈകാര്യം ചെയ്യുക

  • ഇത് പങ്കുവയ്ക്കുക
Hugh West

Microsoft Excel VBA-ൽ, പിശക് കൈകാര്യം ചെയ്യൽ നിർണായകമായ ജോലികളിൽ ഒന്നാണ്. നിങ്ങൾ ഒരു കോഡർ ആണെങ്കിൽ, ഒരു മികച്ച ആപ്ലിക്കേഷൻ നിർമ്മിക്കുന്നതിന് പിശക് കൈകാര്യം ചെയ്യേണ്ടതിന്റെ പ്രാധാന്യം നിങ്ങൾക്കറിയാം. ഒരു പ്രസ്താവനയിലെ ഏത് തെറ്റും നിങ്ങളുടെ VBA കോഡിനെ പല തരത്തിൽ തടസ്സപ്പെടുത്തും. അതിനാൽ, ഒരു VBA കോഡ് എക്സിക്യൂട്ട് ചെയ്യുമ്പോൾ ആ പിശകുകൾ കൈകാര്യം ചെയ്യാൻ നിങ്ങൾ ജാഗ്രത പാലിക്കണം. Excel-ൽ VBA കോഡ് ഉപയോഗിക്കുമ്പോൾ നിങ്ങൾക്ക് നിരവധി റൺ-ടൈം പിശകുകൾ നേരിടാം. അവയിലൊന്ന് പരിഹരിക്കാൻ, ഞങ്ങൾ ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ് സ്റ്റേറ്റ്മെന്റ് ഉപയോഗിക്കുന്നു.

ഈ ട്യൂട്ടോറിയലിൽ, Excel-ൽ ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ് സ്റ്റേറ്റ്മെന്റ് ഉപയോഗിക്കാൻ നിങ്ങൾ പഠിക്കും. വി.ബി.എ. ഈ ട്യൂട്ടോറിയൽ ഉചിതമായ ഉദാഹരണങ്ങളും ശരിയായ ചിത്രീകരണങ്ങളും ഉള്ളതായിരിക്കും. അതിനാൽ, ഞങ്ങളോടൊപ്പം നിൽക്കൂ.

പ്രാക്ടീസ് വർക്ക്ബുക്ക് ഡൗൺലോഡ് ചെയ്യുക

VBA ഓൺ എറർ റെസ്യൂം Next.xlsm

Excel-ൽ പിശക് കൈകാര്യം ചെയ്യൽ VBA

Microsoft Excel VBA-യിൽ പ്രവർത്തിക്കുമ്പോൾ, നിങ്ങളുടെ ഉപനടപടികളിൽ നിങ്ങൾക്ക് ധാരാളം പിശകുകൾ നേരിടേണ്ടിവരും. VBA-യ്ക്ക് ഒരു പ്രസ്താവന നടപ്പിലാക്കാൻ കഴിയാതെ വരുമ്പോൾ, അത് ഒരു റൺ-ടൈം പിശക് എറിയുന്നു.

Excel ഈ പിശകുകൾ സ്വയമേവ കൈകാര്യം ചെയ്യുന്നു, അതിനാൽ ഒരു റൺ-ടൈം പിശക് ഉയർന്നുവരുമ്പോൾ, ഇനിപ്പറയുന്നതുപോലുള്ള ഒരു സ്ഥിരസ്ഥിതി പിശക് സന്ദേശം അത് പ്രദർശിപ്പിക്കുന്നു:

ഇപ്പോൾ, ചില VBA പ്രസ്താവനകൾ ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഇവയെ വ്യത്യസ്തമായി കൈകാര്യം ചെയ്യാൻ കഴിയും. ഞാൻ അവ പിന്നീടുള്ള വിഭാഗങ്ങളിൽ ചർച്ച ചെയ്യും.

കൂടുതൽ വായിക്കുക: എങ്ങനെ പരിഹരിക്കാം #REF! Excel-ൽ പിശക് (6 പരിഹാരങ്ങൾ)

VBA-ലെ പിശക് പ്രസ്താവനകളിൽ

റൺ ടൈം പിശകുകൾ കൈകാര്യം ചെയ്യാൻ, ഞങ്ങൾ ഓൺ എറർ സ്റ്റേറ്റ്മെന്റ് ഉപയോഗിച്ച് Excel-ന് നിർദ്ദേശിക്കുന്നു. അത് തീരുമാനിക്കുന്നുNAME എന്നതിന്റെ Excel-ലെ പിശക് (10 ഉദാഹരണങ്ങൾ)

💬 ഓർമ്മിക്കേണ്ട കാര്യങ്ങൾ

✎ പിശകിൽ അടുത്തത് പിശകുകൾ പരിഹരിക്കില്ല. ഇത് അടിസ്ഥാനപരമായി പിശക് അവഗണിക്കുകയും അടുത്ത പ്രസ്താവനയിലേക്ക് പോകുകയും ചെയ്യുന്നു.

Excel, Err ഒബ്‌ജക്റ്റിലെ റൺ-ടൈം പിശകുകൾ ട്രാപ്പ് ചെയ്യുകയും സംഭരിക്കുകയും ചെയ്യുന്നു. ഞങ്ങൾ On Error Resume Next എന്ന പ്രസ്താവന ഉപയോഗിക്കുമ്പോൾ, അത് Err ഒബ്ജക്റ്റ് പ്രോപ്പർട്ടികൾ മായ്‌ക്കുന്നു.

നിങ്ങൾക്ക് On Error Resume Next ഓഫാക്കാം. On Error GoTo 0 സ്റ്റേറ്റ്‌മെന്റ് ചേർത്തുകൊണ്ട് നിങ്ങളുടെ VBA കോഡിലെ പ്രസ്താവന Excel VBA-ൽ ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ് ഉപയോഗിക്കാനുള്ള അറിവ്. ഈ നിർദ്ദേശങ്ങളെല്ലാം പഠിച്ച് നിങ്ങളുടെ ഡാറ്റാസെറ്റിൽ പ്രയോഗിക്കാൻ ഞാൻ ശുപാർശ ചെയ്യുന്നു. പ്രാക്ടീസ് വർക്ക്ബുക്ക് ഡൗൺലോഡ് ചെയ്ത് ഇത് സ്വയം പരീക്ഷിക്കുക. കൂടാതെ, അഭിപ്രായ വിഭാഗത്തിൽ ഫീഡ്‌ബാക്ക് നൽകാൻ മടിക്കേണ്ടതില്ല. നിങ്ങളുടെ വിലയേറിയ ഫീഡ്‌ബാക്ക് ഇതുപോലുള്ള ട്യൂട്ടോറിയലുകൾ സൃഷ്‌ടിക്കാൻ ഞങ്ങളെ പ്രചോദിപ്പിക്കുന്നു.

എക്‌സലുമായി ബന്ധപ്പെട്ട വിവിധ പ്രശ്‌നങ്ങൾക്കും പരിഹാരങ്ങൾക്കും ഞങ്ങളുടെ വെബ്‌സൈറ്റ് Exceldemy.com പരിശോധിക്കാൻ മറക്കരുത്.

പുതിയ രീതികൾ പഠിക്കുന്നത് തുടരുക, വളരുക!

അടുത്തത് ഏത് തരത്തിലുള്ള പ്രവർത്തനങ്ങളാണ് ഞങ്ങൾ ഉടൻ ചെയ്യാൻ ആഗ്രഹിക്കുന്നത്. അടിസ്ഥാനപരമായി, ഇത്തരത്തിലുള്ള പിശക് കൈകാര്യം ചെയ്യുന്നതിലൂടെ ഞങ്ങൾ ഈ പിശകുകൾ പ്രവർത്തനരഹിതമാക്കുന്നു.

ഞങ്ങൾ Excel VBA-യിൽ മൂന്ന് തരത്തിലുള്ള ഓൺ എറർ പ്രസ്താവനകൾ(വാക്യഘടന) ഉപയോഗിക്കുന്നു.

  • പിശകിൽ GoTo line
  • പിശക് പുനരാരംഭിക്കുമ്പോൾ അടുത്തത്
  • On Error GoTo 0

നിങ്ങൾ ഒരു പിശക് കണ്ടെത്തുമ്പോൾ, ഓൺ എറർ കമാൻഡ് ഉപയോഗിക്കുക. കാരണം നിങ്ങൾ ഒരു ഓൺ എറർ ഡിക്ലറേഷൻ ഉപയോഗിക്കുന്നില്ലെങ്കിൽ, ആ റൺ-ടൈം പിശകുകൾ വിനാശകരമായിരിക്കും. ഇത് ഒരു പിശക് നിർദ്ദേശം കാണിക്കുകയും നിർവ്വഹണം നിർത്തുകയും ചെയ്യും.

ഞങ്ങൾ ഒരു ഓൺ എറർ സ്റ്റേറ്റ്മെന്റ് ഉപയോഗിക്കുമ്പോൾ, ഞങ്ങൾ ഒരു "പ്രാപ്തമാക്കിയ" പിശക് ഹാൻഡ്‌ലർ ഓണാക്കും. "സജീവ" പിശക് ഹാൻഡ്‌ലർ ഒരു പ്രവർത്തനക്ഷമമാക്കിയ ഹാൻഡ്‌ലറാണ്, അത് പിശക് കൈകാര്യം ചെയ്യൽ പ്രവർത്തനം ആരംഭിക്കുന്നു. ഒരു പിശക് കൈകാര്യം ചെയ്യുന്നയാൾ ഉൾപ്പെട്ടിരിക്കുമ്പോൾ ഒരു പിശക് സംഭവിക്കുകയാണെങ്കിൽ, നിലവിലെ രീതിയുടെ പിശക് കൈകാര്യം ചെയ്യുന്നയാൾക്ക് പിശക് സഹിക്കാൻ കഴിയില്ല. അതിനുശേഷം, നിയന്ത്രണം കോളിംഗ് നടപടിക്രമത്തിലേക്ക് മടങ്ങുന്നു.

കോളിംഗ് പ്രോസസ്സിന് പ്രവർത്തനക്ഷമമാക്കിയ ഒരു പിശക് ഹാൻഡ്‌ലർ ഉണ്ടെങ്കിൽ, അത് പിശക് നിയന്ത്രിക്കുന്നതിന് പ്രവർത്തനക്ഷമമാകും. നിങ്ങളുടെ കോളിംഗ് സിസ്റ്റത്തിന്റെ എറർ ഹാൻഡ്‌ലർ അതിനനുസരിച്ച് ഇടപഴകുകയാണെങ്കിൽ, പ്രവർത്തനക്ഷമവും നിഷ്‌ക്രിയവുമായ ഒരു പിശക് ഹാൻഡ്‌ലർ കണ്ടെത്തുന്നതുവരെ നിയന്ത്രണം മുമ്പത്തെ കോളിംഗ് നടപടിക്രമങ്ങളിലൂടെ തിരികെ നൽകുന്നു. നിഷ്‌ക്രിയ പ്രവർത്തനക്ഷമമായ ഏതെങ്കിലും പിശക് ഹാൻഡ്‌ലറിനെ ഇതിന് കണ്ടെത്താൻ കഴിയുന്നില്ലെങ്കിൽ, അതിന്റെ സംഭവിക്കുന്ന ഘട്ടത്തിൽ പിശക് വിനാശകരമാണ് എന്നാണ് ഇതിനർത്ഥം.

ഓരോ തവണയും പിശക് കൈകാര്യം ചെയ്യുന്നയാൾ ഒരു കോളിംഗ് നടപടിക്രമത്തിന് അധികാരം നൽകുമ്പോൾ, ആ നടപടിക്രമം നിലവിലുള്ള നടപടിക്രമം വികസിപ്പിക്കുന്നു. എന്നതിൽ എക്സിക്യൂഷൻ പുനരാരംഭിക്കുന്നുഒരു എറർ ഹാൻഡ്‌ലർ ഏതെങ്കിലും നടപടിക്രമത്തിൽ പിശകുകൾ കൈകാര്യം ചെയ്യുമ്പോൾ റെസ്യൂം സ്റ്റേറ്റ്‌മെന്റ് തിരഞ്ഞെടുത്ത നിമിഷത്തിൽ നിലവിലുള്ള നടപടിക്രമം.

VBA-യിലെ 'എറർ റെസ്യൂമെ നെക്സ്റ്റ്'

ഇപ്പോൾ, പിശക് പുനരാരംഭിക്കുമ്പോൾ അടുത്തത് പ്രസ്താവന VBA-യോട് പിശകുകളുള്ള ഏതെങ്കിലും കോഡ് ലൈനുകൾ അവഗണിക്കാൻ പറയുന്നു, തുടർന്ന് ഇനിപ്പറയുന്ന കോഡിന്റെ വരിയിലേക്ക് ഉടൻ പോകുക. അതിനുശേഷം, Excel VBA കോഡുകൾ അവയിൽ പിശകുകൾ ഉൾക്കൊള്ളുന്ന ലൈനുകളോ ലൈനുകളോ ഒഴിവാക്കുകയും കോഡിന്റെ ഇനിപ്പറയുന്ന ശ്രേണിയിലേക്ക് നീങ്ങുകയും ചെയ്യും.

On Error Resume Next പ്രസ്താവന നടപ്പിലാക്കാൻ നിർബന്ധിതമാക്കുന്നു റൺ-ടൈം പിശകിന് കാരണമായ കോഡുകളുടെ വരി തൽക്ഷണം പിന്തുടരുന്ന കമാൻഡ് ഉപയോഗിച്ച് പുനരാരംഭിക്കുക. ഒരു റൺ-ടൈം പിശക് ഉണ്ടെങ്കിൽപ്പോലും ഒഴിവാക്കുന്നതിന് ഈ പ്രസ്താവന ഒരു നിർവ്വഹണത്തെ അനുവദിക്കുന്നു. ഒരു പ്രത്യേക വരി കോഡ് ഒരു പിശക് സൃഷ്ടിക്കുമെന്ന് നിങ്ങൾ കരുതുന്നുവെങ്കിൽ, നടപടിക്രമത്തിനുള്ളിൽ മറ്റൊരു സ്ഥലത്ത് ഇടുന്നതിന് പകരം പിശക് കൈകാര്യം ചെയ്യുന്ന പതിവ് അവിടെ സ്ഥാപിക്കുക. നിങ്ങളുടെ കോഡ് മറ്റൊരു നടപടിക്രമം വിളിക്കുമ്പോൾ ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ് പ്രസ്താവന നിഷ്‌ക്രിയമാകും. അതിനാൽ, ആ ദിനചര്യയിൽ നിങ്ങൾക്ക് പൊരുത്തപ്പെടുന്ന പിശക് കൈകാര്യം ചെയ്യേണ്ടിവരുമ്പോൾ, നിങ്ങൾ ഒരു ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ് കമാൻഡ് പ്രവർത്തിപ്പിക്കേണ്ടതുണ്ട്. മാക്രോയുടെ തഴച്ചുവളരുന്നതിന് ഒഴിവാക്കാനാകും എന്നത് ആവശ്യമില്ല. എന്നാൽ ഓർക്കുക, നിങ്ങൾ ഇത് തെറ്റായി ഉപയോഗിച്ചാൽ അത് ദോഷകരമാകാം, കാരണം ഇത് ഉദ്ദേശിക്കാത്ത ഫലങ്ങൾ നൽകിയേക്കാം.

ഓർക്കുക:

ഓൺ പിശക് പുനരാരംഭിക്കുക അടുത്ത പ്രസ്താവന ഇല്ലറൺടൈം പിശകുകൾ പരിഹരിക്കുക. റൺടൈം പിശക് സൃഷ്ടിച്ച പ്രസ്താവനയിൽ നിന്ന് നിങ്ങളുടെ വിബി എക്സിക്യൂഷൻ പുനരാരംഭിക്കുന്ന പിശകുകളെ ഇത് അടിസ്ഥാനപരമായി അവഗണിക്കുന്നു.

ഇനിപ്പറയുന്ന കോഡ് നോക്കുക:

3899

ഞങ്ങൾ 5 വിഭജിക്കാൻ ശ്രമിച്ചു 0, 1 എന്നിവ ഉപയോഗിച്ച്. നമുക്ക് കോഡ് പ്രവർത്തിപ്പിക്കാം. ഇത് ഇനിപ്പറയുന്ന ഔട്ട്പുട്ട് കാണിക്കും:

ഇത് ഒരു റൺ-ടൈം പിശക് ഉണ്ടാക്കുന്നു. ഞങ്ങൾക്ക് ഒരു സംഖ്യയെ 0 കൊണ്ട് ഹരിക്കാൻ കഴിയില്ല. നിങ്ങൾ കോഡ് ഡീബഗ് ചെയ്യുമ്പോൾ, നിങ്ങൾ ഇനിപ്പറയുന്നവ കാണും:

VB പ്രോഗ്രാം ഒരു പിശക് കണ്ടെത്തുമ്പോൾ, അത് ഉടൻ തന്നെ നടപടിക്രമം നിർത്തുന്നു. ഇത് ഇനിപ്പറയുന്ന വരി നിർവ്വഹിക്കുന്നില്ല.

ഇപ്പോൾ, പിശക് പ്രസ്താവനയ്‌ക്ക് മുമ്പായി ഓൺ എറർ റെസ്യൂമെ നെക്സ്റ്റ് സ്‌റ്റേറ്റ്‌മെന്റ് നടപ്പിലാക്കാം:

3777

കോഡ് പ്രവർത്തിപ്പിച്ചതിന് ശേഷം, നിങ്ങൾ ഇനിപ്പറയുന്നവ കാണുക:

നിങ്ങൾക്ക് കാണാനാകുന്നതുപോലെ, പിശക് സൃഷ്‌ടിക്കുന്ന വരിയെ VBA അവഗണിക്കുകയും ഇനിപ്പറയുന്ന കോഡിന്റെ വരിയിലേക്ക് ഉടൻ പോകുകയും ചെയ്യുന്നു. ഈ രീതിയിൽ, Excel VBA-യിലെ പിശക് കൈകാര്യം ചെയ്യാൻ നിങ്ങൾക്ക് ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ് സ്റ്റേറ്റ്മെന്റ് ഉപയോഗിക്കാം. ഇനിപ്പറയുന്ന വിഭാഗങ്ങളിൽ, VBA ഉപയോഗിച്ച് നിങ്ങളുടെ Excel വർക്ക്ഷീറ്റിൽ നടപ്പിലാക്കാൻ കഴിയുന്ന ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ് പ്രസ്താവനയുടെ രണ്ട് ഉദാഹരണങ്ങൾ ഞാൻ നിങ്ങൾക്ക് നൽകാൻ പോകുന്നു. ഇതെല്ലാം പഠിച്ച് നിങ്ങളുടെ വർക്ക്ബുക്കിൽ പ്രയോഗിക്കാൻ ഞാൻ ശുപാർശ ചെയ്യുന്നു. ഇത് തീർച്ചയായും നിങ്ങളുടെ Excel പരിജ്ഞാനം വർദ്ധിപ്പിക്കും.

1. വർക്ക്ഷീറ്റുകൾ മറയ്‌ക്കാനുള്ള 'എറർ റെസ്യൂമിൽ അടുത്തത്' പ്രസ്താവന

ഇപ്പോൾ, ഈ ഉദാഹരണത്തിൽ, ഞാൻ നിങ്ങൾക്ക് ഒരു VBA കോഡ് കാണിക്കും.നിങ്ങളുടെ സജീവ വർക്ക്ബുക്കിന്റെ എല്ലാ വർക്ക്ഷീറ്റുകളും മറയ്ക്കും.

ഇനിപ്പറയുന്ന സ്ക്രീൻഷോട്ട് നോക്കുക:

ഇവിടെ, ഞങ്ങൾക്ക് നാല് വർക്ക്ഷീറ്റുകൾ ഉണ്ട്. ഇനിപ്പറയുന്ന VBA കോഡ് ഉപയോഗിച്ച് ഞങ്ങൾ അവയെല്ലാം മറയ്ക്കും:

5911

നിങ്ങൾ ഇനിപ്പറയുന്ന കോഡ് എക്സിക്യൂട്ട് ചെയ്യുമ്പോൾ, ഇനിപ്പറയുന്ന റൺ-ടൈം പിശക് നിങ്ങൾ കാണും:

എക്സൽ ഈ പിശക് കാണിക്കുന്നു, കാരണം നിങ്ങൾക്ക് ഒരു വർക്ക്ബുക്കിൽ എല്ലാ ഷീറ്റുകളും മറയ്ക്കാൻ കഴിയില്ല. അതിനാൽ, നിങ്ങൾ പിശക് അവഗണിക്കണം. ഇത് ചെയ്യുന്നതിന്, നിങ്ങളുടെ കോഡ് ലൈനിൽ ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ് സ്റ്റേറ്റ്‌മെന്റ് നടപ്പിലാക്കണം.

5923

VBA കോഡിന്റെ എക്‌സിക്യൂഷൻ പൂർത്തിയാക്കിയ ശേഷം, നിങ്ങൾ ഇനിപ്പറയുന്ന ഔട്ട്‌പുട്ട് കാണും:

അവസാനം, നിർവ്വഹിച്ചതിന് ശേഷം നിങ്ങൾ പിശകുകളൊന്നും കാണില്ല. അതിനാൽ, ഞങ്ങളുടെ ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ് സ്റ്റേറ്റ്‌മെന്റ് VBA കോഡിൽ വളരെ നന്നായി പ്രവർത്തിച്ചു.

കൂടുതൽ വായിക്കുക: എക്സലിലെ പിശകുകളും അവയുടെ അർത്ഥവും (15 വ്യത്യസ്ത പിശകുകൾ) <3

2. VBA-ൽ 'ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ്' ഉള്ള VLOOKUP ഫംഗ്‌ഷൻ

ഈ ഉദാഹരണത്തിൽ, ഞാൻ VBA-യിലെ VLOOKUP ഫംഗ്‌ഷന്റെ ഒരു ഉദാഹരണം കാണിക്കും . ഇപ്പോൾ, ഈ VBA കോഡിൽ ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ് പ്രസ്താവനയും ഉൾപ്പെടുന്നു.

ഇനിപ്പറയുന്ന സ്ക്രീൻഷോട്ട് നോക്കുക:

ഇവിടെ , ചിലരുടെ പേരും അവരുടെ പ്രായവും കാണാം. അടുത്തുള്ള പട്ടികയിൽ, വ്യക്തിയുടെ പേരും വയസ്സും കണ്ടെത്താൻ ഞങ്ങൾ VLOOKUP ഉപയോഗിക്കും.

ഇത് ചെയ്യാൻ ഇനിപ്പറയുന്ന കോഡ് ടൈപ്പ് ചെയ്യുക:

9290

ഇപ്പോൾ, മാക്രോ പ്രവർത്തിപ്പിക്കുക . നിങ്ങൾ ഇനിപ്പറയുന്ന പിശക് കാണും:

ഇപ്പോൾ, ഇതൊരു റൺ-ടൈമാണ്പിശക്. എന്തുകൊണ്ടാണ് അത് സംഭവിക്കുന്നത്? ഡാറ്റാസെറ്റ് വീണ്ടും നോക്കുക:

നിങ്ങൾക്ക് കാണാനാകുന്നതുപോലെ, “ആരോൺ”, “എമ്മ” എന്നിവയ്‌ക്കായി ഡാറ്റയൊന്നുമില്ല. അതുകൊണ്ടാണ് ആദ്യ എൻട്രിക്കായി ഇത് VLOOKUP മാത്രം എക്സിക്യൂട്ട് ചെയ്യുന്നത്. അതിനുശേഷം, അത് വധശിക്ഷ നിർത്തുന്നു. ഇപ്പോൾ, നിങ്ങൾക്ക് പിശക് അവഗണിച്ച് ബാക്കിയുള്ള പ്രായങ്ങൾ കണ്ടെത്തണമെങ്കിൽ, ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ് സ്റ്റേറ്റ്മെന്റ് ഉപയോഗിക്കുക.

9415

VBA കോഡ് പ്രവർത്തിപ്പിച്ചതിന് ശേഷം, നിങ്ങൾ കാണും ഇനിപ്പറയുന്ന ഔട്ട്‌പുട്ട്:

നിങ്ങൾക്ക് കാണാനാകുന്നതുപോലെ, ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ് കമാൻഡ് പ്രയോഗിച്ച്, ഞങ്ങൾ പിശക് അവഗണിക്കുകയും ബാക്കിയുള്ള വ്യക്തികളെ കണ്ടെത്തുകയും ചെയ്തു. യുഗങ്ങൾ. ഞങ്ങളുടെ VBA കോഡ് ആരണിന്റെയും എമ്മയുടെയും ഡാറ്റയൊന്നും കണ്ടെത്തിയില്ല. അതുകൊണ്ടാണ് അത് ആ മൂല്യങ്ങൾ അവഗണിക്കുകയും Excel വർക്ക്ഷീറ്റിലെ ബാക്കി മൂല്യങ്ങൾ തിരികെ നൽകുകയും ചെയ്തത്.

കൂടുതൽ വായിക്കുക: [പരിഹരിച്ചത്] Excel ഈ വർക്ക്ഷീറ്റിൽ ഒന്നോ അതിലധികമോ ഫോർമുല റഫറൻസുകളിൽ ഒരു പ്രശ്നം കണ്ടെത്തി

Excel VBA ഉപയോഗിച്ച് 'On Error Resume Next' ഓഫാക്കുക

ഇപ്പോൾ, VBA കോഡിന്റെ ഒരു പ്രത്യേക സെഗ്‌മെന്റിനുള്ള പിശകുകൾ അവഗണിക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്ന ഒരു സാഹചര്യത്തിലായിരിക്കാം നിങ്ങൾ. ഓർക്കുക, നിങ്ങൾ ഒരു വിബിഎ കോഡിൽ ഓൺ എറർ റെസ്യൂം നെക്സ്റ്റ് സ്റ്റേറ്റ്മെന്റ് ഉപയോഗിക്കുകയാണെങ്കിൽ, അതിന് ശേഷമുള്ള എല്ലാ പിശകുകളും അത് ഒഴിവാക്കും. ഇപ്പോൾ, നിങ്ങൾക്ക് അത് ഓഫാക്കി മറ്റൊരു സെഗ്‌മെന്റിനായി പിശക് കൈകാര്യം ചെയ്യൽ പ്രവർത്തനക്ഷമമാക്കണമെങ്കിൽ, On Error GoTo 0 ഉപയോഗിക്കുക. ഇത് പിശക് കൈകാര്യം ചെയ്യൽ വീണ്ടും പ്രവർത്തനക്ഷമമാക്കും.

പൊതുവായ ഉപയോഗം:

Sub error_handling()

പിശകുകൾ അവഗണിക്കാൻ

പിശകുണ്ടായാൽ അടുത്തത് പുനരാരംഭിക്കുക

// കോഡുകളുടെ വരികൾ

ഇതിലേക്ക്പിശക് കൈകാര്യം ചെയ്യൽ ഓണാക്കുക

On Error GoTo 0

//കോഡുകളുടെ വരികൾ

ഉപവസാനം

ഒരു നോക്കുക ഇനിപ്പറയുന്ന VBA കോഡ്:

2245

VLOOKUP ഫംഗ്‌ഷനുവേണ്ടി ഞങ്ങൾ മുമ്പ് കോഡ് ഉപയോഗിച്ചു. നിങ്ങളെ കാണിക്കാൻ ഇവിടെ ഒരു അധിക കോഡ് ചേർത്തു. VLOOKUP നടത്തുമ്പോൾ ഞങ്ങളുടെ കോഡ് പിശകുകൾ അവഗണിക്കും എന്നാൽ അത് On Error GoTo 0 സ്റ്റേറ്റ്‌മെന്റിന് ശേഷം പിശക് കൈകാര്യം ചെയ്യൽ സജീവമാക്കും.

കൂടുതൽ വായിക്കുക: Excel VBA: “On Error Resume Next” ഓഫാക്കുക

VBA 'On Error GoTo'

മുമ്പ് ഞാൻ ചർച്ച ചെയ്തത് ഓൺ എറർ രീതി ഉപയോഗിച്ച് പിശകുകൾ കൈകാര്യം ചെയ്യുന്നു. ഞങ്ങളുടെ മുഴുവൻ ലേഖനവും എറർ റെസ്യൂമിനെ കുറിച്ചുള്ളതായിരുന്നു. ഇപ്പോൾ, ഇനിപ്പറയുന്ന വിഭാഗങ്ങളിൽ ഞാൻ ചർച്ച ചെയ്യുന്ന രണ്ട് തരത്തിലുള്ള പിശക് കൈകാര്യം ചെയ്യലും ഉണ്ട്.

1. VBA On Error GoTo 0

The On Error Goto 0 നിങ്ങളുടെ കോഡുകൾക്ക് ഒരു പിശക് ഹാൻഡ്‌ലർ ഇല്ലെങ്കിൽ, Excel-ന്റെ ഇൻബിൽറ്റ് ക്രമീകരണമാണ് പ്രസ്താവന. ഇത് അടിസ്ഥാനപരമായി സൂചിപ്പിക്കുന്നത്, ഓൺ എറർ ഗോടോ 0 എന്നതിൽ VBA ഒരു പിശക് കണ്ടെത്തുമ്പോൾ, അത് കോഡ് പ്രവർത്തിപ്പിക്കുന്നത് നിർത്തി അതിന്റെ പരമ്പരാഗത പിശക് സന്ദേശ ബോക്സ് കാണിക്കും.

On Error GoTo 0 പ്രസ്‌താവന അടിസ്ഥാനപരമായി നിലവിലെ നടപടിക്രമത്തിലെ പിശക് കൈകാര്യം ചെയ്യുന്നത് ഓഫാക്കുന്നു. പിശക് കൈകാര്യം ചെയ്യുന്ന കോഡിന്റെ തുടക്കമായി ഇത് വരി 0 നിർവചിക്കുന്നില്ല, രീതി 0 എന്ന നമ്പറുള്ള ഒരു വരി ഉൾപ്പെടുത്തിയാലും.

ഇനിപ്പറയുന്ന കോഡ് നോക്കുക:

6987

ഞങ്ങൾക്ക് ഉണ്ട് ഈ കോഡ് നിങ്ങൾക്ക് ഇതിനകം കാണിച്ചിരിക്കുന്നു. ഈ കോഡ് അടിസ്ഥാനപരമായി എല്ലാ വർക്ക്ഷീറ്റുകളും മറയ്ക്കുന്നുനിങ്ങളുടെ നിലവിലെ വർക്ക്ബുക്കിൽ. ഇപ്പോൾ, പിശക് കാണിക്കാൻ എനിക്ക് തീർച്ചയായും ഓൺ എറർ ഗോടോ 0 ഉള്ള ഒരു അധിക കോഡ് ഉണ്ട്. നിങ്ങൾ കോഡ് പ്രവർത്തിപ്പിക്കുകയാണെങ്കിൽ, നിങ്ങൾ ഇനിപ്പറയുന്നവ കാണും:

ഇത് ഈ പിശക് കാണിക്കുന്നു, കാരണം നമുക്ക് സജീവമായ വർക്ക്ബുക്കിൽ അതേ പേരിലുള്ള ഷീറ്റുകൾ ഉണ്ടാകില്ല.

2. VBA ഓൺ Error GoTo ലൈനിൽ

ഇപ്പോൾ, നിങ്ങൾക്ക് Excel-ന് എന്തെങ്കിലും പിശക് കണ്ടെത്തുകയാണെങ്കിൽ, On Error GoTo ലൈൻ ഉപയോഗിച്ച് കോഡിന്റെ മറ്റൊരു സെഗ്മെന്റ് പ്രവർത്തിപ്പിക്കാൻ നിർദ്ദേശിക്കാവുന്നതാണ്. ഒരു പിശക് കണ്ടെത്തിയതിന് ശേഷം എന്തെങ്കിലും എക്സിക്യൂട്ട് ചെയ്യാൻ ഇത് Excel-നോട് പറയുന്നു.

ലൈൻ ആർഗ്യുമെന്റ് ഏതെങ്കിലും ലൈൻ ടാഗ് അല്ലെങ്കിൽ ലൈൻ നമ്പറാണ്. ഞങ്ങളുടെ കോഡ് ഏതെങ്കിലും റൺ-ടൈം പിശക് ഉണ്ടാക്കുകയാണെങ്കിൽ, അത് ലൈനിലേക്ക് നീങ്ങും, ഇത് എക്സിക്യൂഷനിൽ പിശക് ഹാൻഡ്ലർ സജീവമാക്കുന്നു. ഓർക്കുക, നിങ്ങളുടെ നിർവചിച്ച വരി ഓൺ എറർ സ്റ്റേറ്റ്‌മെന്റ് പോലെ കൃത്യമായ നടപടിക്രമത്തിലായിരിക്കണം; അല്ലെങ്കിൽ, ഇത് ഒരു കംപൈൽ പിശകിന് കാരണമാകും.

ഇനിപ്പറയുന്ന കോഡ് നോക്കുക:

7810

മുമ്പത്തെ ഉദാഹരണത്തിൽ നിങ്ങൾ കോഡ് കണ്ടു. ഞങ്ങൾ On Error GoTo 0 ഉപയോഗിച്ചപ്പോൾ, അത് ഒരു പിശകിന് കാരണമായി. പക്ഷേ, ഇവിടെ ഞങ്ങൾ അത് On Error GoTo line സ്റ്റേറ്റ്‌മെന്റ് ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിച്ചു.

ഇപ്പോൾ, കോഡ് പ്രവർത്തിപ്പിക്കുക, നിങ്ങൾ ഇനിപ്പറയുന്നവ കാണും:

നിങ്ങൾക്ക് കാണാനാകുന്നതുപോലെ, ഇത് ഞങ്ങൾക്ക് സാധാരണ പിശക് ഡയലോഗ് ബോക്സ് കാണിക്കുന്നില്ല. പകരം, error_handler സെഗ്‌മെന്റിൽ ഞങ്ങൾ സൃഷ്‌ടിച്ച ഇഷ്‌ടാനുസൃത സന്ദേശ ബോക്‌സ് ഇത് കാണിക്കുന്നു. Excel എന്തെങ്കിലും പിശക് കണ്ടെത്തുമ്പോൾ, അത് error_handler സെഗ്‌മെന്റിലേക്ക് പോകുകയും സന്ദേശ ബോക്‌സ് കാണിക്കുകയും ചെയ്യുന്നു.

ഞങ്ങൾ നടപടിക്രമത്തിൽ ഒരു എക്സിറ്റ് സബ് ഉപയോഗിച്ചു." VLOOKUP " എന്ന പേരിൽ ഷീറ്റ് ഇല്ലെങ്കിൽ, ഞങ്ങളുടെ VBA കോഡ് സജീവ ഷീറ്റിന്റെ പേര് മാറ്റും. തുടർന്ന്, ഞങ്ങൾ ഇവിടെ എക്സിക്യൂഷൻ പൂർത്തിയാക്കേണ്ടതുണ്ട്, കാരണം നമുക്ക് പിശക് ഹാൻഡ്‌ലറിലേക്ക് കൊണ്ടുപോകുകയും സന്ദേശ ബോക്‌സ് പ്രദർശിപ്പിക്കുകയും ചെയ്യേണ്ടതില്ല.

VBA 'എറർ ഓൺ' Excel-ൽ പ്രവർത്തിക്കുന്നില്ല

ചിലപ്പോൾ, നിങ്ങൾ എത്ര ശ്രമിച്ചാലും, ഓൺ എറർ രീതി പ്രവർത്തിക്കില്ല. മുമ്പ്, പിശകുകൾ കൈകാര്യം ചെയ്യുന്നതിനായി ഞങ്ങൾ ഓൺ എറർ രീതി നടപ്പിലാക്കി. പക്ഷേ, നിങ്ങൾ On Error Resume Next അല്ലെങ്കിൽ On Error GoTo 0 ഉപയോഗിച്ചാലും ചിലപ്പോൾ അത് പിശകുകൾ കാണിക്കും. നിങ്ങളുടെ കോഡിൽ നിങ്ങൾ പരിഹരിക്കേണ്ട നിരവധി കാരണങ്ങളുണ്ടാകാം. ഞാൻ അത് നിങ്ങളെ കാണിക്കാൻ പോകുന്നില്ല.

VBA ' ഓൺ എറർ' Excel-ൽ പ്രവർത്തിക്കാത്തതിന്റെ അടിസ്ഥാന കാരണം Excel-ലെ "Break on All Errors" ഓപ്‌ഷൻ ഓണാക്കുന്നതാണ്.

അത് പരിഹരിക്കാൻ ഈ ഘട്ടങ്ങൾ പാലിക്കുക:

📌 ഘട്ടങ്ങൾ

  • ആദ്യം, നിങ്ങളുടെ കീബോർഡിൽ Alt+F11 അമർത്തുക VBA എഡിറ്റർ തുറക്കുക.
  • ഇപ്പോൾ, Tools > ഓപ്‌ഷനുകൾ.

  • അതിനുശേഷം, ഓപ്‌ഷനുകൾ ഡയലോഗിലെ പൊതുവായ ടാബിൽ ക്ലിക്ക് ചെയ്യുക box.

  • ഇവിടെ, “ എല്ലാ പിശകുകളും തകർക്കുക ” ഇതിനകം പരിശോധിച്ചതായി നിങ്ങൾക്ക് കാണാം. പിശകുകൾ കൈകാര്യം ചെയ്യുന്നതിൽ നിന്ന് ഇത് അടിസ്ഥാനപരമായി നിങ്ങളെ തടയുന്നു.
  • ഇത് മാറ്റാൻ, " അൺഹാൻഡ് ചെയ്യാത്ത പിശകുകളിൽ ബ്രേക്ക് ചെയ്യുക " എന്ന ഓപ്‌ഷൻ തിരഞ്ഞെടുത്ത് ശരി ക്ലിക്ക് ചെയ്യുക.

Excel-ൽ പ്രവർത്തിക്കാത്ത VBA “ഓൺ എറർ” എന്ന നിങ്ങളുടെ പ്രശ്നം ഇത് പരിഹരിക്കുമെന്ന് ഞാൻ പ്രതീക്ഷിക്കുന്നു.

കൂടുതൽ വായിക്കുക: കാരണങ്ങൾ തിരുത്തലുകളും

വ്യവസായത്തിൽ 10 വർഷത്തിലേറെ അനുഭവപരിചയമുള്ള വളരെ പരിചയസമ്പന്നനായ എക്സൽ പരിശീലകനും അനലിസ്റ്റുമാണ് ഹ്യൂ വെസ്റ്റ്. അക്കൗണ്ടിംഗ്, ഫിനാൻസ് എന്നിവയിൽ ബിരുദവും ബിസിനസ് അഡ്മിനിസ്ട്രേഷനിൽ ബിരുദാനന്തര ബിരുദവും നേടിയിട്ടുണ്ട്. ഹ്യൂവിന് അധ്യാപനത്തിൽ അഭിനിവേശമുണ്ട് കൂടാതെ പിന്തുടരാനും മനസ്സിലാക്കാനും എളുപ്പമുള്ള ഒരു അദ്വിതീയ അധ്യാപന സമീപനം വികസിപ്പിച്ചെടുത്തിട്ടുണ്ട്. എക്സലിനെ കുറിച്ചുള്ള അദ്ദേഹത്തിന്റെ വിദഗ്ദ്ധ പരിജ്ഞാനം ലോകമെമ്പാടുമുള്ള ആയിരക്കണക്കിന് വിദ്യാർത്ഥികളെയും പ്രൊഫഷണലുകളെയും അവരുടെ കഴിവുകൾ മെച്ചപ്പെടുത്തുന്നതിനും അവരുടെ കരിയറിൽ മികവ് പുലർത്തുന്നതിനും സഹായിച്ചിട്ടുണ്ട്. തന്റെ ബ്ലോഗിലൂടെ, ഹ്യൂ തന്റെ അറിവ് ലോകവുമായി പങ്കിടുന്നു, സൗജന്യ എക്സൽ ട്യൂട്ടോറിയലുകളും ഓൺലൈൻ പരിശീലനവും വാഗ്ദാനം ചെയ്യുന്നു, വ്യക്തികളെയും ബിസിനസ്സുകളെയും അവരുടെ പൂർണ്ണ ശേഷിയിൽ എത്തിക്കാൻ സഹായിക്കുന്നു.