Vbs ഉദാഹരണങ്ങൾ. VBA Excel: സാമ്പിൾ പ്രോഗ്രാമുകൾ. Excel-ലെ മാക്രോകൾ

ജോലിയുടെ ലക്ഷ്യം -അടിസ്ഥാന ഓപ്പറേറ്റർമാരെക്കുറിച്ചുള്ള പഠനവും VBA ഭാഷയിൽ അടിസ്ഥാന പ്രോഗ്രാമിംഗ് നിർമ്മിതികൾ നടപ്പിലാക്കലും.

4.1 Excel-ൽ vba പ്രോഗ്രാമുകളുമായി പ്രവർത്തിക്കുന്നതിന്റെ പ്രധാന ഘട്ടങ്ങൾ

VBA-യിൽ ഒരു പ്രോഗ്രാം തയ്യാറാക്കുന്നതിനും പ്രവർത്തിപ്പിക്കുന്നതിനും, നിങ്ങൾ ഇനിപ്പറയുന്നവ ചെയ്യേണ്ടതുണ്ട്:

    Excel-ൽ, മെനുവിൽ നിന്ന് ഒരു കമാൻഡ് തിരഞ്ഞെടുക്കുക ഉപകരണങ്ങൾ - മാക്രോ - എഡിറ്റർവിഷ്വൽഅടിസ്ഥാനം;

    ദൃശ്യമാകുന്ന വിൻഡോയിൽ, മെനുവിൽ നിന്ന് കമാൻഡ് തിരഞ്ഞെടുക്കുക തിരുകുകമൊഡ്യൂൾ. ഒരു മൊഡ്യൂൾ സൃഷ്ടിച്ചു, അതായത്, ലളിതമായി പറഞ്ഞാൽ, ഒരു വിൻഡോ തുറക്കുന്നു, അതിൽ നിങ്ങൾക്ക് പ്രോഗ്രാം ടെക്സ്റ്റ് നൽകാം.

മൊഡ്യൂളിന്റെ തുടക്കത്തിൽ ഒരു നിർദ്ദേശം സൂചിപ്പിക്കാം ഓപ്ഷൻവ്യക്തമായത്. ഇത് വ്യക്തമാക്കിയിട്ടുണ്ടെങ്കിൽ, പ്രോഗ്രാമിൽ ഉപയോഗിക്കുന്ന എല്ലാ വേരിയബിളുകളും പ്രസ്താവനയിൽ പ്രഖ്യാപിക്കേണ്ടതുണ്ട് മങ്ങിയ(ഇതിനെക്കുറിച്ചുള്ള കൂടുതൽ വിവരങ്ങൾക്ക്, ഉപവിഭാഗം 4.3 കാണുക).

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

പ്രോഗ്രാം പ്രവർത്തിപ്പിക്കുന്നതിന്, നിങ്ങൾ മെനുവിൽ നിന്ന് കമാൻഡ് തിരഞ്ഞെടുക്കണം പ്രവർത്തിപ്പിക്കുക - ഉപ/ഉപയോക്തൃഫോം പ്രവർത്തിപ്പിക്കുക.

4.2 VBA-യിലെ ഒരു പ്രോഗ്രാമിന്റെ ഏറ്റവും ലളിതമായ ഉദാഹരണം

ഉദാഹരണം 4.1- ഒരു നിർദ്ദിഷ്ട സംഖ്യ ഉയർത്തുന്ന ഒരു പ്രോഗ്രാം നിർദ്ദിഷ്ട ഡിഗ്രി വരെ ബി.

ഡിം എ സിംഗിൾ, ബി അസ് സിംഗിൾ

a = InputBox(“അടിസ്ഥാനം നൽകുക:”)

b = ഇൻപുട്ട്ബോക്സ് ("ഘാതം നൽകുക:")

x = a^b 'എക്‌സ്‌പോണൻഷ്യേഷൻ

MsgBox(“ഫലം” & x)

വാക്ക് ഇതാ ഉപനടപടിക്രമത്തിന്റെ ആരംഭം സൂചിപ്പിക്കുന്നു; അവളുടെ പേരുണ്ട് ഈ സാഹചര്യത്തിൽപ്രൈമർ4_1 . ഒരു VBA പ്രോഗ്രാമിൽ എല്ലായ്പ്പോഴും ഒന്നോ അതിലധികമോ നടപടിക്രമങ്ങൾ അടങ്ങിയിരിക്കുന്നു (ഈ സാഹചര്യത്തിൽ, ഒന്ന്).

'(ഒറ്റ ഉദ്ധരണി ചിഹ്നം) പ്രതീകം ഒരു കമന്റിന്റെ തുടക്കത്തെ സൂചിപ്പിക്കുന്നു. കമന്റ് ടെക്‌സ്‌റ്റ് എന്തും ആകാം.

മങ്ങിയ- വേരിയബിൾ ഡിക്ലറേഷൻ ഓപ്പറേറ്റർ. ഈ സാഹചര്യത്തിൽ, വേരിയബിളുകൾ എന്ന് സൂചിപ്പിച്ചിരിക്കുന്നു ഒപ്പം ബിതരം ഉണ്ട് സിംഗിൾ. ആ. ഒന്നുകിൽ മുഴുവനായോ ആകാം ഭിന്നസംഖ്യകൾ. ഡാറ്റ തരങ്ങളും വേരിയബിൾ ഡിക്ലറേഷനുകളും ഉപവിഭാഗം 4.3 ൽ കൂടുതൽ വിശദമായി ചർച്ച ചെയ്യും.

ഇൻപുട്ട്ബോക്സ്- ഒരു വേരിയബിളിന്റെ മൂല്യം നൽകുന്നതിനുള്ള പ്രവർത്തനം. ലൈൻ = ഇൻപുട്ട്ബോക്സ്(“അടിസ്ഥാനം നൽകുക:”) വേരിയബിളിന്റെ മൂല്യം നൽകപ്പെടുന്നു എന്നാണ് അർത്ഥമാക്കുന്നത് ; ഒരു സന്ദേശം സ്ക്രീനിൽ ദൃശ്യമാകുന്നു "അടിസ്ഥാനം നൽകുക:". ലൈൻ x = ^ ബി- അസൈൻമെന്റ് ഓപ്പറേറ്റർ: വലതുവശത്തെ മൂല്യം കണക്കാക്കുന്നു (ഈ സാഹചര്യത്തിൽ, വേരിയബിൾ അധികാരത്തിലേക്ക് ഉയർത്തി ബി), ഫലം ഇടത് വശത്ത് വ്യക്തമാക്കിയ വേരിയബിളിലേക്ക് അസൈൻ ചെയ്‌തിരിക്കുന്നു (ഈ സാഹചര്യത്തിൽ, വേരിയബിൾ x). ലൈൻ MsgBox(“ഫലം ഇതാണ്” &x) സ്ക്രീനിൽ ഒരു സന്ദേശം പ്രദർശിപ്പിക്കുന്നു എന്നാണ് അർത്ഥമാക്കുന്നത് "ഫലം തുല്യമാണ്"വേരിയബിളിന്റെ മൂല്യവും x.

കുറിപ്പ് - ഒപ്പിടുക & പ്രവർത്തനത്തിൽ MsgBoxപ്രദർശിപ്പിക്കേണ്ട നിരവധി ഡാറ്റ ഘടകങ്ങൾ സംയോജിപ്പിക്കാൻ രൂപകൽപ്പന ചെയ്‌തിരിക്കുന്നു, ഈ ഉദാഹരണത്തിൽ - സ്ട്രിംഗുകൾ "ഫലം തുല്യമാണ്"വേരിയബിളും x. സമാനമായ അടയാളം & പ്രവർത്തനത്തിൽ ഉപയോഗിക്കാം ഇൻപുട്ട്ബോക്സ്(അത്തരം ഉപയോഗത്തിന്റെ ഉദാഹരണങ്ങൾ ചുവടെ നൽകും). ചിഹ്നത്തിന് മുന്നിൽ & അതിനു ശേഷം ഇടങ്ങൾ ഉണ്ടായിരിക്കണം.

നിങ്ങൾക്ക് ഒരു വരിയിൽ ഒന്നിലധികം VBA പ്രസ്താവനകൾ സ്ഥാപിക്കാൻ കഴിയും. ഇത് ചെയ്യുന്നതിന്, അവ കോളൻ പ്രതീകങ്ങളാൽ വേർതിരിച്ചിരിക്കുന്നു. അതിനാൽ, ഉദാഹരണം 4.1-ൽ നിന്നുള്ള പ്രോഗ്രാം ഇനിപ്പറയുന്ന രീതിയിൽ എഴുതാം:

ഒരു VBA പ്രോഗ്രാമിന്റെ ആദ്യ ഉദാഹരണം

ഡിം എ സിംഗിൾ, ബി അസ് സിംഗിൾ

a = InputBox(“അടിസ്ഥാനം നൽകുക: ”) : b = InputBox(“എക്‌സ്‌പോണന്റ് നൽകുക:”)

x = a^b: MsgBox("ഫലം " & x ആണ്) 'ഫലത്തിന്റെ എക്‌സ്‌പോണൻഷ്യേഷനും ഔട്ട്‌പുട്ടും

ഈ ഉദാഹരണം സബ്റൂട്ടീൻ എന്ന ഒരു നടപടിക്രമം ഉപയോഗിക്കുന്നു. ഈ നടപടിക്രമം ആരംഭിക്കുന്നത് വാക്കിൽ നിന്നാണ് ഉപ. ഒരു VBA പ്രോഗ്രാമിന് എല്ലായ്‌പ്പോഴും ഒരു സബ്റൂട്ടീൻ നടപടിക്രമമെങ്കിലും ഉണ്ടായിരിക്കും. കൂടാതെ, VBA ഭാഷയ്ക്ക് മറ്റൊരു തരത്തിലുള്ള നടപടിക്രമമുണ്ട് - ഫംഗ്ഷനുകൾ. ഒരു ഫംഗ്ഷൻ നടപടിക്രമം ആരംഭിക്കുന്നത് വാക്കിൽ നിന്നാണ് ഫംഗ്ഷൻ. അത്തരം നടപടിക്രമങ്ങളുടെ ഉപയോഗം ഉപവിഭാഗം 4.9 ൽ ചർച്ച ചെയ്യും.

(വിഷ്വൽ ബേസിക്അപേക്ഷയ്ക്കായി)

അടിസ്ഥാന - ഉയർന്ന തലത്തിലുള്ള പ്രോഗ്രാമിംഗ് ഭാഷ (വ്യാഖ്യാതാവ്)

വിഷ്വൽ - ഉപയോക്താവിന്റെ ജോലി ലളിതമാക്കുന്ന പ്രോഗ്രാമുകൾ (കോഡുകൾ) വികസിപ്പിക്കുന്നതിനുള്ള വിഷ്വൽ ടൂളുകൾ അടങ്ങിയിരിക്കുന്നു, മാക്രോ റെക്കോർഡർ ഉപയോഗിച്ച് കോഡുകൾ റെക്കോർഡുചെയ്യാൻ നിങ്ങളെ അനുവദിക്കുന്നു.

ആപ്ലിക്കേഷൻ - Word, Access, PowerPoint ആപ്ലിക്കേഷനുകൾക്കൊപ്പം MSOffice സോഫ്റ്റ്‌വെയർ സിസ്റ്റത്തിലേക്കുള്ള ഒരു ആപ്ലിക്കേഷൻ.

എന്തുകൊണ്ട് അത് ആവശ്യമാണ്?VBA?

    ആപ്ലിക്കേഷനുകൾ സംയോജിപ്പിക്കുന്നു (സംയോജിപ്പിക്കുന്നു), Excel വിടാതെ തന്നെ മറ്റ് ആപ്ലിക്കേഷനുകളുടെ പ്രവർത്തനം നിയന്ത്രിക്കാനും മറ്റ് ആപ്ലിക്കേഷനുകളിൽ നിന്ന് ഒബ്ജക്റ്റുകൾ ഉൾച്ചേർക്കാനും നിങ്ങളെ അനുവദിക്കുന്നു;

    പ്രവർത്തനങ്ങൾ ഉപയോക്താവിന് ലഭ്യമാണ്വർക്ക്ഷീറ്റിൽ Excel ആപ്ലിക്കേഷന്റെ എല്ലാ കഴിവുകളുടെയും 10% വരും, നിങ്ങളുടെ പ്രോജക്റ്റിന്റെ പ്രവർത്തനം ഓട്ടോമേറ്റ് ചെയ്യാൻ VBA നിങ്ങളെ അനുവദിക്കുന്നു.

VBA ഒരു ഒബ്ജക്റ്റ്-ഓറിയന്റഡ് ഭാഷയാണ്, അതായത് പ്രോജക്റ്റുകൾ വികസിപ്പിക്കുമ്പോൾ ഒബ്ജക്റ്റുകൾ ഉപയോഗിക്കുന്നു എന്നാണ്. നിർവ്വചനം:ഡാറ്റയും കോഡും ഒരൊറ്റ മൊത്തത്തിൽ സംയോജിപ്പിക്കുന്നു ഉദാഹരണത്തിന്, "ബട്ടൺ" ഘടകവും ഈ ബട്ടണുമായി ബന്ധപ്പെട്ട അനുബന്ധ കോഡും മറ്റൊരു ഷീറ്റിലേക്ക് ഒരു പരിവർത്തനം നൽകും. വർക്ക്ബുക്ക്.

പ്രധാന വസ്തുക്കൾVBA:

ആപ്ലിക്കേഷൻ (എക്സൽ ആപ്ലിക്കേഷൻ തന്നെ)

വർക്ക്ബുക്ക് (വർക്ക്ബുക്ക് നിങ്ങളുടെ ഫയലാണ്)

വർക്ക്ഷീറ്റ് ഫംഗ്ഷൻ (ഫംഗ്ഷൻ വിസാർഡ്)

വർക്ക് ഷീറ്റ്

പരിധി

ചാർട്ട്

ശൈലി

അതിർത്തി

ഇന്റീരിയർ (പശ്ചാത്തല നിറം)

ഫോണ്ട് (ഫോണ്ട്)

ചില വസ്തുക്കളുടെ ഒരു കൂട്ടം കുടുംബങ്ങൾ- വർക്ക്ബുക്കുകൾ, വർക്ക് ഷീറ്റുകൾ, ചാർട്ടുകൾ.

