Irgasheva durdona yakubdjanovna ma’luMotlar oMbori


Visual basic for applications ning umumiy xarakteristikasi



Download 13,67 Mb.
Pdf ko'rish
bet45/77
Sana09.03.2022
Hajmi13,67 Mb.
#486890
1   ...   41   42   43   44   45   46   47   48   ...   77
Bog'liq
malumotlar ombori

5.1. Visual basic for applications ning umumiy xarakteristikasi
Visual Basic for Applications (VBA) dasturlash tili Micro-
soft office barcha ilovalarda ishlash uchun umumiy uskuna bo‘lib 
xizmat qiladi. Uning yordamida ixtiyoriy dasturlash masalalarini 
Microsoft Office vositalaridan ishlab chiqarish muhiti sifatida 
foydalanib, foydalanuvchi barcha ishlarini avtomatlashtirishdan 
tortib yirik ilovalar ishlab chiqishgacha hal qilishi mumkin.
VBA obyektga yo‘naltirilgan til hisoblanadi. Access ilovala-
ridagi asosiy ish ma’lumotlar bilan ishlashga asoslanadi, shuning 
uchun ba’zi bir ma’lumotlar boshqarish kutubxonasini tavsiflab 
chiqamiz:
• 
DAO (Data Access objekts)
• 
ADO (Active Data Objects)
• 
JRO (Jet and Replications Objekts)
VBAning quyidagi komponentlari bilan tanishib chiqamiz:
• 
protsedura va funksiyalar;
• 
o‘zgaruvchilar, konstantalar va ma’lumot toifalari;
• 
o‘zgaruvchi va funksiyalarning ta’sir sohasi;
• 
boshqaruvchi konstruksiyalar tarmoqlanish va sikllar;
• 
sikllardan chiqish va protseduralar;
• 
modullar.
5.2. Protsеdura va funksiyalar
VBA dasturini asosiy komponentlar protsedura va funksiyalar 
hisob lashda protsedura mos ravishda SUB va END SUB yoki 
function va And function operatorlari orasiga joylashtiriladi, 
masalan, ularning tuzilishi quyidagicha:
SUB 
 ( ………)


………..
End Sub
Yoki
function  ( …….)




71
…………
=< qaytariluvchi qiymat> 
End function
funksiya protseduradan shu bilan farq qiladiki, uning nomi 
o‘zgaruvchi sifatida kelishi mumkin va u funksiyaning chaqirish 
nuqtasiga qiymatini qaytarish uchun ishlatiladi.
Yozilgan protsedura yoki funksiyani bajarish uchun uni cha-
qirish kerak. Argumentlar bilan berilgan protsedurani faqat 
boshqa protsedura yoki funksiyalardan chaqirish mumkin. Bunda 
uning nomini argumentlar haqiqiy qiymatlar ro‘yxati bilan VBA 
operatorini birortasi bilan berish kerak.
funksiyalar VBAni alohida operatori bilan chaqirishdan 
tashqari uning nomini haqiqiy qiymatli argumentlar ro‘yxati bi-
lan VBAga yozilgan dasturdagi formula yoki ifodaga to‘g‘ridan 
to‘g‘ri joylashtirib ham bajarish mumkin. Masalan, uning nomini 
Access hisobotlari va formalar, so‘rovdagi hisoblanuvchi maydon 
formulalarga to‘g‘ridan to‘g‘ri joylashtirilishi ham mumkin. Argu-
mentlar bo‘lmagan protseduralar (ular ba’zan makros buyrug‘i deb 
ataladi) faqat boshqa protsedura va funksiyalardan chaqirilibgina 
qolmay, balki tezkor chaqirish tugmalar yordamida, yoyiluvchi 
menyu komandalari yoki uskunalar paneli tugmalari yordamida 
ham chaqirish mumkin. Shuningdek, bunday protseduralarni har 
xil hodisalarni bajarish bilan bog‘lash mumkin (masalan forma dan 
tugmalarni sichqonchani bosib forma yoki hisobotlarni ochish, 
formasini boshqarish elementlariga ta’sir qilib va boshqalar).
Bunday protseduralar hodisani qayta ishlovchi protseduralar 
deyiladi. Argument qiymatlarini qabul qilib ishlaydigan protse-
dura yoki funksiyalar bunday xususiyatlarga ega emas. Agar 
chaqirilayotgan protsedura yagona nomga ega bo‘lib, chaqirayot-
gan protsedura joylashgan modulda bo‘lsa, uni chaqirish uchun 
nomini ko‘rsatish yetarli. So‘ngra argument haqiqiy qiymatlarini 
berishi mumkin (bunda ularni qavs ichiga olish shart emas). 
Prosedurani chaqirishning yana bir usuli, call operatorini ish-
latib bajariladi. Oldin call operatori, so‘ngra protsedura nomi, 
so‘ngra qavs ichida parametrlar ro‘yxati beriladi. Bunda qavslar 
ishlatilishi albatta shart. 
funksiyalarni chaqirishning eng ko‘p ishlatiladigan usuli ta-
yinlash operatorining o‘ng tomonidan funksiya nomini qavs ichi-
da uning parametrlar bilan berilishi hisoblanadi.