ഒബ്‌ജക്‌റ്റുകൾക്ക് ഗുണങ്ങളും (വസ്തുക്കളുടെ മേലുള്ള പ്രവർത്തനങ്ങൾ) രീതികളും (ഒബ്‌ജക്റ്റുകളിൽ തന്നെയുള്ള പ്രവർത്തനങ്ങൾ) ഉണ്ട്.

VBA-യിൽ പ്രോജക്റ്റ് വികസനത്തിനുള്ള വിഷ്വലൈസേഷൻ ടൂളുകൾ പരിചയപ്പെടാൻ തുടങ്ങാം. ഇതാണ് ഇന്റഗ്രേറ്റഡ് ആപ്ലിക്കേഷൻ ഡെവലപ്മെന്റ് എൻവയോൺമെന്റ്. ഈ പരിതസ്ഥിതിയിൽ പ്രവേശിക്കാൻ, നിങ്ങൾ മെനു ഇനത്തിൽ നിന്ന് ToolsMacroVBA എഡിറ്റർ തിരഞ്ഞെടുക്കേണ്ടതുണ്ട് അല്ലെങ്കിൽ ALT, F11 കീകൾ ഒരേസമയം അമർത്തുക.

VBA എഡിറ്റർ ഘടകങ്ങൾ സ്ക്രീനിൽ ദൃശ്യമാകും:

പ്രോജക്റ്റ് വിൻഡോ - VBA പ്രോജക്റ്റ്

പ്രോപ്പർട്ടീസ് വിൻഡോ

കോഡ് വിൻഡോ

യൂസർഫോം വിൻഡോ

ടൂൾബാറുകൾ

Project–VBAProject വിൻഡോ (ചിത്രം 1) നിങ്ങളുടെ പ്രോജക്റ്റിന്റെ (ഫയൽ) ഘടന കാണിക്കുന്നു. View  Project Explorer കമാൻഡ് അല്ലെങ്കിൽ "Project Explorer" ബട്ടൺ തിരഞ്ഞെടുത്ത് അല്ലെങ്കിൽ Ctrl + R അമർത്തിക്കൊണ്ട് VBA എഡിറ്ററിൽ ഈ വിൻഡോ സജീവമാക്കുന്നു.

അരി. 1 പ്രോജക്റ്റ് വിൻഡോ.

ചിത്രം.2 സംയോജിത ആപ്ലിക്കേഷൻ വികസന പരിസ്ഥിതി

ഒരു ഒബ്‌ജക്‌റ്റുമായി ബന്ധപ്പെട്ട കോഡ് സംഭരിക്കുന്നതിനാണ് കോഡ് വിൻഡോ രൂപകൽപ്പന ചെയ്‌തിരിക്കുന്നത്. ഓരോ ഒബ്ജക്റ്റിനും അതിന്റേതായ വിൻഡോ ഉണ്ട്, അതിനാൽ ഓരോ വർക്ക്ഷീറ്റിനും അതിന്റേതായ കോഡ് വിൻഡോ ഉണ്ട്, വർക്ക്ബുക്കിന് അതിന്റേതായ വിൻഡോ ഉണ്ട്.

സൃഷ്ടി ഇഷ്ടാനുസൃത പ്രവർത്തനങ്ങൾ

ഇഷ്‌ടാനുസൃത സവിശേഷതകൾ ചേർത്തിരിക്കുന്നു സ്റ്റാൻഡേർഡ് ലിസ്റ്റ്ഫംഗ്ഷൻ വിസാർഡുകൾ (വർക്ക്ഷീറ്റ്ഫംഗ്ഷൻ). ഈ ഫംഗ്ഷനുകൾ വർക്ക്ഷീറ്റ്ഫംഗ്ഷൻ ഒബ്ജക്റ്റിനൊപ്പമുള്ള ഒരു പ്രത്യേക മൊഡ്യൂളിലാണ് സൃഷ്ടിച്ചിരിക്കുന്നത്. InsertModule കമാൻഡ് ഉപയോഗിച്ച് ഈ മൊഡ്യൂൾ പ്രോജക്റ്റിലേക്ക് ചേർത്തു, അത് നിങ്ങളുടെ ആപ്ലിക്കേഷൻ തലത്തിലുള്ള പ്രൊജക്റ്റ് വിൻഡോയിൽ ദൃശ്യമാകും. ഈ മൊഡ്യൂളിൽ എഴുതിയിരിക്കുന്ന എല്ലാ കോഡുകളും ഫംഗ്ഷൻ വിസാർഡിന്റെ ഉപയോക്തൃ നിർവചിച്ച പ്രവർത്തനങ്ങൾ വിഭാഗത്തിൽ ദൃശ്യമാകും.

അതിനാൽ, ഞങ്ങളുടെ പ്രോജക്റ്റിലേക്ക് ഞങ്ങൾ ഒരു മൊഡ്യൂൾ ചേർക്കുന്നു (InsertModule) ഈ മൊഡ്യൂളിന്റെ കോഡ് വിൻഡോയിൽ ഞങ്ങൾ പ്രോഗ്രാം ടെക്സ്റ്റ് എഴുതുന്നു:

y = Cos((x + 2) / 2) ^ 2 + Exp(-2 * x) / (x ^ 2 + 1) ^ 0.5

തുടർന്ന് "1 ചാർട്ട്" എന്ന വർക്ക്ഷീറ്റിലേക്ക് പോകുക, സെൽ c2 ൽ ഞങ്ങൾ ആക്സസ് ചെയ്യും പുതിയ സവിശേഷത, ഫംഗ്ഷൻ വിസാർഡിലേക്ക് ചേർത്തു - y(x). ഈ ഫംഗ്ഷനിൽ പ്രവർത്തിക്കുന്നത് മറ്റേതൊരു ഫംഗ്ഷനുമായി പ്രവർത്തിക്കുന്നതിൽ നിന്നും വ്യത്യസ്തമല്ല. ആദ്യ ഘട്ടത്തിൽ, "ഉപയോക്തൃ-നിർവചിച്ച പ്രവർത്തനങ്ങൾ" വിഭാഗത്തിൽ നിങ്ങൾ y(x) തിരഞ്ഞെടുക്കേണ്ടതുണ്ട്, രണ്ടാമത്തെ ഘട്ടത്തിൽ, സെൽ A2 ആർഗ്യുമെന്റ് x ആയി വ്യക്തമാക്കുക. തൽഫലമായി, =y(A2) എന്ന ഫോർമുല C2 സെല്ലിൽ എഴുതപ്പെടും. ചിത്രത്തിൽ കാണിച്ചിരിക്കുന്നതുപോലെ A2:A17 എന്ന മുഴുവൻ ശ്രേണിയിലും ഈ ഫോർമുല വലിച്ചിടുക. 3. തീർച്ചയായും, സാധാരണ വർക്ക്ഷീറ്റ് ടൂളുകൾ ഉപയോഗിച്ച് ഈ ഫംഗ്ഷൻ കണക്കാക്കുന്നതിലൂടെ നിങ്ങൾക്ക് ലഭിച്ച ഫലവുമായി പൊരുത്തപ്പെടണം.

ചിത്രം 3. ഫംഗ്‌ഷൻ y(x), സാധാരണ രീതിയിൽ കണക്കാക്കുകയും ഉപയോക്താവ് നിർവചിച്ച ഫംഗ്‌ഷൻ ഉപയോഗിക്കുകയും ചെയ്യുന്നു.

അടിസ്ഥാന vba പ്രസ്താവനകൾ - സോപാധിക പ്രസ്താവനകൾ

സോപാധിക ഓപ്പറേറ്റർമാർക്ക് 2 തരത്തിലുള്ള എഴുത്തുകളുണ്ട്:

1) ഒരു വരി

IF< условие>പിന്നെ<оператор 1>

IF, THEN, ELSE - ആംഗിൾ ബ്രാക്കറ്റുകളിൽ, മാറ്റാനാകാത്ത വാക്കുകൾ സേവനം< >അസൈൻമെന്റിന് അനുസൃതമായി നിങ്ങൾ എഴുതുന്നത് ഉപയോക്തൃ വാചകമാണ്, ചതുര ബ്രാക്കറ്റുകളിലെ ഭാഗം ഓപ്ഷണലാണ്, ടെക്സ്റ്റ് കാണാതെ വന്നേക്കാം. ലളിതമായ പ്രവർത്തനങ്ങളുടെ കാര്യത്തിൽ ഈ ഫോം സാധാരണയായി ഉപയോഗിക്കുന്നു, ഉദാഹരണത്തിന്, y=x=abs(s) എന്ന സംഖ്യയുടെ മോഡുലസ് കണക്കാക്കുമ്പോൾ, നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന ഓപ്പറേറ്റർ ഉപയോഗിക്കാം:

എങ്കിൽ x > 0 പിന്നെ y = x വേറെ y = -x

2) നിരവധി വരികളിൽ. ഈ സാഹചര്യത്തിൽ, സോപാധിക പ്രസ്താവന "ENDIF" പ്രസ്താവനയിൽ അവസാനിക്കണം.

IF<условие>പിന്നെ

<оператор 1>

<оператор 2>

<оператор 3>

<оператор 4>

സങ്കീർണ്ണമായ കണക്കുകൂട്ടലുകൾക്കായി ഈ ഫോം ഉപയോഗിക്കുന്നു, ഉദാഹരണത്തിന്, ഒരു ക്വാഡ്രാറ്റിക് സമവാക്യത്തിന്റെ വേരുകൾ കണക്കാക്കുമ്പോൾ. നമുക്ക് a*x 2 +b*x+c= 0 എന്ന സമവാക്യത്തിന്റെ വേരുകൾ കണ്ടെത്തേണ്ടതുണ്ടെന്ന് കരുതുക. അറിയപ്പെടുന്നതുപോലെ, b 2 -4*a*c≥ 0 ആണെങ്കിൽ, സൂത്രവാക്യം ഉപയോഗിച്ചാണ് വേരുകൾ കണക്കാക്കുന്നത്.
, ifb 2 -4*a*c≤ 0, അപ്പോൾ യഥാർത്ഥ സംഖ്യകളുടെ മേഖലയിൽ വേരുകളൊന്നുമില്ല. സോപാധിക ഓപ്പറേറ്റർ, ഈ അൽഗോരിതം നടപ്പിലാക്കുന്നത് ഇതുപോലെയാണ്:

b^2 -4*a*c>= 0 ആണെങ്കിൽ

X1 = (-b + (b^2 - 4*a*c)^(1/2)) / (2*a)

X2 = (-b + (b^2 + 4*a*c)^(1/2)) / (2*a)

X1 = "പരിഹാരമില്ല"

X2 = "പരിഹാരമില്ല"

vba-ൽ ഇഷ്‌ടാനുസൃത പ്രവർത്തനങ്ങൾ എഴുതുന്നതിനുള്ള ഉദാഹരണങ്ങൾ

ഉദാഹരണം 1.

എഫ്
ഫംഗ്‌ഷൻ y(x)

y = Cos((x + 2) / 2) ^ 2 + Exp(-2 * x) / (x ^ 2 + 1) ^ 0.5

എൻഡ് ഫംഗ്ഷൻ

ഉദാഹരണം 2

ഫംഗ്‌ഷൻ z(x)

x ആണെങ്കിൽ< 0 Then

z = (1 + x + x^2) / (1 + x^2)

x ആണെങ്കിൽ< 1 Then

z = (1 + 2 * x / (1 + x^2)) ^ (1 / 2)

z = 2 * Abs(0.5 + Sin(x))

എൻഡ് ഫംഗ്ഷൻ

പ്രഭാഷണം 2

    VBA ഒബ്‌ജക്‌റ്റുകളുടെ പ്രോപ്പർട്ടികൾ, രീതികൾ, ഇവന്റുകൾ. ഉദാഹരണം ഉപയോഗിച്ചുള്ള നടപടിക്രമം വ്യക്തിഗത പ്രോപ്പർട്ടികൾഒബ്ജക്റ്റ് ആപ്ലിക്കേഷൻ.

    നിയന്ത്രണങ്ങൾ

    VBA-യിലെ വേരിയബിളുകളുടെ തരങ്ങൾ

    ലൂപ്പ് പ്രസ്താവനകൾ

    ഒരു ഫംഗ്ഷൻ ടാബുലേഷൻ പ്രോഗ്രാമിന്റെ ഉദാഹരണം

VBA ഒബ്‌ജക്‌റ്റുകളുടെ പ്രോപ്പർട്ടികൾ, രീതികൾ, ഇവന്റുകൾ. ആപ്ലിക്കേഷൻ ഒബ്ജക്റ്റിന്റെ വ്യക്തിഗത സവിശേഷതകൾ ഉപയോഗിക്കുന്ന ഒരു നടപടിക്രമത്തിന്റെ ഉദാഹരണം.

നമുക്ക് VBA ഒബ്ജക്റ്റ് മോഡലുമായി പരിചയം തുടരാം. എല്ലാ വസ്തുക്കളും ക്രമീകരിച്ചിരിക്കുന്നു ശ്രേണിപരമായ ഘടന, വസ്തുവിന് കീഴ്പെടുത്തുക ഉയർന്ന തലം"അപേക്ഷ".

അപേക്ഷ . വർക്ക്ബുക്കുകൾ ("ചാർട്ടുകൾ") .

വർക്ക്ബുക്ക് (ഫയൽ) "ചാർട്ടുകൾ" സജീവമാണെങ്കിൽ, അത് വ്യക്തമാക്കിയാൽ മതി

വർക്ക് ഷീറ്റുകൾ("ഉള്ളടക്കം").റേഞ്ച്("A1").

നിങ്ങൾ "ഉള്ളടക്കങ്ങൾ" ഷീറ്റിലാണ് പ്രവർത്തിക്കുന്നതെങ്കിൽ, ലിങ്ക് റേഞ്ച് ("A1") പോലെ കാണപ്പെടും.

എല്ലാ വസ്തുക്കൾക്കും ഗുണങ്ങളും രീതികളും സംഭവങ്ങളും ഉണ്ട്.

സ്വത്ത്ഇത് ഒരു വസ്തുവിന്റെ ചില സ്വഭാവമാണ് (നിറം, ആകൃതി, പേര്, സ്ഥാനം, ദൃശ്യപരത മുതലായവ) വസ്തുവിന്റെ മൂല്യം ഇനിപ്പറയുന്ന രീതിയിൽ സജ്ജീകരിച്ചിരിക്കുന്നു:

Object.Property = വസ്തുവിന്റെ മൂല്യം

രീതിഇത് ഒരു ഒബ്‌ജക്‌റ്റിൽ നടത്തുന്ന ഒരു പ്രവർത്തനമാണ് (തുറക്കുക, അടയ്ക്കുക, ഇല്ലാതാക്കുക). എഴുത്ത് രീതിയുടെ നിയമം:

ഒരു വസ്തു. രീതി

സംഭവംഇത് ഒരു ഒബ്‌ജക്റ്റ് (മൗസ് ക്ലിക്ക്, ഡബിൾ ക്ലിക്ക്, കീ അമർത്തുക) തിരിച്ചറിഞ്ഞ ഒരു പ്രവർത്തനമാണ്.

വിബിഎയിലെ പ്രോഗ്രാമിംഗിന്റെ സാരാംശം രണ്ട് ആശയങ്ങൾ ഉൾക്കൊള്ളുന്നു - ഒരു സംഭവവും അതിനോടുള്ള പ്രതികരണവും. ഉപയോക്താവ് സിസ്റ്റത്തിൽ സ്വാധീനം ചെലുത്തുകയാണെങ്കിൽ (ഒരു ബട്ടൺ അമർത്തുന്നത്), അത് ഒരു ഇവന്റാണ്, തുടർന്ന് VBA ഉപയോഗിച്ച് ഒരു പ്രതികരണം പ്രോഗ്രാം ചെയ്യാൻ കഴിയും - ഒരു പ്രതികരണ പ്രവർത്തനം.

പ്രധാന വസ്തുക്കളുടെ ചില ഗുണങ്ങളും രീതികളും സംഭവങ്ങളും ഇവിടെയുണ്ട്.

സ്വത്ത്

ആപ്ലിക്കേഷൻ ഒബ്ജക്റ്റ്

അടിക്കുറിപ്പ് (വസ്തു തലക്കെട്ട്)

പുറത്തുകടക്കുക (Excel-ൽ നിന്ന് പുറത്തുകടക്കുക

പുതിയ വർക്ക്ബുക്ക് (ഒരു പുതിയ വർക്ക്ബുക്ക് സൃഷ്ടിക്കുന്നു)

സ്വയമേവ വീണ്ടെടുക്കൽ (യാന്ത്രികമായി സംരക്ഷിക്കുക)

രക്ഷിക്കും

ഷീറ്റ് സജീവമാക്കുക(വർക്ക്ഷീറ്റിലേക്ക് പോകുക)

റഫറൻസ് സ്റ്റൈൽ(ലിങ്ക് ശൈലി)

പ്രവർത്തിപ്പിക്കുക (ഒരു മാക്രോ എക്സിക്യൂട്ട് ചെയ്യുക)

വർക്ക്ബുക്ക് ഓപ്പൺ (ഒരു വർക്ക്ബുക്ക് തുറക്കുന്നു)

മെമ്മറി ഫ്രീ (സൗജന്യത്തെക്കുറിച്ചുള്ള വിവരങ്ങൾ റാൻഡം ആക്സസ് മെമ്മറി)

അസ്ഥിരമായ (വർക്ക്ഷീറ്റ് സെല്ലുകളിൽ മാറ്റം വരുമ്പോൾ വീണ്ടും കണക്കുകൂട്ടൽ)

വർക്ക്ബുക്ക് അടയ്ക്കുന്നതിന് മുമ്പ് (ഒരു വർക്ക്ബുക്ക് അടയ്ക്കുന്നു)

MemoryTotal (മൊത്തം റാമിനെക്കുറിച്ചുള്ള വിവരങ്ങൾ)

കണക്കാക്കുക (എല്ലാത്തിലും കണക്കുകൂട്ടൽ തുറന്ന പുസ്തകങ്ങൾ)

SheetBeforeDubleClick(ഇരട്ട ക്ലിക്ക്)

ഉപയോഗിച്ച മെമ്മറി (ഉപയോഗിച്ച റാമിനെക്കുറിച്ചുള്ള വിവരങ്ങൾ)

IpputBox(ഡാറ്റ ഇൻപുട്ട്)

SheetBeforeRightClick(ക്ലിക്ക് ചെയ്യുക വലത് ക്ലിക്കിൽ)

CellDragAndDrop (സെല്ലുകളിൽ ഫോർമുലകൾ വലിച്ചിടുന്നതിനുള്ള നിയന്ത്രണം)

Msgbox(സന്ദേശ ഔട്ട്പുട്ട്)

ActiveCell, ActiveSheet ( സജീവ സെൽ, ഷീറ്റ്)

കോശങ്ങൾ (സെല്ലുകളുടെ ശ്രേണി)

DisplayFormulaBar (ഫോർമുല ബാർ ഡിസ്പ്ലേ)

DisplayScrollBar(സ്ക്രോൾ ബാറുകൾ പ്രദർശിപ്പിക്കുക)

DisplayStatusBar (സ്റ്റാറ്റസ് ബാർ പ്രദർശിപ്പിക്കുന്നു)

ടൂളുകൾ/ഓപ്‌ഷനുകൾ വിൻഡോയിലെ നിരവധി ഓപ്ഷനുകളുടെ മൂല്യങ്ങൾ പ്രോഗ്രാം ചെയ്യുന്നതിനായി ആപ്ലിക്കേഷൻ രീതിയുടെ സവിശേഷതകൾ നിങ്ങളെ അനുവദിക്കുന്നു. ഉദാഹരണത്തിന്, ചുവടെ കാണിച്ചിരിക്കുന്ന നടപടിക്രമങ്ങൾ ഉപയോഗിച്ച്, നിങ്ങൾക്ക് Excel വിൻഡോയുടെ സാധാരണ രൂപം മാറ്റാനും തലക്കെട്ട് മാറ്റാനും ഫോർമുലകളുടെ ഡ്രാഗ് ആൻഡ് ഡ്രോപ്പ് പ്രവർത്തനം പ്രവർത്തനരഹിതമാക്കാനും കഴിയും.

ഈ നടപടിക്രമങ്ങൾ "ഈ വർക്ക്ബുക്ക്" മൊഡ്യൂളിൽ രേഖപ്പെടുത്തുകയും ഒരു വർക്ക്ബുക്ക് തുറക്കുകയും അടയ്ക്കുകയും ചെയ്യുമ്പോൾ, അതായത്, ഓപ്പൺ, ബിഫോർക്ലോസ് ഇവന്റുകൾ എക്സിക്യൂട്ട് ചെയ്യുമ്പോൾ നടപ്പിലാക്കുന്നു:

സ്വകാര്യ ഉപ വർക്ക്ബുക്ക്_ഓപ്പൺ()

"വർക്ക്ബുക്ക് ശീർഷകം

Application.Caption = "കിസയും ഒസ്യയും ഇവിടെ ഉണ്ടായിരുന്നു"

" റേഞ്ച് പശ്ചാത്തല നിറം A1:D1 - ചുവപ്പ്

"പരിധി പരിധികൾ A1:D1 ഡോട്ട് ചെയ്തിരിക്കുന്നു

"സെൽ ഡ്രാഗിംഗ് റദ്ദാക്കി. CellDragAndDrops

Application.CellDragAndDrop = False

' ഫോർമുല ബാർ നീക്കം ചെയ്തു

Application.DisplayFormulaBar = False

സ്ക്രോൾ ബാറുകൾ നീക്കം ചെയ്തു

Application.DisplayScrollBars = False

"R1C1 ലിങ്ക് ശൈലി സജ്ജമാക്കുന്നു

Application.ReferenceStyle = xlR1C1

"സ്വകാര്യ സബ് വർക്ക്ബുക്ക്_അടയ്ക്കുന്നതിന് മുമ്പ് (ബൂളിയൻ ആയി റദ്ദാക്കുക)

"CellDragAndDrops സെൽ ഡ്രാഗിംഗ് പുനഃസ്ഥാപിച്ചു

Application.CellDragAndDrop = True

'ഫോർമുല ബാർ പുനഃസ്ഥാപിച്ചു

Application.DisplayFormulaBar = True

‘സ്ക്രോൾ ബാറുകൾ പുനഃസ്ഥാപിച്ചു

Application.DisplayScrollBars = True

‘എ1 ലിങ്ക് ശൈലി പുനഃസ്ഥാപിച്ചു

Application.ReferenceStyle = xlA1

ജനപ്രിയതയുടെ ആദ്യ പതിപ്പ് എന്ന് കുറച്ച് ആളുകൾക്ക് അറിയാം മൈക്രോസോഫ്റ്റ് ഉൽപ്പന്നംഎക്സൽ 1985 ൽ പുറത്തിറങ്ങി. അതിനുശേഷം, ഇത് നിരവധി പരിഷ്കാരങ്ങളിലൂടെ കടന്നുപോയി, ലോകമെമ്പാടുമുള്ള ദശലക്ഷക്കണക്കിന് ഉപയോക്താക്കൾക്കിടയിൽ ആവശ്യക്കാരുണ്ട്. അതേസമയം, പലരും ഈ സ്‌പ്രെഡ്‌ഷീറ്റ് പ്രോസസറിന്റെ കഴിവുകളുടെ ഒരു ചെറിയ അംശം ഉപയോഗിച്ച് മാത്രമേ പ്രവർത്തിക്കൂ, മാത്രമല്ല Excel-ൽ പ്രോഗ്രാം ചെയ്യാനുള്ള കഴിവ് അവരുടെ ജീവിതം എങ്ങനെ എളുപ്പമാക്കുമെന്ന് പോലും മനസ്സിലാക്കുന്നില്ല.

എന്താണ് VBA

വിഷ്വൽ ബേസിക് ഫോർ ആപ്ലിക്കേഷൻ പ്രോഗ്രാമിംഗ് ഭാഷ ഉപയോഗിച്ചാണ് എക്സലിൽ പ്രോഗ്രാമിംഗ് നടത്തുന്നത്, അത് യഥാർത്ഥത്തിൽ ഏറ്റവും പ്രശസ്തമായ ഭാഷയിൽ നിർമ്മിച്ചതാണ്. ടേബിൾ പ്രൊസസർമൈക്രോസോഫ്റ്റിൽ നിന്ന്.

വിദഗ്ധർ അതിന്റെ ഗുണങ്ങളാൽ പഠനത്തിന്റെ താരതമ്യേന എളുപ്പം ആരോപിക്കുന്നു. പ്രാക്ടീസ് കാണിക്കുന്നതുപോലെ, പ്രൊഫഷണൽ പ്രോഗ്രാമിംഗ് കഴിവുകൾ ഇല്ലാത്ത ഉപയോക്താക്കൾക്ക് പോലും VBA യുടെ അടിസ്ഥാനകാര്യങ്ങൾ പഠിക്കാൻ കഴിയും. VBA-യുടെ സവിശേഷതകളിൽ ഒരു ഓഫീസ് ആപ്ലിക്കേഷൻ പരിതസ്ഥിതിയിൽ സ്ക്രിപ്റ്റ് എക്സിക്യൂഷൻ ഉൾപ്പെടുന്നു.

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

വസ്തുക്കൾ, ശേഖരങ്ങൾ, ഗുണങ്ങൾ, രീതികൾ

വിബിഎ പരിതസ്ഥിതിയിൽ ജോലി ചെയ്യാൻ പോകുന്നവർ മനസ്സിലാക്കേണ്ട ആശയങ്ങളാണിവ. ഒന്നാമതായി, ഒരു വസ്തു എന്താണെന്ന് നിങ്ങൾ മനസ്സിലാക്കേണ്ടതുണ്ട്. Excel-ൽ, ഷീറ്റ്, വർക്ക്ബുക്ക്, സെൽ, റേഞ്ച് എന്നിവയാണ് ഈ പ്രവർത്തനങ്ങൾ. ഈ വസ്തുക്കൾക്ക് ഒരു പ്രത്യേക ശ്രേണി ഉണ്ട്, അതായത്. പരസ്പരം അനുസരിക്കുക.

പ്രധാനമായത് ആപ്ലിക്കേഷനാണ്, അത് യോജിക്കുന്നു എക്സൽ പ്രോഗ്രാം. തുടർന്ന് വർക്ക്ബുക്കുകൾ, വർക്ക്ഷീറ്റുകൾ, ശ്രേണി എന്നിവ വരുന്നു. ഉദാഹരണത്തിന്, ഒരു നിർദ്ദിഷ്‌ട വർക്ക്‌ഷീറ്റിൽ സെൽ A1 ആക്‌സസ് ചെയ്യുന്നതിന്, ശ്രേണിയെ കണക്കിലെടുക്കുന്ന ഒരു പാത നിങ്ങൾ വ്യക്തമാക്കണം.

“ശേഖരം” എന്ന ആശയത്തെ സംബന്ധിച്ചിടത്തോളം, ഇത് ഒരേ ക്ലാസിലെ ഒബ്‌ജക്റ്റുകളുടെ ഒരു കൂട്ടമാണ്, എൻട്രിയിൽ ചാർട്ട് ഒബ്‌ജക്റ്റുകൾ എന്ന രൂപമുണ്ട്. അവളുടെ വ്യക്തിഗത ഘടകങ്ങൾവസ്തുക്കളും ആകുന്നു.

അടുത്ത ആശയം പ്രോപ്പർട്ടികൾ ആണ്. അവർ ആവശ്യമായ സ്വഭാവംഏതെങ്കിലും വസ്തു. ഉദാഹരണത്തിന്, ശ്രേണിക്ക് ഇത് മൂല്യം അല്ലെങ്കിൽ ഫോർമുല ആണ്.

എന്താണ് ചെയ്യേണ്ടതെന്ന് സൂചിപ്പിക്കുന്ന കമാൻഡുകളാണ് രീതികൾ. വിബിഎയിൽ കോഡ് എഴുതുമ്പോൾ, അവ ഒബ്‌ജക്റ്റിൽ നിന്ന് ഒരു കാലയളവ് കൊണ്ട് വേർതിരിക്കേണ്ടതാണ്. ഉദാഹരണത്തിന്, പിന്നീട് കാണിക്കുന്നത് പോലെ, പലപ്പോഴും Excel-ൽ പ്രോഗ്രാമിംഗ് ചെയ്യുമ്പോൾ, സെല്ലുകൾ(1,1).Select കമാൻഡ് ഉപയോഗിക്കുന്നു. കോർഡിനേറ്റുകളുള്ള ഒരു സെൽ നിങ്ങൾ തിരഞ്ഞെടുക്കേണ്ടതുണ്ട് എന്നാണ് ഇതിനർത്ഥം

Selection.ClearContents അതിനൊപ്പം ഉപയോഗിക്കാറുണ്ട്. ഇത് നടപ്പിലാക്കുക എന്നതിനർത്ഥം തിരഞ്ഞെടുത്ത സെല്ലിലെ ഉള്ളടക്കങ്ങൾ മായ്ക്കുക എന്നാണ്.

എങ്ങനെ തുടങ്ങും

തുടർന്ന് നിങ്ങൾ VB ആപ്ലിക്കേഷനിലേക്ക് പോകേണ്ടതുണ്ട്, ഇതിനായി നിങ്ങൾ "Alt", "F11" എന്നീ കീ കോമ്പിനേഷൻ ഉപയോഗിക്കേണ്ടതുണ്ട്. കൂടുതൽ:

  • വിൻഡോയുടെ മുകളിൽ സ്ഥിതിചെയ്യുന്ന മെനു ബാറിൽ, Excel ഐക്കണിന് അടുത്തുള്ള ഐക്കണിൽ ക്ലിക്കുചെയ്യുക;
  • Mudule കമാൻഡ് തിരഞ്ഞെടുക്കുക;
  • ചിത്രമുള്ള ഐക്കണിൽ ക്ലിക്കുചെയ്ത് സംരക്ഷിക്കുക;
  • അവർ എഴുതുന്നു, നമുക്ക് പറയാം, കോഡിന്റെ ഒരു കരട്.

ഇത് ഇതുപോലെ കാണപ്പെടുന്നു:

ഉപ പ്രോഗ്രാം()

"ഞങ്ങളുടെ കോഡ്

"ഞങ്ങളുടെ കോഡ്" എന്ന വരി മറ്റൊരു വർണ്ണത്തിൽ (പച്ച) ഹൈലൈറ്റ് ചെയ്യപ്പെടുമെന്നത് ശ്രദ്ധിക്കുക. വരിയുടെ തുടക്കത്തിൽ സ്ഥാപിച്ചിരിക്കുന്ന അപ്പോസ്‌ട്രോഫിയാണ് കാരണം, ഒരു കമന്റ് പിന്തുടരുന്നതായി ഇത് സൂചിപ്പിക്കുന്നു.

ഇപ്പോൾ നിങ്ങൾക്ക് ഏത് കോഡും എഴുതാനും നിങ്ങൾക്കായി സൃഷ്ടിക്കാനും കഴിയും പുതിയ ഉപകരണംവി വിബിഎ എക്സൽ(ചുവടെയുള്ള പ്രോഗ്രാമുകളുടെ ഉദാഹരണങ്ങൾ കാണുക). തീർച്ചയായും, വിഷ്വൽ ബേസിക്കിന്റെ അടിസ്ഥാനകാര്യങ്ങൾ പരിചയമുള്ളവർക്ക് ഇത് വളരെ എളുപ്പമായിരിക്കും. എന്നിരുന്നാലും, അവ ഇല്ലാത്തവർക്കും അവർ ആഗ്രഹിക്കുന്നുവെങ്കിൽ അത് വേഗത്തിൽ ശീലമാക്കാം.

Excel-ലെ മാക്രോകൾ

ഈ പേര് എഴുതിയ പ്രോഗ്രാമുകളെ മറയ്ക്കുന്നു ദൃശ്യ ഭാഷഅപേക്ഷയ്ക്കുള്ള അടിസ്ഥാനം. അങ്ങനെ, Excel-ൽ പ്രോഗ്രാമിംഗ് മാക്രോകൾ സൃഷ്ടിക്കുന്നു ആവശ്യമായ കോഡ്. ഈ സവിശേഷതയ്ക്ക് നന്ദി, പട്ടിക മൈക്രോസോഫ്റ്റ് പ്രോസസർസ്വയം വികസിപ്പിക്കുന്നു, ആവശ്യകതകളുമായി പൊരുത്തപ്പെടുന്നു നിർദ്ദിഷ്ട ഉപയോക്താവ്. മാക്രോകൾ എഴുതുന്നതിനുള്ള മൊഡ്യൂളുകൾ എങ്ങനെ സൃഷ്ടിക്കാമെന്ന് മനസിലാക്കിയ ശേഷം, നിങ്ങൾക്ക് പരിഗണിക്കാൻ തുടങ്ങാം നിർദ്ദിഷ്ട ഉദാഹരണങ്ങൾ VBA പ്രോഗ്രാമുകൾഎക്സൽ. ഏറ്റവും അടിസ്ഥാന കോഡുകൾ ഉപയോഗിച്ച് ആരംഭിക്കുന്നതാണ് നല്ലത്.

ഉദാഹരണം 1

ടാസ്ക്: ഒരു സെല്ലിലെ ഉള്ളടക്കത്തിന്റെ മൂല്യം പകർത്തി മറ്റൊന്നിലേക്ക് എഴുതുന്ന ഒരു പ്രോഗ്രാം എഴുതുക.

ഇതിനായി:

  • "കാണുക" ടാബ് തുറക്കുക;
  • "മാക്രോസ്" ഐക്കണിലേക്ക് പോകുക;
  • "റെക്കോർഡ് മാക്രോ" ക്ലിക്ക് ചെയ്യുക;
  • തുറക്കുന്ന ഫോം പൂരിപ്പിക്കുക.

ലാളിത്യത്തിനായി, "മാക്രോ നെയിം" ഫീൽഡിൽ "Macro1" വിടുക, ഉദാഹരണത്തിന്, "കീബോർഡ് കുറുക്കുവഴി" ഫീൽഡിൽ hh ചേർക്കുക (ഇതിനർത്ഥം "Ctrl+h" എന്ന ദ്രുത കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് പ്രോഗ്രാം സമാരംഭിക്കാമെന്നാണ്). എന്റർ അമർത്തുക.

ഇപ്പോൾ മാക്രോ റെക്കോർഡിംഗ് ആരംഭിച്ചുകഴിഞ്ഞാൽ, ഒരു സെല്ലിലെ ഉള്ളടക്കം മറ്റൊന്നിലേക്ക് പകർത്തുന്നു. യഥാർത്ഥ ഐക്കണിലേക്ക് മടങ്ങുക. "റെക്കോർഡ് മാക്രോ" ക്ലിക്ക് ചെയ്യുക. ഈ പ്രവർത്തനത്തിന്റെ അർത്ഥം പ്രോഗ്രാമിന്റെ അവസാനം എന്നാണ്.

  • "മാക്രോസ്" ലൈനിലേക്ക് മടങ്ങുക;
  • ലിസ്റ്റിൽ നിന്ന് "മാക്രോ 1" തിരഞ്ഞെടുക്കുക;
  • "റൺ" ക്ലിക്ക് ചെയ്യുക ("Ctrl+hh" എന്ന കീ കോമ്പിനേഷൻ ആരംഭിച്ച് അതേ പ്രവർത്തനം ആരംഭിക്കുന്നു).

തൽഫലമായി, മാക്രോ റെക്കോർഡുചെയ്യുമ്പോൾ നടത്തിയ പ്രവർത്തനം സംഭവിക്കുന്നു.

കോഡ് എങ്ങനെയുണ്ടെന്ന് കാണുന്നത് അർത്ഥവത്താണ്. ഇത് ചെയ്യുന്നതിന്, "മാക്രോസ്" ലൈനിലേക്ക് തിരികെ പോയി "മാറ്റുക" അല്ലെങ്കിൽ "ലോഗിൻ" ക്ലിക്ക് ചെയ്യുക. തൽഫലമായി, അവർ VBA പരിതസ്ഥിതിയിൽ സ്വയം കണ്ടെത്തുന്നു. യഥാർത്ഥത്തിൽ, സബ് മാക്രോ 1(), എൻഡ് സബ് എന്നീ വരികൾക്കിടയിലാണ് മാക്രോ കോഡ് സ്ഥിതി ചെയ്യുന്നത്.

പകർത്തൽ നടന്നിട്ടുണ്ടെങ്കിൽ, ഉദാഹരണത്തിന്, സെൽ A1 മുതൽ സെൽ C1 വരെ, കോഡിന്റെ വരികളിലൊന്ന് റേഞ്ച് (“C1”) പോലെ കാണപ്പെടും. തിരഞ്ഞെടുക്കുക. വിവർത്തനം ചെയ്‌താൽ, ഇത് "റേഞ്ച്("C1") പോലെ കാണപ്പെടുന്നു. തിരഞ്ഞെടുക്കുക", മറ്റൊരു രീതിയിൽ പറഞ്ഞാൽ, ഇത് VBA Excel-ലേക്ക്, സെൽ C1-ലേക്ക് പോകുന്നു.

ActiveSheet.Paste കമാൻഡ് വഴി കോഡിന്റെ സജീവ ഭാഗം പൂർത്തിയാക്കുന്നു. തിരഞ്ഞെടുത്ത സെല്ലിലെ ഉള്ളടക്കങ്ങൾ (ഈ സാഹചര്യത്തിൽ A1) തിരഞ്ഞെടുത്ത സെൽ C1-ലേക്ക് എഴുതുക എന്നാണ് ഇതിനർത്ഥം.

ഉദാഹരണം 2

Excel-ൽ വിവിധ മാക്രോകൾ സൃഷ്ടിക്കാൻ VBA ലൂപ്പുകൾ നിങ്ങളെ സഹായിക്കുന്നു.

വിവിധ മാക്രോകൾ സൃഷ്ടിക്കാൻ VBA ലൂപ്പുകൾ നിങ്ങളെ സഹായിക്കുന്നു. നമുക്ക് ഒരു ഫംഗ്ഷൻ y=x + x 2 + 3x 3 - cos(x) ഉണ്ടെന്ന് കരുതുക. അതിന്റെ ഗ്രാഫ് ലഭിക്കാൻ നിങ്ങൾ ഒരു മാക്രോ സൃഷ്‌ടിക്കേണ്ടതുണ്ട്. VBA ലൂപ്പുകൾ ഉപയോഗിച്ച് മാത്രമേ ഇത് ചെയ്യാൻ കഴിയൂ.

ഫംഗ്‌ഷൻ ആർഗ്യുമെന്റിന്റെ പ്രാരംഭവും അവസാനവുമായ മൂല്യങ്ങൾ x1=0, x2=10 എന്നിവയാണ്. കൂടാതെ, നിങ്ങൾ ഒരു സ്ഥിരാങ്കം നൽകണം - ആർഗ്യുമെന്റ് മാറ്റുന്നതിനുള്ള മൂല്യവും കൗണ്ടറിനായുള്ള പ്രാരംഭ മൂല്യവും.

എല്ലാ ഉദാഹരണങ്ങളും VBA മാക്രോകൾമുകളിൽ അവതരിപ്പിച്ച അതേ നടപടിക്രമം ഉപയോഗിച്ചാണ് Excel സൃഷ്ടിച്ചിരിക്കുന്നത്. ഈ പ്രത്യേക സാഹചര്യത്തിൽ, കോഡ് ഇതുപോലെ കാണപ്പെടുന്നു:

ഉപ പ്രോഗ്രാം()

ഘട്ടം = 0.1

x1 ആയിരിക്കുമ്പോൾ ചെയ്യുക< x2 (цикл будет выполняться пока верно выражение x1 < x2)

y=x1 + x1^2 + 3*x1^3 - കോസ്(x1)

സെല്ലുകൾ(i, 1).മൂല്യം = x1 (മൂല്യം x1 എന്നത് കോർഡിനേറ്റുകൾ ഉപയോഗിച്ച് സെല്ലിലേക്ക് എഴുതിയിരിക്കുന്നു (i,1))

സെല്ലുകൾ(i, 2).മൂല്യം = y (y മൂല്യം കോർഡിനേറ്റുകൾ ഉപയോഗിച്ച് സെല്ലിലേക്ക് എഴുതിയിരിക്കുന്നു (i,2))

i = i + 1 (കൌണ്ടർ പ്രാബല്യത്തിൽ ഉണ്ട്);

x1 = x1 + shag (ഘട്ട മൂല്യം അനുസരിച്ച് ആർഗ്യുമെന്റ് മാറുന്നു);

അവസാനം ഉപ.

വിക്ഷേപണത്തിന്റെ ഫലമായി ഈ മാക്രോയുടെ Excel-ൽ നമുക്ക് രണ്ട് നിരകൾ ലഭിക്കും, അതിൽ ആദ്യത്തേത് x-നുള്ള മൂല്യങ്ങളും രണ്ടാമത്തേത് y-യും ഉൾക്കൊള്ളുന്നു.

തുടർന്ന് അവയിൽ നിന്ന് ഒരു ഗ്രാഫ് എക്സലിനായി ഒരു സാധാരണ രീതിയിൽ നിർമ്മിക്കുന്നു.

ഉദാഹരണം 3

VBA Excel 2010-ൽ ലൂപ്പുകൾ നടപ്പിലാക്കാൻ, മറ്റ് പതിപ്പുകളിലേതുപോലെ, ഇതിനകം നൽകിയിരിക്കുന്ന ഡു വെയിൽ കൺസ്ട്രക്ഷൻ, For ഉപയോഗിക്കുന്നു.

ഒരു കോളം സൃഷ്ടിക്കുന്ന ഒരു പ്രോഗ്രാം പരിഗണിക്കുക. അതിന്റെ ഓരോ സെല്ലിലും അനുബന്ധ വരി നമ്പറിന്റെ ചതുരങ്ങൾ എഴുതപ്പെടും. ഫോർ കൺസ്ട്രക്റ്റ് ഉപയോഗിക്കുന്നത് ഒരു കൌണ്ടർ ഉപയോഗിക്കാതെ തന്നെ വളരെ ചുരുക്കി എഴുതാൻ നിങ്ങളെ അനുവദിക്കും.

മുകളിൽ വിവരിച്ചതുപോലെ ആദ്യം നിങ്ങൾ ഒരു മാക്രോ സൃഷ്ടിക്കേണ്ടതുണ്ട്. അടുത്തതായി ഞങ്ങൾ കോഡ് തന്നെ എഴുതുന്നു. 10 സെല്ലുകൾക്കുള്ള മൂല്യങ്ങളിൽ ഞങ്ങൾക്ക് താൽപ്പര്യമുണ്ടെന്ന് ഞങ്ങൾ അനുമാനിക്കുന്നു. കോഡ് ഇതുപോലെ കാണപ്പെടുന്നു.

ഞാൻ = 1 മുതൽ 10 വരെ അടുത്തത്

കമാൻഡ് "മനുഷ്യ" ഭാഷയിലേക്ക് വിവർത്തനം ചെയ്തിരിക്കുന്നത് "ഒന്നിന്റെ ഘട്ടങ്ങളിൽ 1 മുതൽ 10 വരെ ആവർത്തിക്കുക" എന്നാണ്.

1 മുതൽ 11 വരെയുള്ള ശ്രേണിയിൽ നിന്നുള്ള എല്ലാ ഒറ്റ സംഖ്യകളുടെയും ചതുരങ്ങളുള്ള ഒരു കോളം നേടുക എന്നതാണ് ചുമതല എങ്കിൽ, ഞങ്ങൾ എഴുതുന്നു:

i = 1 മുതൽ 10 വരെയുള്ള ഘട്ടം 1 അടുത്തത്.

ഇവിടെ ഘട്ടം ഒരു ഘട്ടമാണ്. ഈ സാഹചര്യത്തിൽ, ഇത് രണ്ടിന് തുല്യമാണ്. സ്ഥിരസ്ഥിതിയായി, സൈക്കിളിൽ ഈ പദത്തിന്റെ അഭാവം അർത്ഥമാക്കുന്നത് ഘട്ടം ഒറ്റയാണെന്നാണ്.

ലഭിച്ച ഫലങ്ങൾ അക്കമിട്ട സെല്ലുകളിൽ സൂക്ഷിക്കണം (i,1). തുടർന്ന്, ഓരോ തവണയും ലൂപ്പ് ആരംഭിക്കുമ്പോൾ, i ഘട്ടം വലുപ്പം വർദ്ധിപ്പിക്കുമ്പോൾ, വരി നമ്പർ സ്വയമേവ വർദ്ധിക്കും. ഈ രീതിയിൽ കോഡ് ഒപ്റ്റിമൈസ് ചെയ്യപ്പെടും.

മൊത്തത്തിൽ കോഡ് ഇതുപോലെ കാണപ്പെടും:

ഉപ പ്രോഗ്രാം()

i = 1 മുതൽ 10 വരെ ഘട്ടം 1 (നിങ്ങൾക്ക് i = 1 മുതൽ 10 വരെ എഴുതാം)

സെല്ലുകൾ(i, 1).മൂല്യം = i ^ 2 (അതായത്, ചതുരത്തിന്റെ മൂല്യം i സെല്ലിലേക്ക് എഴുതിയിരിക്കുന്നു (i,1)

അടുത്തത് (ഒരർത്ഥത്തിൽ ഒരു കൗണ്ടറിന്റെ പങ്ക് വഹിക്കുകയും ലൂപ്പിന്റെ മറ്റൊരു തുടക്കം എന്നാണ് അർത്ഥമാക്കുന്നത്)

അവസാനം ഉപ.

മാക്രോ റെക്കോർഡുചെയ്യുന്നതും പ്രവർത്തിപ്പിക്കുന്നതും ഉൾപ്പെടെ എല്ലാം ശരിയായി ചെയ്തുവെങ്കിൽ (മുകളിലുള്ള നിർദ്ദേശങ്ങൾ കാണുക), നിങ്ങൾ അതിനെ വിളിക്കുമ്പോൾ, ഓരോ തവണയും നിങ്ങൾക്ക് ഒരു കോളം ലഭിക്കും. നൽകിയ വലിപ്പം(ഈ സാഹചര്യത്തിൽ 10 സെല്ലുകൾ അടങ്ങിയിരിക്കുന്നു).

ഉദാഹരണം 4

IN ദൈനംദിന ജീവിതംചില വ്യവസ്ഥകളെ ആശ്രയിച്ച് ഒരു തീരുമാനം അല്ലെങ്കിൽ മറ്റൊന്ന് എടുക്കേണ്ട ആവശ്യം പലപ്പോഴും ഉയർന്നുവരുന്നു. VBA Excel-ൽ അവയില്ലാതെ നിങ്ങൾക്ക് ചെയ്യാൻ കഴിയില്ല. അൽഗോരിതം നടപ്പിലാക്കുന്നതിനുള്ള കൂടുതൽ കോഴ്സ് തിരഞ്ഞെടുത്ത പ്രോഗ്രാമുകളുടെ ഉദാഹരണങ്ങൾ, തുടക്കത്തിൽ മുൻകൂട്ടി നിശ്ചയിച്ചിട്ടില്ലാത്ത, മിക്കപ്പോഴും ഇഫ് ... പിന്നെ നിർമ്മാണം (സങ്കീർണ്ണമായ കേസുകൾക്കായി) എങ്കിൽ ...പിന്നെ ...END എങ്കിൽ ഉപയോഗിക്കുക.

നമുക്ക് ഒരു പ്രത്യേക കേസ് പരിഗണിക്കാം. Excel-നായി നിങ്ങൾ ഒരു മാക്രോ സൃഷ്ടിക്കേണ്ടതുണ്ടെന്ന് കരുതുക, അങ്ങനെ കോർഡിനേറ്റുകൾ (1,1) ഉപയോഗിച്ച് സെല്ലിൽ ഇനിപ്പറയുന്നവ എഴുതപ്പെടും:

1 വാദം പോസിറ്റീവ് ആണെങ്കിൽ;

ആർഗ്യുമെന്റ് അസാധുവാണെങ്കിൽ 0;

-1 വാദം നെഗറ്റീവ് ആണെങ്കിൽ.

എക്സലിനായി അത്തരമൊരു മാക്രോ സൃഷ്ടിക്കുന്നത് ആരംഭിക്കുന്നു ഒരു സാധാരണ രീതിയിൽ, "ചൂട്" ഉപയോഗത്തിലൂടെ Alt കീകൾകൂടാതെ F11. അടുത്തതായി ഇനിപ്പറയുന്ന കോഡ് എഴുതിയിരിക്കുന്നു:

ഉപ പ്രോഗ്രാം()

x= സെല്ലുകൾ(1, 1) മൂല്യം (ഈ കമാൻഡ് കോർഡിനേറ്റുകളിൽ സെല്ലിലെ ഉള്ളടക്കത്തിന്റെ മൂല്യം x-ന് നൽകുന്നു (1, 1))

x>0 ആണെങ്കിൽ സെല്ലുകൾ(1, 1).മൂല്യം = 1

x=0 ആണെങ്കിൽ സെല്ലുകൾ(1, 1).മൂല്യം = 0

x ആണെങ്കിൽ<0 Then Cells(1, 1).Value = -1

അവസാനം ഉപ.

മാക്രോ പ്രവർത്തിപ്പിച്ച് Excel-ൽ ആർഗ്യുമെന്റിന് ആവശ്യമായ മൂല്യം നേടുക മാത്രമാണ് അവശേഷിക്കുന്നത്.

VBA പ്രവർത്തനങ്ങൾ

നിങ്ങൾ ഇതിനകം ശ്രദ്ധിച്ചിരിക്കാം, മൈക്രോസോഫ്റ്റിന്റെ ഏറ്റവും പ്രശസ്തമായ സ്പ്രെഡ്ഷീറ്റ് പ്രോസസറിൽ പ്രോഗ്രാമിംഗ് അത്ര ബുദ്ധിമുട്ടുള്ള കാര്യമല്ല. വിബിഎ ഫംഗ്‌ഷനുകൾ എങ്ങനെ ഉപയോഗിക്കാമെന്ന് നിങ്ങൾ പഠിക്കുകയാണെങ്കിൽ പ്രത്യേകിച്ചും. മൊത്തത്തിൽ, Excel, Word എന്നിവയിൽ ആപ്ലിക്കേഷനുകൾ എഴുതുന്നതിനായി പ്രത്യേകം സൃഷ്ടിച്ച ഈ പ്രോഗ്രാമിംഗ് ഭാഷയ്ക്ക് ഏകദേശം 160 ഫംഗ്ഷനുകളുണ്ട്. അവയെ പല വലിയ ഗ്രൂപ്പുകളായി തിരിക്കാം. ഈ:

  • ഗണിത പ്രവർത്തനങ്ങൾ. അവയെ വാദത്തിൽ പ്രയോഗിക്കുമ്പോൾ, അവർ കോസൈന്റെ മൂല്യം, സ്വാഭാവിക ലോഗരിതം, പൂർണ്ണസംഖ്യ ഭാഗം മുതലായവ നേടുന്നു.
  • സാമ്പത്തിക പ്രവർത്തനങ്ങൾ. അവയുടെ ലഭ്യതയ്ക്കും എക്സൽ പ്രോഗ്രാമിംഗ് ഉപയോഗിക്കുന്നതിനും നന്ദി, അക്കൗണ്ടിംഗിനും സാമ്പത്തിക കണക്കുകൂട്ടലുകൾക്കുമായി നിങ്ങൾക്ക് ഫലപ്രദമായ ഉപകരണങ്ങൾ ലഭിക്കും.
  • അറേ പ്രോസസ്സിംഗ് പ്രവർത്തനങ്ങൾ. ഇതിൽ അറേ, ഇസ്‌അറേ; എൽബൗണ്ട്; യുബൗണ്ട്.
  • സ്ട്രിംഗിനുള്ള Excel VBA പ്രവർത്തനങ്ങൾ. ഇത് സാമാന്യം വലിയ ഗ്രൂപ്പാണ്. ഉദാഹരണത്തിന്, പൂർണ്ണസംഖ്യ ആർഗ്യുമെന്റിന് തുല്യമായ സ്‌പെയ്‌സുകളുടെ എണ്ണത്തിൽ ഒരു സ്‌ട്രിംഗ് സൃഷ്‌ടിക്കാനുള്ള സ്‌പെയ്‌സ് അല്ലെങ്കിൽ പ്രതീകങ്ങളെ ANSI കോഡിലേക്ക് പരിവർത്തനം ചെയ്യുന്നതിനുള്ള Asc എന്നിവ ഇതിൽ ഉൾപ്പെടുന്നു. അവയെല്ലാം വ്യാപകമായി ഉപയോഗിക്കപ്പെടുന്നു, കൂടാതെ Excel ലെ വരികളിൽ പ്രവർത്തിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്നു, ഈ പട്ടികകളിൽ പ്രവർത്തിക്കാൻ വളരെയധികം സഹായിക്കുന്ന ആപ്ലിക്കേഷനുകൾ സൃഷ്ടിക്കുന്നു.
  • ഡാറ്റ തരം പരിവർത്തന പ്രവർത്തനങ്ങൾ. ഉദാഹരണത്തിന്, വേരിയന്റ് ഡാറ്റ തരത്തിലേക്ക് പരിവർത്തനം ചെയ്യുന്നതിലൂടെ, എക്സ്പ്രഷൻ ആർഗ്യുമെന്റിന്റെ മൂല്യം CV നൽകുന്നു.
  • തീയതികളുമായി പ്രവർത്തിക്കുന്നതിനുള്ള പ്രവർത്തനങ്ങൾ. അവ സ്റ്റാൻഡേർഡ് ആയവയെ ഗണ്യമായി വികസിപ്പിക്കുന്നു. അങ്ങനെ, WeekdayName ഫംഗ്‌ഷൻ, ആഴ്ചയിലെ ദിവസത്തിന്റെ പേര് (പൂർണ്ണമോ ഭാഗികമോ) അതിന്റെ സംഖ്യ പ്രകാരം നൽകുന്നു. അതിലും കൂടുതൽ ഉപയോഗപ്രദമാണ് ടൈമർ. അർദ്ധരാത്രി മുതൽ പകൽ ഒരു പ്രത്യേക ബിന്ദുവിലേക്ക് കടന്നുപോയ സെക്കൻഡുകളുടെ എണ്ണം ഇത് നൽകുന്നു.
  • ഒരു ന്യൂമറിക് ആർഗ്യുമെന്റ് വ്യത്യസ്ത നമ്പർ സിസ്റ്റങ്ങളിലേക്ക് പരിവർത്തനം ചെയ്യുന്നതിനുള്ള പ്രവർത്തനങ്ങൾ. ഉദാഹരണത്തിന്, Oct ഒക്ടാലിൽ സംഖ്യകൾ ഔട്ട്പുട്ട് ചെയ്യുന്നു.
  • ഫോർമാറ്റിംഗ് പ്രവർത്തനങ്ങൾ. അവയിൽ ഏറ്റവും പ്രധാനപ്പെട്ടത് ഫോർമാറ്റ് ആണ്. ഫോർമാറ്റ് ഡിക്ലറേഷനിൽ വ്യക്തമാക്കിയിരിക്കുന്ന നിർദ്ദേശങ്ങൾക്കനുസരിച്ച് ഫോർമാറ്റ് ചെയ്ത ഒരു എക്സ്പ്രഷൻ ഉള്ള ഒരു വേരിയന്റ് മൂല്യം ഇത് നൽകുന്നു.
  • തുടങ്ങിയവ.

ഈ ഫംഗ്‌ഷനുകളുടെയും അവയുടെ ആപ്ലിക്കേഷന്റെയും സവിശേഷതകൾ പഠിക്കുന്നത് Excel-ന്റെ വ്യാപ്തി ഗണ്യമായി വികസിപ്പിക്കും.

ഉദാഹരണം 5

കൂടുതൽ സങ്കീർണ്ണമായ പ്രശ്നങ്ങൾ പരിഹരിക്കാൻ നമുക്ക് ശ്രമിക്കാം. ഉദാഹരണത്തിന്:

എന്റർപ്രൈസസിന്റെ യഥാർത്ഥ ചെലവ് റിപ്പോർട്ട് ചെയ്യുന്ന ഒരു പേപ്പർ ഡോക്യുമെന്റ് നൽകിയിരിക്കുന്നു. ആവശ്യമാണ്:

  • Excel സ്പ്രെഡ്ഷീറ്റ് ഉപയോഗിച്ച് അതിന്റെ ടെംപ്ലേറ്റ് ഭാഗം വികസിപ്പിക്കുക;
  • ഒരു VBA പ്രോഗ്രാം സൃഷ്ടിക്കുക, അത് പൂരിപ്പിക്കുന്നതിന് പ്രാരംഭ ഡാറ്റ അഭ്യർത്ഥിക്കുകയും ആവശ്യമായ കണക്കുകൂട്ടലുകൾ നടത്തുകയും അവയുമായി ബന്ധപ്പെട്ട ടെംപ്ലേറ്റ് സെല്ലുകൾ പൂരിപ്പിക്കുകയും ചെയ്യും.

പരിഹാര ഓപ്ഷനുകളിലൊന്ന് നമുക്ക് പരിഗണിക്കാം.

ഒരു ടെംപ്ലേറ്റ് സൃഷ്ടിക്കുക

എല്ലാ പ്രവർത്തനങ്ങളും Excel-ൽ ഒരു സാധാരണ ഷീറ്റിൽ നടപ്പിലാക്കുന്നു. ഉപഭോക്തൃ കമ്പനിയുടെ പേര്, ചെലവുകളുടെ അളവ്, അവയുടെ നില, വിറ്റുവരവ് എന്നിവയിൽ ഡാറ്റ നൽകുന്നതിന് സൗജന്യ സെല്ലുകൾ റിസർവ് ചെയ്തിരിക്കുന്നു. റിപ്പോർട്ട് കംപൈൽ ചെയ്യുന്ന കമ്പനികളുടെ (സൊസൈറ്റികൾ) എണ്ണം നിശ്ചയിച്ചിട്ടില്ലാത്തതിനാൽ, ഫലങ്ങളും സ്പെഷ്യലിസ്റ്റിന്റെ പേരും അടിസ്ഥാനമാക്കി മൂല്യങ്ങൾ നൽകുന്നതിനുള്ള സെല്ലുകൾ മുൻകൂട്ടി റിസർവ് ചെയ്തിട്ടില്ല. വർക്ക്ഷീറ്റിന് ഒരു പുതിയ പേര് നൽകിയിരിക്കുന്നു. ഉദാഹരണത്തിന്, "റിപ്പോർട്ടുകൾ".

വേരിയബിളുകൾ

ഒരു ടെംപ്ലേറ്റ് സ്വയമേവ പൂരിപ്പിക്കുന്നതിന് ഒരു പ്രോഗ്രാം എഴുതാൻ, നിങ്ങൾ നൊട്ടേഷനുകൾ തിരഞ്ഞെടുക്കേണ്ടതുണ്ട്. വേരിയബിളുകൾക്കായി ഇവ ഉപയോഗിക്കും:

  • NN - നിലവിലെ പട്ടിക വരിയുടെ നമ്പർ;
  • TP, TF - ആസൂത്രിതവും യഥാർത്ഥവുമായ വ്യാപാര വിറ്റുവരവ്;
  • എസ്എഫ്, എസ്പി - ചെലവുകളുടെ യഥാർത്ഥവും ആസൂത്രിതവുമായ തുക;
  • IP, IF - ചെലവുകളുടെ ആസൂത്രിതവും യഥാർത്ഥവുമായ ലെവൽ.

ഈ നിരയുടെ ആകെ ശേഖരണത്തെ സൂചിപ്പിക്കാൻ നമുക്ക് അതേ അക്ഷരങ്ങൾ ഉപയോഗിക്കാം, എന്നാൽ "പ്രിഫിക്സ്" Itog ഉപയോഗിച്ച്. ഉദാഹരണത്തിന്, ItogTP - "ആസൂത്രിത വിറ്റുവരവ്" എന്ന തലക്കെട്ടിലുള്ള പട്ടിക നിരയെ സൂചിപ്പിക്കുന്നു.

VBA പ്രോഗ്രാമിംഗ് ഉപയോഗിച്ച് ഒരു പ്രശ്നം പരിഹരിക്കുന്നു

അവതരിപ്പിച്ച നൊട്ടേഷനുകൾ ഉപയോഗിച്ച്, വ്യതിയാനങ്ങൾക്കുള്ള സൂത്രവാക്യങ്ങൾ ഞങ്ങൾ നേടുന്നു. നിങ്ങൾക്ക് %-ൽ കണക്കാക്കണമെങ്കിൽ, ഞങ്ങൾക്ക് (F - P) / P * 100 ഉണ്ട്, ആകെ - (F - P).

ഈ കണക്കുകൂട്ടലുകളുടെ ഫലങ്ങൾ ഒരു Excel സ്‌പ്രെഡ്‌ഷീറ്റിലെ ഉചിതമായ സെല്ലുകളിലേക്ക് നേരിട്ട് നൽകാവുന്നതാണ്.

യഥാർത്ഥവും പ്രവചന മൊത്തത്തിനും, ItogP=ItogP + P, ItogF=ItogF+ F എന്നീ സൂത്രവാക്യങ്ങൾ ഉപയോഗിച്ചാണ് അവ ലഭിക്കുന്നത്.

വ്യതിയാനങ്ങൾക്കായി = (ItogF - ItogP) / ItogP * 100 കണക്കുകൂട്ടൽ ശതമാനമായി നടപ്പിലാക്കുകയാണെങ്കിൽ, മൊത്തം മൂല്യത്തിന്റെ കാര്യത്തിൽ - (ItogF - ItogP) ഉപയോഗിക്കുക.

ഫലങ്ങൾ ഉടൻ തന്നെ ഉചിതമായ സെല്ലുകളിലേക്ക് എഴുതപ്പെടും, അതിനാൽ അവയെ വേരിയബിളുകൾക്ക് നൽകേണ്ടതില്ല.

സൃഷ്ടിച്ച പ്രോഗ്രാം പ്രവർത്തിപ്പിക്കുന്നതിന് മുമ്പ്, നിങ്ങൾ വർക്ക്ബുക്ക് സംരക്ഷിക്കേണ്ടതുണ്ട്, ഉദാഹരണത്തിന്, "Report1.xls" എന്ന പേരിൽ.

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

മാക്രോകൾ ഉപയോഗിച്ച് Excel പ്രശ്നങ്ങൾ എങ്ങനെ പരിഹരിക്കാമെന്ന് ഇപ്പോൾ നിങ്ങൾക്കറിയാം. ഇപ്പോൾ ഏറ്റവും ജനപ്രിയമായ ടെക്സ്റ്റ് എഡിറ്ററായ Word-ൽ പ്രവർത്തിക്കാൻ vba excel ഉപയോഗിക്കാനുള്ള കഴിവ് (മുകളിലുള്ള പ്രോഗ്രാമുകളുടെ ഉദാഹരണങ്ങൾ കാണുക) ആവശ്യമായി വന്നേക്കാം. പ്രത്യേകിച്ചും, ലേഖനത്തിന്റെ തുടക്കത്തിൽ കാണിച്ചിരിക്കുന്നതുപോലെ എഴുതുന്നതിലൂടെയോ കോഡ് എഴുതുന്നതിലൂടെയോ നിങ്ങൾക്ക് മെനു ബട്ടണുകൾ സൃഷ്ടിക്കാൻ കഴിയും, ഇതിന് നന്ദി, ഡ്യൂട്ടി കീകൾ അമർത്തിയോ “കാണുക” ടാബിലൂടെയോ ടെക്സ്റ്റിലെ നിരവധി പ്രവർത്തനങ്ങൾ നടത്താൻ കഴിയും. "മാക്രോസ്" ഐക്കൺ.

MZTools - VBA-യിൽ പ്രോഗ്രാം ചെയ്യുന്നവർക്ക് വളരെ ഉപയോഗപ്രദമായ ഒരു യൂട്ടിലിറ്റി. കോഡുകൾ എഴുതുമ്പോൾ ശരിക്കും സമയം ലാഭിക്കുന്നു. യൂട്ടിലിറ്റി എന്നത് പ്രധാനമാണ് തികച്ചും സൗജന്യം. അതിന്റെ ചില സവിശേഷതകൾ ഇതാ:

  • മൊഡ്യൂളുകളിലേക്ക് പിശക് ഹാൻഡ്‌ലറുകൾ സ്വയമേവ ചേർക്കുന്നു
  • സമയം, മൊഡ്യൂൾ, നടപടിക്രമങ്ങളുടെ പേരുകൾ എന്നിവയുടെ സ്വയമേവ ചേർക്കൽ, നടപടിക്രമത്തിന്റെ രചയിതാവിനെ സൂചിപ്പിക്കാനുള്ള കഴിവ് എന്നിവ ഉപയോഗിച്ച് നടപടിക്രമത്തിന്റെ തലക്കെട്ടിലേക്ക് അഭിപ്രായങ്ങൾ ചേർക്കുന്നു
  • കോഡിന്റെ വരികളുടെ യാന്ത്രിക നമ്പറിംഗ്
  • കോഡിന്റെ വരികളിൽ നിന്ന് നമ്പറിംഗ് നീക്കംചെയ്യുന്നു
  • പതിവായി ഉപയോഗിക്കുന്ന കോഡ് ടെംപ്ലേറ്റുകൾ സൃഷ്ടിക്കുക
  • കോഡുകളുടെ സാധ്യതയുള്ള 9 പ്രവർത്തനങ്ങൾക്കായി സ്വന്തം ക്ലിപ്പ്ബോർഡ്, പകർത്തിയ 9 കോഡുകളിൽ ഏതെങ്കിലും ഒന്ന് ചേർക്കുക
  • കൂടാതെ ധാരാളം ഉപയോഗപ്രദമായ കാര്യങ്ങൾ

പ്രോഗ്രാം സൗജന്യമായി വിതരണം ചെയ്യുന്നു.

(37.3 കിബി, 3,708 ഡൗൺലോഡുകൾ)


ഔദ്യോഗിക വെബ്സൈറ്റ്: കണ്ടെത്തിയില്ല

VBE ടൂളുകൾ - നിങ്ങളിൽ എത്രപേർ ഒരു ഫോമിനായി കോഡ് എഴുതിയിട്ടുണ്ട്, തുടർന്ന് ചില മൂലകങ്ങൾ നിങ്ങൾ ആഗ്രഹിക്കുന്നതുപോലെ പേരുനൽകിയിട്ടില്ലെന്ന് അല്ലെങ്കിൽ കോഡിലെ മാറ്റം കാരണം പുനർനാമകരണം ചെയ്യാൻ ആഗ്രഹിക്കുന്നുവെന്ന് ഓർക്കുന്നുണ്ടോ? കൂടാതെ, തീർച്ചയായും, ഒരു മൂലകത്തിന്റെ പേരുമാറ്റുമ്പോൾ, ഞങ്ങൾ കോഡിലേക്ക് പോയി ഈ ഘടകത്തെക്കുറിച്ചുള്ള എല്ലാ റഫറൻസുകളും ഒരു പുതിയ പേര് ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിക്കണമെന്ന പ്രശ്നം ഞങ്ങൾ നേരിട്ടു. അതിനാൽ, ഈ പ്രോഗ്രാമിന്റെ സഹായത്തോടെ, നിങ്ങൾക്ക് ഒരു എക്സൽ ഷീറ്റിലെ ഏത് ഫോം എലമെന്റിന്റെയും (ടെക്സ്റ്റ്ബോക്സ്, ലേബൽ, മുതലായവ) ആക്ടീവ്എക്സ് നിയന്ത്രണങ്ങളുടെയും പേര് പുനർനാമകരണം ചെയ്യാം, കൂടാതെ പ്രോഗ്രാം തന്നെ കോഡിലെ എല്ലാ ലിങ്കുകളും പഴയ പേരിൽ നിന്ന് മാറ്റിസ്ഥാപിക്കും. പുതിയത്. വളരെ സുഖകരമായി.

പ്രോഗ്രാം സൗജന്യമായി വിതരണം ചെയ്യുന്നു.

ഒരു ജനപ്രിയ ഉൽപ്പന്നത്തിന്റെ ആദ്യ പതിപ്പ് എന്ന് കുറച്ച് ആളുകൾക്ക് അറിയാം മൈക്രോസോഫ്റ്റ് എക്സൽ 1985 ൽ പ്രത്യക്ഷപ്പെട്ടു. അതിനുശേഷം, ഇത് നിരവധി പരിഷ്കാരങ്ങളിലൂടെ കടന്നുപോയി, ലോകമെമ്പാടുമുള്ള ദശലക്ഷക്കണക്കിന് ഉപയോക്താക്കൾക്കിടയിൽ ആവശ്യക്കാരുണ്ട്. അതേ സമയം, പലരും ഈ സ്പ്രെഡ്ഷീറ്റ് പ്രോസസറിന്റെ കഴിവുകളുടെ ഒരു ചെറിയ അംശം കൊണ്ട് മാത്രം പ്രവർത്തിക്കുന്നു, മാത്രമല്ല Excel-ൽ പ്രോഗ്രാം ചെയ്യാനുള്ള കഴിവ് അവരുടെ ജീവിതം എങ്ങനെ എളുപ്പമാക്കുമെന്ന് പോലും മനസ്സിലാക്കുന്നില്ല.

എന്താണ് VBA

മൈക്രോസോഫ്റ്റിൽ നിന്നുള്ള ഏറ്റവും പ്രശസ്തമായ സ്‌പ്രെഡ്‌ഷീറ്റ് പ്രോസസറിൽ യഥാർത്ഥത്തിൽ നിർമ്മിച്ച വിഷ്വൽ ബേസിക് ഫോർ ആപ്ലിക്കേഷൻ പ്രോഗ്രാമിംഗ് ഭാഷ ഉപയോഗിച്ചാണ് എക്‌സലിൽ പ്രോഗ്രാമിംഗ് നടത്തുന്നത്.

വിദഗ്ധർ അതിന്റെ ഗുണങ്ങളാൽ താരതമ്യേന എളുപ്പമുള്ള പഠനത്തിന് കാരണമാകുന്നു. പ്രാക്ടീസ് കാണിക്കുന്നതുപോലെ, പ്രൊഫഷണൽ പ്രോഗ്രാമിംഗ് കഴിവുകൾ ഇല്ലാത്ത ഉപയോക്താക്കൾക്ക് പോലും VBA യുടെ അടിസ്ഥാനകാര്യങ്ങൾ പഠിക്കാൻ കഴിയും. ഓഫീസ് ആപ്ലിക്കേഷൻ പരിതസ്ഥിതിയിൽ സ്ക്രിപ്റ്റ് എക്സിക്യൂഷൻ വിബിഎയുടെ പ്രത്യേക സവിശേഷതകളിൽ ഉൾപ്പെടുന്നു.

  • "മാക്രോസ്" ലൈനിലേക്ക് മടങ്ങുക;
  • ലിസ്റ്റിൽ നിന്ന് "മാക്രോ 1" തിരഞ്ഞെടുക്കുക;
  • "റൺ" ക്ലിക്ക് ചെയ്യുക ("Ctrl+hh" എന്ന കീ കോമ്പിനേഷൻ ആരംഭിച്ച് അതേ പ്രവർത്തനം ആരംഭിക്കുന്നു).

തൽഫലമായി, മാക്രോ റെക്കോർഡിംഗ് പ്രക്രിയയിൽ നടത്തിയ പ്രവർത്തനം സംഭവിക്കുന്നു.

കോഡ് എങ്ങനെയുണ്ടെന്ന് കാണുന്നത് അർത്ഥവത്താണ്. ഇത് ചെയ്യുന്നതിന്, "മാക്രോസ്" ലൈനിലേക്ക് തിരികെ പോയി "മാറ്റുക" അല്ലെങ്കിൽ "ലോഗിൻ" ക്ലിക്ക് ചെയ്യുക. തൽഫലമായി, അവർ VBA പരിതസ്ഥിതിയിൽ അവസാനിക്കുന്നു. യഥാർത്ഥത്തിൽ, സബ് മാക്രോ 1(), എൻഡ് സബ് എന്നീ വരികൾക്കിടയിലാണ് മാക്രോ കോഡ് സ്ഥിതി ചെയ്യുന്നത്.

പകർത്തൽ നടത്തിയിട്ടുണ്ടെങ്കിൽ, ഉദാഹരണത്തിന്, സെൽ A1 മുതൽ സെൽ C1 വരെ, കോഡിന്റെ വരികളിലൊന്ന് റേഞ്ച് (“C1”) പോലെ കാണപ്പെടും. തിരഞ്ഞെടുക്കുക. വിവർത്തനത്തിൽ, ഇത് "റേഞ്ച്("C1") പോലെ കാണപ്പെടുന്നു. തിരഞ്ഞെടുക്കുക", മറ്റൊരു രീതിയിൽ പറഞ്ഞാൽ, ഇത് VBA Excel-ലെ സെൽ C1-ലേക്ക് നീങ്ങുന്നു.

ActiveSheet.Paste കമാൻഡ് വഴി കോഡിന്റെ സജീവ ഭാഗം പൂർത്തിയാക്കുന്നു. തിരഞ്ഞെടുത്ത സെല്ലിലെ ഉള്ളടക്കങ്ങൾ (ഈ സാഹചര്യത്തിൽ A1) തിരഞ്ഞെടുത്ത സെൽ C1-ലേക്ക് എഴുതുക എന്നാണ് ഇതിനർത്ഥം.

ഉദാഹരണം 2

Excel-ൽ വിവിധ മാക്രോകൾ സൃഷ്ടിക്കാൻ VBA ലൂപ്പുകൾ നിങ്ങളെ സഹായിക്കുന്നു.

വിവിധ മാക്രോകൾ സൃഷ്ടിക്കാൻ VBA ലൂപ്പുകൾ നിങ്ങളെ സഹായിക്കുന്നു. y=x + x2 + 3x3 - cos(x) എന്ന ഫംഗ്‌ഷൻ ഉണ്ടെന്ന് നമുക്ക് അനുമാനിക്കാം. അതിന്റെ ഗ്രാഫ് ലഭിക്കാൻ നിങ്ങൾ ഒരു മാക്രോ സൃഷ്‌ടിക്കേണ്ടതുണ്ട്. VBA ലൂപ്പുകൾ ഉപയോഗിച്ച് മാത്രമേ ഇത് ചെയ്യാൻ കഴിയൂ.

ഫംഗ്‌ഷൻ ആർഗ്യുമെന്റിന്റെ പ്രാരംഭവും അവസാനവുമായ മൂല്യങ്ങൾ x1=0, x2=10 എന്നിവയാണ്. കൂടാതെ, നിങ്ങൾ ഒരു സ്ഥിരാങ്കം നൽകണം - ആർഗ്യുമെന്റ് മാറ്റുന്നതിനുള്ള മൂല്യവും കൗണ്ടറിനായുള്ള പ്രാരംഭ മൂല്യവും.

എല്ലാ VBA Excel മാക്രോ ഉദാഹരണങ്ങളും മുകളിൽ അവതരിപ്പിച്ചിരിക്കുന്ന അതേ നടപടിക്രമം ഉപയോഗിച്ചാണ് സൃഷ്ടിച്ചിരിക്കുന്നത്. ഈ പ്രത്യേക സാഹചര്യത്തിൽ, കോഡ് ഇതുപോലെ കാണപ്പെടുന്നു:

x1 ആയിരിക്കുമ്പോൾ ചെയ്യുക< x2 (цикл будeт выполняться пока вeрно выражeниe x1 < x2)

y=x1 + x1^2 + 3*x1^3 - കോസ്(x1)

സെല്ലുകൾ(i, 1).മൂല്യം = x1 (x1 ന്റെ മൂല്യം കോർഡിനേറ്റുകൾ ഉപയോഗിച്ച് സെല്ലിലേക്ക് എഴുതിയിരിക്കുന്നു (i,1))

സെല്ലുകൾ(i, 2).മൂല്യം = y (മൂല്യം y എന്നത് കോർഡിനേറ്റുകൾ ഉപയോഗിച്ച് സെല്ലിലേക്ക് എഴുതിയിരിക്കുന്നു (i,2))

i = i + 1 (കൌണ്ടർ പ്രാബല്യത്തിൽ ഉണ്ട്);

x1 = x1 + shag (ഘട്ട മൂല്യം അനുസരിച്ച് ആർഗ്യുമെന്റ് മാറുന്നു);

Excel-ൽ ഈ മാക്രോ പ്രവർത്തിപ്പിക്കുന്നതിന്റെ ഫലമായി, നമുക്ക് രണ്ട് നിരകൾ ലഭിക്കും, അതിൽ ആദ്യത്തേത് x-നുള്ള മൂല്യങ്ങളും രണ്ടാമത്തേത് y-യും ഉൾക്കൊള്ളുന്നു.

തുടർന്ന് അവയിൽ നിന്ന് ഒരു ഗ്രാഫ് എക്സലിനായി ഒരു സാധാരണ രീതിയിൽ നിർമ്മിക്കുന്നു.

ഉദാഹരണം 3

VBA Excel 2010-ൽ ലൂപ്പുകൾ നടപ്പിലാക്കാൻ, മറ്റ് പതിപ്പുകളിലേതുപോലെ, ഇതിനകം നൽകിയിരിക്കുന്ന ഡു വെയിൽ കൺസ്ട്രക്ഷൻ, For ഉപയോഗിക്കുന്നു.

ഒരു കോളം സൃഷ്ടിക്കുന്ന ഒരു പ്രോഗ്രാം നോക്കാം. അതിന്റെ ഓരോ സെല്ലിലും അനുബന്ധ വരി നമ്പറിന്റെ ചതുരങ്ങൾ എഴുതപ്പെടും. ഫോർ കൺസ്ട്രക്റ്റ് ഉപയോഗിക്കുന്നത് ഒരു കൌണ്ടർ ഉപയോഗിക്കാതെ തന്നെ വളരെ ചുരുക്കി എഴുതാൻ നിങ്ങളെ അനുവദിക്കും.

മുകളിൽ വിവരിച്ചതുപോലെ ആദ്യം നിങ്ങൾ ഒരു മാക്രോ സൃഷ്ടിക്കേണ്ടതുണ്ട്. അടുത്തതായി ഞങ്ങൾ കോഡ് തന്നെ എഴുതുന്നു. 10 സെല്ലുകളുടെ മൂല്യങ്ങളിൽ ഞങ്ങൾക്ക് താൽപ്പര്യമുണ്ടെന്ന് ഞങ്ങൾ വിശ്വസിക്കുന്നു. കോഡ് ഇതുപോലെ കാണപ്പെടുന്നു.

ഞാൻ = 1 മുതൽ 10 വരെ അടുത്തത്

കമാൻഡ് "മനുഷ്യ" ഭാഷയിലേക്ക് വിവർത്തനം ചെയ്തിരിക്കുന്നത് "ഒന്നിന്റെ ഘട്ടങ്ങളിൽ 1 മുതൽ 10 വരെ ആവർത്തിക്കുക" എന്നാണ്.

1 മുതൽ 11 വരെയുള്ള ശ്രേണിയിൽ നിന്നുള്ള എല്ലാ ഒറ്റ സംഖ്യകളുടെയും ചതുരങ്ങളുള്ള ഒരു കോളം നേടുക എന്നതാണ് ചുമതല എങ്കിൽ, ഞങ്ങൾ എഴുതുന്നു:

i = 1 മുതൽ 10 വരെയുള്ള ഘട്ടം 1 അടുത്തത്.

ഇവിടെ ഘട്ടം ഒരു ഘട്ടമാണ്. ഈ സാഹചര്യത്തിൽ, ഇത് രണ്ടിന് തുല്യമാണ്. സ്ഥിരസ്ഥിതിയായി, ലൂപ്പിൽ ഈ പദത്തിന്റെ അഭാവം അർത്ഥമാക്കുന്നത് ഘട്ടം ഒറ്റയാണെന്നാണ്.

ലഭിച്ച ഫലങ്ങൾ അക്കമിട്ട സെല്ലുകളിൽ സൂക്ഷിക്കണം (i,1). തുടർന്ന്, ഓരോ തവണയും i ഉപയോഗിച്ച് ലൂപ്പ് ആരംഭിക്കുമ്പോൾ, ഘട്ടം വലുപ്പം വർദ്ധിപ്പിക്കുമ്പോൾ, വരി നമ്പർ സ്വയമേവ വർദ്ധിക്കും. അങ്ങനെ, കോഡ് ഒപ്റ്റിമൈസ് ചെയ്യും.

പൊതുവേ, കോഡ് ഇതുപോലെ കാണപ്പെടും:

i = 1 മുതൽ 10 വരെ ഘട്ടം 1 (നിങ്ങൾക്ക് i = 1 മുതൽ 10 വരെ എഴുതാം)

സെല്ലുകൾ(i, 1).മൂല്യം = i ^ 2 (അതായത് ചതുരത്തിന്റെ മൂല്യം i സെല്ലിൽ എഴുതിയിരിക്കുന്നു (i,1))

അടുത്തത് (ഒരർത്ഥത്തിൽ, ഇത് ഒരു കൗണ്ടറിന്റെ പങ്ക് വഹിക്കുകയും സൈക്കിളിന്റെ മറ്റൊരു ആരംഭം എന്നാണ് അർത്ഥമാക്കുന്നത്)

മാക്രോ റെക്കോർഡുചെയ്യുന്നതും പ്രവർത്തിപ്പിക്കുന്നതും ഉൾപ്പെടെ എല്ലാം ശരിയായി ചെയ്തുവെങ്കിൽ (മുകളിലുള്ള നിർദ്ദേശങ്ങൾ കാണുക), നിങ്ങൾ ഓരോ തവണയും വിളിക്കുമ്പോൾ നിർദ്ദിഷ്ട വലുപ്പത്തിന്റെ ഒരു കോളം നിങ്ങൾക്ക് ലഭിക്കും (ഈ സാഹചര്യത്തിൽ, 10 സെല്ലുകൾ അടങ്ങിയിരിക്കുന്നു).

ഉദാഹരണം 4

ദൈനംദിന ജീവിതത്തിൽ, ചില വ്യവസ്ഥകളെ ആശ്രയിച്ച് ഒന്നോ അല്ലെങ്കിൽ മറ്റൊരു തീരുമാനം എടുക്കേണ്ടതിന്റെ ആവശ്യകത പലപ്പോഴും ഉയർന്നുവരുന്നു. VBA Excel-ൽ അവയില്ലാതെ നിങ്ങൾക്ക് ചെയ്യാൻ കഴിയില്ല. അൽഗോരിതം നടപ്പിലാക്കുന്നതിനുള്ള കൂടുതൽ കോഴ്സ് തിരഞ്ഞെടുത്ത പ്രോഗ്രാമുകളുടെ ഉദാഹരണങ്ങൾ, തുടക്കത്തിൽ മുൻകൂട്ടി നിശ്ചയിച്ചിട്ടില്ലാത്ത, മിക്കപ്പോഴും ഇഫ് ... പിന്നെ നിർമ്മാണം (സങ്കീർണ്ണമായ കേസുകൾക്കായി) എങ്കിൽ ...പിന്നെ ...END എങ്കിൽ ഉപയോഗിക്കുക.

നമുക്ക് ഒരു പ്രത്യേക കേസ് പരിഗണിക്കാം. Excel-നായി നിങ്ങൾ ഒരു മാക്രോ സൃഷ്ടിക്കേണ്ടതുണ്ടെന്ന് കരുതുക, അങ്ങനെ കോർഡിനേറ്റുകൾ (1,1) ഉപയോഗിച്ച് സെല്ലിൽ ഇനിപ്പറയുന്നവ എഴുതപ്പെടും:

1, വാദം പോസിറ്റീവ് ആണെങ്കിൽ;

ആർഗ്യുമെന്റ് പൂജ്യമാണെങ്കിൽ 0;

1 വാദം നെഗറ്റീവ് ആണെങ്കിൽ.

Excel-നായി അത്തരമൊരു മാക്രോ സൃഷ്‌ടിക്കുന്നത് സ്റ്റാൻഡേർഡ് രീതിയിൽ ആരംഭിക്കുന്നു, Alt, F11 ഹോട്ട്കീകളുടെ ഉപയോഗത്തിലൂടെ. അടുത്തതായി ഇനിപ്പറയുന്ന കോഡ് എഴുതിയിരിക്കുന്നു:

x= സെല്ലുകൾ(1, 1) മൂല്യം (ഈ കമാൻഡ് കോർഡിനേറ്റുകളുള്ള സെല്ലിലെ ഉള്ളടക്കത്തിന്റെ മൂല്യം x-ന് നൽകുന്നു (1, 1))

x>0 ആണെങ്കിൽ സെല്ലുകൾ(1, 1).മൂല്യം = 1

x=0 ആണെങ്കിൽ സെല്ലുകൾ(1, 1).മൂല്യം = 0

x ആണെങ്കിൽ<0 Then Cells(1, 1).Value = -1

മാക്രോ പ്രവർത്തിപ്പിച്ച് Excel-ൽ ആർഗ്യുമെന്റിന് ആവശ്യമായ മൂല്യം നേടുക മാത്രമാണ് അവശേഷിക്കുന്നത്.

VBA പ്രവർത്തനങ്ങൾ

നിങ്ങൾ ഇതിനകം ശ്രദ്ധിച്ചിരിക്കാം, ഏറ്റവും പ്രശസ്തമായ മൈക്രോസോഫ്റ്റ് ടേബിൾ പ്രോസസറിൽ പ്രോഗ്രാമിംഗ് അത്ര ബുദ്ധിമുട്ടുള്ള കാര്യമല്ല. വിബിഎ ഫംഗ്‌ഷനുകൾ എങ്ങനെ ഉപയോഗിക്കാമെന്ന് നിങ്ങൾ പഠിക്കുകയാണെങ്കിൽ പ്രത്യേകിച്ചും. മൊത്തത്തിൽ, Excel, Word എന്നിവയിൽ ആപ്ലിക്കേഷനുകൾ എഴുതുന്നതിനായി പ്രത്യേകം സൃഷ്ടിച്ച ഈ പ്രോഗ്രാമിംഗ് ഭാഷയ്ക്ക് ഏകദേശം 160 ഫംഗ്ഷനുകളുണ്ട്. അവയെ പല വലിയ ഗ്രൂപ്പുകളായി തിരിക്കാം. ഈ:

  • ഗണിത പ്രവർത്തനങ്ങൾ. ആർഗ്യുമെന്റിൽ അവ പ്രയോഗിക്കുന്നതിലൂടെ, അവർ കോസൈൻ, നാച്ചുറൽ ലോഗരിതം, പൂർണ്ണസംഖ്യ ഭാഗം മുതലായവയുടെ മൂല്യം നേടുന്നു.
  • സാമ്പത്തിക പ്രവർത്തനങ്ങൾ. അവയുടെ ലഭ്യതയ്ക്കും Excel-ൽ പ്രോഗ്രാമിംഗ് ഉപയോഗിക്കുന്നതിനും നന്ദി, അക്കൗണ്ടിംഗിനും സാമ്പത്തിക കണക്കുകൂട്ടലുകൾക്കുമായി നിങ്ങൾക്ക് ഫലപ്രദമായ ഉപകരണങ്ങൾ ലഭിക്കും.
  • അറേ പ്രോസസ്സിംഗ് പ്രവർത്തനങ്ങൾ. ഇതിൽ അറേ, ഇസ്‌അറേ; എൽബൗണ്ട്; യുബൗണ്ട്.
  • സ്ട്രിംഗിനുള്ള Excel VBA പ്രവർത്തനങ്ങൾ. ഇത് സാമാന്യം വലിയ ഗ്രൂപ്പാണ്. ഉദാഹരണത്തിന്, പൂർണ്ണസംഖ്യ ആർഗ്യുമെന്റിന് തുല്യമായ സ്‌പെയ്‌സുകളുടെ എണ്ണം ഉപയോഗിച്ച് ഒരു സ്‌ട്രിംഗ് സൃഷ്‌ടിക്കാനുള്ള സ്‌പെയ്‌സ് അല്ലെങ്കിൽ പ്രതീകങ്ങളെ ANSI കോഡിലേക്ക് പരിവർത്തനം ചെയ്യാൻ Asc എന്നിവ ഉൾപ്പെടുന്നു. അവയെല്ലാം വ്യാപകമായി ഉപയോഗിക്കപ്പെടുന്നു, കൂടാതെ Excel-ൽ വരികൾക്കൊപ്പം പ്രവർത്തിക്കാൻ നിങ്ങളെ അനുവദിക്കുന്നു, ഈ പട്ടികകൾ ഉപയോഗിച്ച് ജോലി സുഗമമാക്കുന്ന ആപ്ലിക്കേഷനുകൾ സൃഷ്ടിക്കുന്നു.
  • ഡാറ്റ തരം പരിവർത്തന പ്രവർത്തനങ്ങൾ. ഉദാഹരണത്തിന്, വേരിയന്റ് ഡാറ്റ തരത്തിലേക്ക് പരിവർത്തനം ചെയ്യുന്നതിലൂടെ, എക്സ്പ്രഷൻ ആർഗ്യുമെന്റിന്റെ മൂല്യം CV നൽകുന്നു.
  • തീയതികളുമായി പ്രവർത്തിക്കുന്നതിനുള്ള പ്രവർത്തനങ്ങൾ. അവർ Excel-ന്റെ സ്റ്റാൻഡേർഡ് കഴിവുകൾ ഗണ്യമായി വികസിപ്പിക്കുന്നു. അങ്ങനെ, WeekdayName ഫംഗ്‌ഷൻ ആഴ്‌ചയിലെ ദിവസത്തിന്റെ പേര് (പൂർണ്ണമോ ഭാഗികമോ) അതിന്റെ നമ്പർ ഉപയോഗിച്ച് നൽകുന്നു. അതിലും കൂടുതൽ ഉപയോഗപ്രദമാണ് ടൈമർ. അർദ്ധരാത്രി മുതൽ പകൽ ഒരു പ്രത്യേക ബിന്ദുവിലേക്ക് കടന്നുപോയ സെക്കൻഡുകളുടെ എണ്ണം ഇത് നൽകുന്നു.
  • ഒരു ന്യൂമറിക് ആർഗ്യുമെന്റ് വ്യത്യസ്ത നമ്പർ സിസ്റ്റങ്ങളിലേക്ക് പരിവർത്തനം ചെയ്യുന്നതിനുള്ള പ്രവർത്തനങ്ങൾ. ഉദാഹരണത്തിന്, ഒക്ടൽ പ്രാതിനിധ്യത്തിൽ ഒക്ടോബർ നമ്പറുകൾ പ്രദർശിപ്പിക്കുന്നു.
  • ഫോർമാറ്റിംഗ് പ്രവർത്തനങ്ങൾ. അവയിൽ ഏറ്റവും പ്രധാനപ്പെട്ടത് ഫോർമാറ്റ് ആണ്. ഫോർമാറ്റ് ഡിക്ലറേഷനിൽ വ്യക്തമാക്കിയിരിക്കുന്ന നിർദ്ദേശങ്ങൾക്കനുസരിച്ച് ഫോർമാറ്റ് ചെയ്ത ഒരു എക്സ്പ്രഷൻ ഉള്ള ഒരു വേരിയന്റ് മൂല്യം ഇത് നൽകുന്നു.
  • തുടങ്ങിയവ.

ഈ ഫംഗ്‌ഷനുകളുടെയും അവയുടെ ആപ്ലിക്കേഷന്റെയും സവിശേഷതകൾ പഠിക്കുന്നത് Excel-ന്റെ വ്യാപ്തി ഗണ്യമായി വികസിപ്പിക്കും.

ഉദാഹരണം 5

കൂടുതൽ സങ്കീർണ്ണമായ പ്രശ്നങ്ങൾ പരിഹരിക്കാൻ നമുക്ക് ശ്രമിക്കാം. ഉദാഹരണത്തിന്:

എന്റർപ്രൈസസിന്റെ യഥാർത്ഥ ചെലവ് റിപ്പോർട്ട് ചെയ്യുന്ന ഒരു പേപ്പർ ഡോക്യുമെന്റ് നൽകിയിരിക്കുന്നു. ആവശ്യമാണ്:

  • Excel സ്പ്രെഡ്ഷീറ്റ് ഉപയോഗിച്ച് അതിന്റെ ടെംപ്ലേറ്റ് ഭാഗം വികസിപ്പിക്കുക;
  • ഒരു VBA പ്രോഗ്രാം സൃഷ്ടിക്കുക, അത് പൂരിപ്പിക്കുന്നതിന് പ്രാരംഭ ഡാറ്റ അഭ്യർത്ഥിക്കുകയും ആവശ്യമായ കണക്കുകൂട്ടലുകൾ നടത്തുകയും അവയുമായി ബന്ധപ്പെട്ട ടെംപ്ലേറ്റ് സെല്ലുകൾ പൂരിപ്പിക്കുകയും ചെയ്യും.

സാധ്യമായ പരിഹാരങ്ങളിലൊന്ന് നമുക്ക് പരിഗണിക്കാം.

ഒരു ടെംപ്ലേറ്റ് സൃഷ്ടിക്കുന്നു

എല്ലാ പ്രവർത്തനങ്ങളും Excel-ൽ ഒരു സാധാരണ ഷീറ്റിൽ നടപ്പിലാക്കുന്നു. മാസം, വർഷം, ഉപഭോക്തൃ കമ്പനിയുടെ പേര്, ചെലവുകളുടെ അളവ്, അവയുടെ നില, വിറ്റുവരവ് എന്നിവ പ്രകാരം ഡാറ്റ നൽകുന്നതിന് സൗജന്യ സെല്ലുകൾ റിസർവ് ചെയ്തിരിക്കുന്നു. റിപ്പോർട്ട് കംപൈൽ ചെയ്യുന്ന കമ്പനികളുടെ (സൊസൈറ്റികൾ) എണ്ണം നിശ്ചയിച്ചിട്ടില്ലാത്തതിനാൽ, ഫലങ്ങളും സ്പെഷ്യലിസ്റ്റിന്റെ പേരും അടിസ്ഥാനമാക്കി മൂല്യങ്ങൾ നൽകുന്നതിനുള്ള സെല്ലുകൾ മുൻകൂട്ടി റിസർവ് ചെയ്തിട്ടില്ല. വർക്ക്ഷീറ്റിന് ഒരു പുതിയ പേര് നൽകിയിരിക്കുന്നു. ഉദാഹരണത്തിന്, "റിപ്പോർട്ട്".

വേരിയബിളുകൾ

ഒരു ടെംപ്ലേറ്റ് സ്വയമേവ പൂരിപ്പിക്കുന്നതിന് ഒരു പ്രോഗ്രാം എഴുതാൻ, നിങ്ങൾ നൊട്ടേഷനുകൾ തിരഞ്ഞെടുക്കേണ്ടതുണ്ട്. അവ വേരിയബിളുകൾക്കായി ഉപയോഗിക്കും:

  • NN - നിലവിലെ പട്ടിക വരിയുടെ നമ്പർ;
  • TP, TF - ആസൂത്രിതവും യഥാർത്ഥവുമായ വ്യാപാര വിറ്റുവരവ്;
  • എസ്എഫ്, എസ്പി - ചെലവുകളുടെ യഥാർത്ഥവും ആസൂത്രിതവുമായ തുക;
  • IP, IF - ചെലവുകളുടെ ആസൂത്രിതവും യഥാർത്ഥവുമായ ലെവൽ.

ഈ നിരയുടെ ആകെ ശേഖരണത്തെ സൂചിപ്പിക്കാൻ നമുക്ക് അതേ അക്ഷരങ്ങൾ ഉപയോഗിക്കാം, എന്നാൽ "പ്രിഫിക്സ്" Itog ഉപയോഗിച്ച്. ഉദാഹരണത്തിന്, ItogTP എന്നത് "ആസൂത്രിത വിറ്റുവരവ്" എന്ന തലക്കെട്ടിലുള്ള പട്ടിക നിരയെ സൂചിപ്പിക്കുന്നു.

VBA പ്രോഗ്രാമിംഗ് ഉപയോഗിച്ച് ഒരു പ്രശ്നം പരിഹരിക്കുന്നു

അവതരിപ്പിച്ച നൊട്ടേഷനുകൾ ഉപയോഗിച്ച്, വ്യതിയാനങ്ങൾക്കുള്ള സൂത്രവാക്യങ്ങൾ ഞങ്ങൾ നേടുന്നു. നിങ്ങൾക്ക് %-ൽ കണക്കാക്കണമെങ്കിൽ, ഞങ്ങൾക്ക് (F - P) / P * 100 ഉണ്ട്, ആകെ - (F - P).

ഈ കണക്കുകൂട്ടലുകളുടെ ഫലങ്ങൾ ഉടനടി നൽകാനുള്ള ഏറ്റവും നല്ല മാർഗം Excel പട്ടികയുടെ അനുബന്ധ സെല്ലുകളിലേക്കാണ്.

യഥാർത്ഥവും പ്രവചന മൊത്തത്തിനും, ItogP=ItogP + P, ItogF=ItogF+ F എന്നീ സൂത്രവാക്യങ്ങൾ ഉപയോഗിച്ചാണ് അവ ലഭിക്കുന്നത്.

വ്യതിയാനങ്ങൾക്ക് = (ItogF - ItogP) / ItogP * 100, കണക്കുകൂട്ടൽ ഒരു ശതമാനമായി നടപ്പിലാക്കുകയാണെങ്കിൽ, മൊത്തം മൂല്യത്തിന്റെ കാര്യത്തിൽ - (ItogF - ItogP) ഉപയോഗിക്കുക.

ഫലങ്ങൾ ഉടൻ തന്നെ അനുബന്ധ സെല്ലുകളിലേക്ക് എഴുതുന്നു, അതിനാൽ അവയെ വേരിയബിളുകളിലേക്ക് നൽകേണ്ട ആവശ്യമില്ല.

സൃഷ്ടിച്ച പ്രോഗ്രാം പ്രവർത്തിപ്പിക്കുന്നതിന് മുമ്പ്, നിങ്ങൾ വർക്ക്ബുക്ക് സംരക്ഷിക്കേണ്ടതുണ്ട്, ഉദാഹരണത്തിന്, "Report1.xls" എന്ന പേരിൽ.

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

മാക്രോകൾ ഉപയോഗിച്ച് Excel പ്രശ്നങ്ങൾ എങ്ങനെ പരിഹരിക്കാമെന്ന് ഇപ്പോൾ നിങ്ങൾക്കറിയാം. VBA Excel ഉപയോഗിക്കാനുള്ള കഴിവ് (മുകളിലുള്ള പ്രോഗ്രാമുകളുടെ ഉദാഹരണങ്ങൾ കാണുക) ഇപ്പോൾ ഏറ്റവും ജനപ്രിയമായ ടെക്സ്റ്റ് എഡിറ്ററായ Word-ൽ പ്രവർത്തിക്കാൻ ആവശ്യമായി വന്നേക്കാം. പ്രത്യേകിച്ചും, ലേഖനത്തിന്റെ തുടക്കത്തിൽ കാണിച്ചിരിക്കുന്നതുപോലെ എഴുതുന്നതിലൂടെയോ കോഡ് എഴുതുന്നതിലൂടെയോ നിങ്ങൾക്ക് മെനു ബട്ടണുകൾ സൃഷ്ടിക്കാൻ കഴിയും, ഇതിന് നന്ദി, ഡ്യൂട്ടി കീകൾ അമർത്തിയോ “കാണുക” വഴിയോ ടെക്സ്റ്റിലെ നിരവധി പ്രവർത്തനങ്ങൾ നടത്താൻ കഴിയും. ടാബും "മാക്രോസ്" ഐക്കണും.