72
Misol. CROSS
RC nomini protsedurali, unga ikkita argu-
mentni (konstanta va ifoda) uzatish bilan chaqirish:
CROSS 7,i+2
yoki 
CALL CROSSRC(7,i+2)
Quyidagi misolda ikkita (left va mid) funksiyalarini chaqirish 
va ular qaytaradigan qiymatlarni ifoda ishlatishi ko‘rsatilgan
yStr =left(y,1) & mid(y,2,1)
Prossedura funksiyalarga o‘zgaruvchilarni uzatishning ikkita 
har xil usuli ishlatilishi mumkin: murojaat va qiymatlar bo‘yicha.
O‘zgaruvchi murojaat bo‘yicha uzatilganda protsedura yoki 
funksiyada shu o‘zgaruvchining xotiradagi adresi (yacheyka no-
meri) uzatiladi. Cha qirayotgan protsedura haqiqiy parametr qiy-
matini o‘zgartirishi mumkin. 
Agar haqiqiy parametr qiymat bo‘yicha uzatilsa, unda chaqiri-
layotgan protsedura yoki funksiya o‘zgaruvchisining o‘zini emas, 
shu parametr sifatida ishlatilayotgan haqiqiy parametrning faqat 
qiymatini oladi.
Haqiqiy parametr olingan qiymatlarini barcha o‘zgarishlari 
(agar ular chaqirilayotgan protsedura bajarilayotgan bo‘lsa) ha-
qiqiy parametr o‘zgaruvchisining qiymatiga ta’sir qilmaydi.
Protsedura yoki funksiyalarga parametrlarni uzatish usu-
li uning argumentlarini (formal parametrlarni) tavsiflashda 
ko‘rsatiladi. Argument nomi oldida uzatish usulini oshkor tas-
virlovchi (Bye Ref
– 
murojaat bo‘yicha uzatish, ByVal
– 
qiymat 
bo‘yicha) ko‘rsatiladi. Agar parametrni oshkor uzatish usuli 
ko‘rsatilmasa unda sukut bilan uzatishga murojaat bo‘yicha deb 
hisoblanadi.
Misol: faraz qilaylik ikkita protsedura Main va Examples
Sub main()
A=10
B=20
C=30
Call examples(a,b,c)
Call MsgBox(a)
Call MsgBox(b)
Call MsgBox(c)
Sub Example1(x, ByVal, ByRef)
x=x+1


73
y=y+1
z=z+1
Call MsgBox(x)
Call MsgBox(y)
Call MsgBox(z)
End Sub
Dastur odatda ko‘p protsedura va funksiyadan tashkil topadi 
va ular bitta yoki bir nechta har xil modullarda joylashishi mum-
kin.
Modullarda loyihalar birlashtiriladi. Bunda bitta loyihada bir 
nechta har xil umumiy modul yoki protsedurani ishlatadigan das-
turlar joylashishi mumkin.
Bitta modulda joylashgan har bir protsedura yagona nomga 
ega bo‘lishi kerak; bunda loyihada bir nechta har xil modullar 
bo‘lishi mumkin. Agar loyihada bir xil nomli bir nechta protse-
duralar bo‘lsa, unda protsedurani chaqirish uchun komanda 
ko‘rinishini quyidagicha yozish mumkin:
 < protsedura nomi>
Bunda modul nomi bir necha so‘zdan iborat bo‘lsa, unda no-
mini kvadrat qavsga olib yozish kerak. Masalan, agar modul nomi 
< trafik protseduralar> protsedura esa  deb nomlansa, 
unda protsedura chaqirish komandasi quyidagicha bo‘ladi:
[Grafik protseduralar]. Hisoblash 
Boshqa loyihalarda joylashtirilgan protseduralarni ham ish-
latish mumkin. Bunda nomini aniqlashtirish uchun yana bir 
bosqich talab etilishi mumkin:
..
.

Download 13,67 Mb.

Do'stlaringiz bilan baham:
1   ...   41   42   43   44   45   46   47   48   ...   77




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish