Қолданбалы бағдарламар ортасында VBA элементтерін қолдану
КІРІСПЕ
VBA . мен ТАНЫСУ
ҚАРАПАЙЫМ ФУНКЦИАЛАР ЖӘНЕ ПРОЦЕДУРАЛАР
Айнымаллар және тұрақтылар
Модульдер және процедуралар
Процедуралар
Шартты көшу операторлары бар функциялар
VBA объектілері әдістері және олардың қасиеттері
Worksheet объектісі
Range объектісінің әдістері
VBA.дағы экрандық формалар
Бағдарламаны автоматтандыру
ОФИСТІК ОРТАДА БАҒДАРЛАМАЛАР ЖАСАУ
Access қосымшаларында VBA.ны қолдану мүмкіндіктері
Қосымша меню түрлері
Сервер нұсқасын кітапханалық объектілері
Кітапханадағы объектіні көру
Сервер нұсқасының экземплярын құру
Microsoft Word объектілерін пайдалану
VBA ортасында VB бизнес жобаларын интеграциялау
ҚОРТЫНДЫ
ӘДЕБИЕТТЕР ТІЗІМІ
ҚОСЫМША А
VBA . мен ТАНЫСУ
ҚАРАПАЙЫМ ФУНКЦИАЛАР ЖӘНЕ ПРОЦЕДУРАЛАР
Айнымаллар және тұрақтылар
Модульдер және процедуралар
Процедуралар
Шартты көшу операторлары бар функциялар
VBA объектілері әдістері және олардың қасиеттері
Worksheet объектісі
Range объектісінің әдістері
VBA.дағы экрандық формалар
Бағдарламаны автоматтандыру
ОФИСТІК ОРТАДА БАҒДАРЛАМАЛАР ЖАСАУ
Access қосымшаларында VBA.ны қолдану мүмкіндіктері
Қосымша меню түрлері
Сервер нұсқасын кітапханалық объектілері
Кітапханадағы объектіні көру
Сервер нұсқасының экземплярын құру
Microsoft Word объектілерін пайдалану
VBA ортасында VB бизнес жобаларын интеграциялау
ҚОРТЫНДЫ
ӘДЕБИЕТТЕР ТІЗІМІ
ҚОСЫМША А
1 VBA-МЕН ТАНЫСУ
Бұл бағдарламамен Excel тәжірибелі қолданушы түріндегідей сенімді және нақты жұмыс істеуге болады. Excel–де жұмысты автоматизациялау дәрежесін толық қолдануға болады.
Егер сіз бұрын ешқашан бағдарламаламаған болсаңыз да онда VBA–ның көмегімен есептер шешімдерін меншіктеп оңай автоматизациялай аласыз. Бүгінгі таңда қосымшаларды автоматизациялау үшінгі бағдарламалау тілдерін қолдану және үйренудегі қарапайым ұсыныстардың бірі болып табылады.
Visual Basic for applications дегеніміз не? 1990-шы жылдардың басына дейін қосымшаларды автоматизациялау идеасы үлкен толғаныс тудырады және мамандардың өзіне де оның реализациясы қиын іс–әрекет болып жетті. Атоматизацияға жататын әрбір қосымша үшін автоматизациялауды іске асыра алатын өз бағдарламалау тілін қайткен күнде де үйрену керек болды. Мысалы, Excel–ді автоматизациялау үшін Excel макростар тілі қолданылады. Microsoft Word–ты автоматизациялау үшін WordBasic тілі т.б. Microsoft фирмасы әрбір қолданушыларға өзінің автоматизациялау тілін эффективті түрде ұсынды. Бұл барлық қосымшаларға да бағдарламалау тіліне де жуық келетін VBA тілі.
Visual Basic for Applications (VBA), Visual Basic қосымшасының ыңғайлы тілі болып саналады. Мұны қосымша ретінде бағытталған VB версиясы деп санауға болады.
Сонымен қатар VBA–ның Visual Basic–тен айырмашылығын қарастыра кеткен жөн.
– Visual Basic тілі өзіндік қосымшалардың аяқталғанын құру үшін жұмыс істеу, VBA ағымдағы қосымшаларды автоматизациялау үшін қолданылады.
– Visual Basic тек ғана жұмыс істеу ортасында қолданылады, VBA қосымшалар ортасына қолданылады.
– Visual Basic–те құрылған қосымшаларды толықтыру үшін қолданушыға Visual Basic тілі өзінде байланыс түсіп тұруы міндетті емес, VBA қосымшаның орындалуы өзі ұйымдасқан “аталық” қосымшаға қатынауды талап етеді (мысалы, Excel).
Visual Basic және VBA жазылу ерекшеліктеріне қарамастан тілдер құрылымы жағынан бір–біріне өте жуық. Егер де сіз Visual Basic–пен таныс болсаңыз VBA–ді оңай меңгере аласыз. Нақты және кері түйіндеуі:
VBA–ны үйренгеннен кейін сіз Visual Basic–ке негізгі болатын фундаментке ие боласыз. Бұдан басқа VBA–ны үйренгеннен кейін, Excelдегі мысалдар мен есептеулерді шешкенде сіз VBA–ны Word, Access, Outlook, Fox Pro және PowerPoint бағдарламаларында қолдану үшін бір шама білім игеріп қаласыз.
Техникалық тілмен айтар болсақ бағдарламалаудың бұл тілі қосымшаны автоматизациялауда қолданушы есебін құру, процедуралар мен процестерді қолдану үшін арналған.
Макрос – Excel–де орындауға болатын және тек өзіне ғана тән атпен сақталған қолданушы жазған командалар мен әрекеттер тізбегі.
Excel–де макростар жазуда MacroRecorder деп аталатын арнайы программа қолданылады.
MacroRecorder – бұл VBA прогаммалау тілінде макрос құратын арнаулы транслиятор. Бұл транслиятор макрос жазу басталғаннан кейінгі қолданушының әрбір әрекетін VBA тіліне аударып отырады және бұл макрос жазу тоқталғанға дейін жүргізіледі.
Макростарды Windows–тың Word, Excel, PoverPoint және т.б қосымшаларында құруға болады. VBA Windows ортасында кездесетін көптеген қолданбалы есептерді шешуге арналған программалау тілдерінің бірі. Бұл программалау тілінде қазіргі кезде кең тараған визуалдық программалау технологиясы қолданылады, яғни қосымша программалардағы жұмыстық беттер экранда тұратын және басқарылатын компаненттерден құралады, сондай–ақ, құрылып жатқан программа модулінің мәтіні арнаулы MacroRecorder көмегімен автоматты түрде жазылып отырады.
Макросты жазуды бастамас бұрын макроста орындалатын әрекеттердің барлығын бірінші рет қайталап орындап, нәтижесін көріп тиянақтап алған дұрыс болады. Макростың VBA–дағы программа модулінің мәтінін Visual Basic редакторында қарауға және өзгертуге болады. VBA–дағы программа бір қарағанда үлкен болып көрінгенімен ол қарапайым және түсінікті.
2
Бұл бағдарламамен Excel тәжірибелі қолданушы түріндегідей сенімді және нақты жұмыс істеуге болады. Excel–де жұмысты автоматизациялау дәрежесін толық қолдануға болады.
Егер сіз бұрын ешқашан бағдарламаламаған болсаңыз да онда VBA–ның көмегімен есептер шешімдерін меншіктеп оңай автоматизациялай аласыз. Бүгінгі таңда қосымшаларды автоматизациялау үшінгі бағдарламалау тілдерін қолдану және үйренудегі қарапайым ұсыныстардың бірі болып табылады.
Visual Basic for applications дегеніміз не? 1990-шы жылдардың басына дейін қосымшаларды автоматизациялау идеасы үлкен толғаныс тудырады және мамандардың өзіне де оның реализациясы қиын іс–әрекет болып жетті. Атоматизацияға жататын әрбір қосымша үшін автоматизациялауды іске асыра алатын өз бағдарламалау тілін қайткен күнде де үйрену керек болды. Мысалы, Excel–ді автоматизациялау үшін Excel макростар тілі қолданылады. Microsoft Word–ты автоматизациялау үшін WordBasic тілі т.б. Microsoft фирмасы әрбір қолданушыларға өзінің автоматизациялау тілін эффективті түрде ұсынды. Бұл барлық қосымшаларға да бағдарламалау тіліне де жуық келетін VBA тілі.
Visual Basic for Applications (VBA), Visual Basic қосымшасының ыңғайлы тілі болып саналады. Мұны қосымша ретінде бағытталған VB версиясы деп санауға болады.
Сонымен қатар VBA–ның Visual Basic–тен айырмашылығын қарастыра кеткен жөн.
– Visual Basic тілі өзіндік қосымшалардың аяқталғанын құру үшін жұмыс істеу, VBA ағымдағы қосымшаларды автоматизациялау үшін қолданылады.
– Visual Basic тек ғана жұмыс істеу ортасында қолданылады, VBA қосымшалар ортасына қолданылады.
– Visual Basic–те құрылған қосымшаларды толықтыру үшін қолданушыға Visual Basic тілі өзінде байланыс түсіп тұруы міндетті емес, VBA қосымшаның орындалуы өзі ұйымдасқан “аталық” қосымшаға қатынауды талап етеді (мысалы, Excel).
Visual Basic және VBA жазылу ерекшеліктеріне қарамастан тілдер құрылымы жағынан бір–біріне өте жуық. Егер де сіз Visual Basic–пен таныс болсаңыз VBA–ді оңай меңгере аласыз. Нақты және кері түйіндеуі:
VBA–ны үйренгеннен кейін сіз Visual Basic–ке негізгі болатын фундаментке ие боласыз. Бұдан басқа VBA–ны үйренгеннен кейін, Excelдегі мысалдар мен есептеулерді шешкенде сіз VBA–ны Word, Access, Outlook, Fox Pro және PowerPoint бағдарламаларында қолдану үшін бір шама білім игеріп қаласыз.
Техникалық тілмен айтар болсақ бағдарламалаудың бұл тілі қосымшаны автоматизациялауда қолданушы есебін құру, процедуралар мен процестерді қолдану үшін арналған.
Макрос – Excel–де орындауға болатын және тек өзіне ғана тән атпен сақталған қолданушы жазған командалар мен әрекеттер тізбегі.
Excel–де макростар жазуда MacroRecorder деп аталатын арнайы программа қолданылады.
MacroRecorder – бұл VBA прогаммалау тілінде макрос құратын арнаулы транслиятор. Бұл транслиятор макрос жазу басталғаннан кейінгі қолданушының әрбір әрекетін VBA тіліне аударып отырады және бұл макрос жазу тоқталғанға дейін жүргізіледі.
Макростарды Windows–тың Word, Excel, PoverPoint және т.б қосымшаларында құруға болады. VBA Windows ортасында кездесетін көптеген қолданбалы есептерді шешуге арналған программалау тілдерінің бірі. Бұл программалау тілінде қазіргі кезде кең тараған визуалдық программалау технологиясы қолданылады, яғни қосымша программалардағы жұмыстық беттер экранда тұратын және басқарылатын компаненттерден құралады, сондай–ақ, құрылып жатқан программа модулінің мәтіні арнаулы MacroRecorder көмегімен автоматты түрде жазылып отырады.
Макросты жазуды бастамас бұрын макроста орындалатын әрекеттердің барлығын бірінші рет қайталап орындап, нәтижесін көріп тиянақтап алған дұрыс болады. Макростың VBA–дағы программа модулінің мәтінін Visual Basic редакторында қарауға және өзгертуге болады. VBA–дағы программа бір қарағанда үлкен болып көрінгенімен ол қарапайым және түсінікті.
2
ӘДЕБИЕТТЕР ТІЗІМІ
1. Шарон Подлин Программирование для Microsoft Excel 2000 /Подлин Шарон Пер. с англ. :Уч. пос. – М. : Издательский дом “Вильямс”, 2000 год, – 304 c.
2. Лхагвагийн Батбаяр Excelийг 21 өдөр сурах /Батбаяр Лхагва Улаан-Баатар 2002 он, -564 хуудас.
3. Н. Энхтөр Visual Basic 6 Сургалтын гарын авлага /Энхтөр. Н Ховд 2002 он, -390 хуудас.
4. С. Браун Visual Basic 6 Учебный курс / Браун.С Санкт – Петербург 2001 год, -574 с.
5. Үкімет Құсайынова Қазақша-Орысша, Орысша-Қазақша сөздік: Информатика және есептеуіш техника / Құсайынова Үкімет “Рауан ” баспасы, Алматы 1999 жылы, -304 бет
6. Виталий Тихвинский «Обработка модулей VBA» /http://www.coroner.ru
7.Бунин Э. Excel Visual Basic для приложений. М.: Бином, 1996, 351с.
8. Николь Н., Альбрехт Р. Электронные таблицы Excel, М.: Эком, 1995,301с.
9. Гарнаев.А.Ю. Использование MS Excel и VBA экономике и финансах/ Гарнаев. БХВ-Санкт-Петербург, 2000.-336с.
1. Шарон Подлин Программирование для Microsoft Excel 2000 /Подлин Шарон Пер. с англ. :Уч. пос. – М. : Издательский дом “Вильямс”, 2000 год, – 304 c.
2. Лхагвагийн Батбаяр Excelийг 21 өдөр сурах /Батбаяр Лхагва Улаан-Баатар 2002 он, -564 хуудас.
3. Н. Энхтөр Visual Basic 6 Сургалтын гарын авлага /Энхтөр. Н Ховд 2002 он, -390 хуудас.
4. С. Браун Visual Basic 6 Учебный курс / Браун.С Санкт – Петербург 2001 год, -574 с.
5. Үкімет Құсайынова Қазақша-Орысша, Орысша-Қазақша сөздік: Информатика және есептеуіш техника / Құсайынова Үкімет “Рауан ” баспасы, Алматы 1999 жылы, -304 бет
6. Виталий Тихвинский «Обработка модулей VBA» /http://www.coroner.ru
7.Бунин Э. Excel Visual Basic для приложений. М.: Бином, 1996, 351с.
8. Николь Н., Альбрехт Р. Электронные таблицы Excel, М.: Эком, 1995,301с.
9. Гарнаев.А.Ю. Использование MS Excel и VBA экономике и финансах/ Гарнаев. БХВ-Санкт-Петербург, 2000.-336с.
Пән: Информатика, Программалау, Мәліметтер қоры
Жұмыс түрі: Дипломдық жұмыс
Тегін: Антиплагиат
Көлемі: 37 бет
Таңдаулыға:
Жұмыс түрі: Дипломдық жұмыс
Тегін: Антиплагиат
Көлемі: 37 бет
Таңдаулыға:
ҚАЗАҚСТАН РЕСПУБЛИКАСЫ ҒЫЛЫМ ЖӘНЕ БІЛІМ МИНИСТРЛІГІ
МАТЕМАТИКА, ФИЗИКА, ТЕХНИКА ЖӘНЕ АҚПАРАТТЫҚ
ТЕХНОЛОГИЯЛАР ФАКУЛЬТЕТІ
Математикалық модельдеу және
компьютерлік технологиялар кафедрасы
ДИПЛОМДЫҚ ЖҰМЫС
Тақырыбы: ҚОЛДАНБАЛЫ БАҒДАРЛАМАР ОРТАСЫНДА VBA ЭЛЕМЕНТТЕРІН ҚОЛДАНУ
КІРІСПЕ
VBA – мен ТАНЫСУ
ҚАРАПАЙЫМ ФУНКЦИАЛАР ЖӘНЕ ПРОЦЕДУРАЛАР
Айнымаллар және тұрақтылар
Модульдер және процедуралар
Процедуралар
Шартты көшу операторлары бар функциялар
VBA объектілері әдістері және олардың қасиеттері
Worksheet объектісі
Range объектісінің әдістері
VBA–дағы экрандық формалар
Бағдарламаны автоматтандыру
ОФИСТІК ОРТАДА БАҒДАРЛАМАЛАР ЖАСАУ
Access қосымшаларында VBA–ны қолдану мүмкіндіктері
Қосымша меню түрлері
Сервер нұсқасын кітапханалық объектілері
Кітапханадағы объектіні көру
Сервер нұсқасының экземплярын құру
Microsoft Word объектілерін пайдалану
VBA ортасында VB бизнес жобаларын интеграциялау
ҚОРТЫНДЫ
ӘДЕБИЕТТЕР ТІЗІМІ
ҚОСЫМША А
1 VBA-МЕН ТАНЫСУ
Бұл бағдарламамен Excel тәжірибелі қолданушы түріндегідей сенімді
және нақты жұмыс істеуге болады. Excel–де жұмысты автоматизациялау
дәрежесін толық қолдануға болады.
Егер сіз бұрын ешқашан бағдарламаламаған болсаңыз да онда VBA–ның
көмегімен есептер шешімдерін меншіктеп оңай автоматизациялай аласыз.
Бүгінгі таңда қосымшаларды автоматизациялау үшінгі бағдарламалау тілдерін
қолдану және үйренудегі қарапайым ұсыныстардың бірі болып табылады.
Visual Basic for applications дегеніміз не? 1990-шы жылдардың басына
дейін қосымшаларды автоматизациялау идеасы үлкен толғаныс тудырады және
мамандардың өзіне де оның реализациясы қиын іс–әрекет болып жетті.
Атоматизацияға жататын әрбір қосымша үшін автоматизациялауды іске асыра
алатын өз бағдарламалау тілін қайткен күнде де үйрену керек болды. Мысалы,
Excel–ді автоматизациялау үшін Excel макростар тілі қолданылады. Microsoft
Word–ты автоматизациялау үшін WordBasic тілі т.б. Microsoft фирмасы әрбір
қолданушыларға өзінің автоматизациялау тілін эффективті түрде ұсынды. Бұл
барлық қосымшаларға да бағдарламалау тіліне де жуық келетін VBA тілі.
Visual Basic for Applications (VBA), Visual Basic қосымшасының
ыңғайлы тілі болып саналады. Мұны қосымша ретінде бағытталған VB версиясы
деп санауға болады.
Сонымен қатар VBA–ның Visual Basic–тен айырмашылығын қарастыра кеткен
жөн.
– Visual Basic тілі өзіндік қосымшалардың аяқталғанын құру үшін жұмыс
істеу, VBA ағымдағы қосымшаларды автоматизациялау үшін қолданылады.
– Visual Basic тек ғана жұмыс істеу ортасында қолданылады, VBA
қосымшалар ортасына қолданылады.
– Visual Basic–те құрылған қосымшаларды толықтыру үшін қолданушыға
Visual Basic тілі өзінде байланыс түсіп тұруы міндетті емес, VBA қосымшаның
орындалуы өзі ұйымдасқан “аталық” қосымшаға қатынауды талап етеді (мысалы,
Excel).
Visual Basic және VBA жазылу ерекшеліктеріне қарамастан тілдер
құрылымы жағынан бір–біріне өте жуық. Егер де сіз Visual Basic–пен таныс
болсаңыз VBA–ді оңай меңгере аласыз. Нақты және кері түйіндеуі:
VBA–ны үйренгеннен кейін сіз Visual Basic–ке негізгі болатын
фундаментке ие боласыз. Бұдан басқа VBA–ны үйренгеннен кейін, Excelдегі
мысалдар мен есептеулерді шешкенде сіз VBA–ны Word, Access, Outlook, Fox
Pro және PowerPoint бағдарламаларында қолдану үшін бір шама білім игеріп
қаласыз.
Техникалық тілмен айтар болсақ бағдарламалаудың бұл тілі қосымшаны
автоматизациялауда қолданушы есебін құру, процедуралар мен процестерді
қолдану үшін арналған.
Макрос – Excel–де орындауға болатын және тек өзіне ғана тән атпен
сақталған қолданушы жазған командалар мен әрекеттер тізбегі.
Excel–де макростар жазуда MacroRecorder деп аталатын арнайы программа
қолданылады.
MacroRecorder – бұл VBA прогаммалау тілінде макрос құратын арнаулы
транслиятор. Бұл транслиятор макрос жазу басталғаннан кейінгі қолданушының
әрбір әрекетін VBA тіліне аударып отырады және бұл макрос жазу тоқталғанға
дейін жүргізіледі.
Макростарды Windows–тың Word, Excel, PoverPoint және т.б
қосымшаларында құруға болады. VBA Windows ортасында кездесетін көптеген
қолданбалы есептерді шешуге арналған программалау тілдерінің бірі. Бұл
программалау тілінде қазіргі кезде кең тараған визуалдық программалау
технологиясы қолданылады, яғни қосымша программалардағы жұмыстық беттер
экранда тұратын және басқарылатын компаненттерден құралады, сондай–ақ,
құрылып жатқан программа модулінің мәтіні арнаулы MacroRecorder көмегімен
автоматты түрде жазылып отырады.
Макросты жазуды бастамас бұрын макроста орындалатын әрекеттердің
барлығын бірінші рет қайталап орындап, нәтижесін көріп тиянақтап алған
дұрыс болады. Макростың VBA–дағы программа модулінің мәтінін Visual Basic
редакторында қарауға және өзгертуге болады. VBA–дағы программа бір
қарағанда үлкен болып көрінгенімен ол қарапайым және түсінікті.
2 ҚАРАПАЙЫМ ФУНКЦИАЛАР ЖӘНЕ ПРОЦЕДУРАЛАР
2.1 Айнымаллар және тұрақтылар
VBA барлық айнымалылардың барлық типтері болады. Типтер айнымаллар
қандай мән алатындығын көрсетеді. Мысалға, айнымалы бүтін сандық, жолдық,
уақыттық және т.б тип болу мүмкін. Барлық базалық типтер төмендегі кестеде
көрсетілген.
Кесте 1
Берілгендер типі Жадыдағы Диапазоны
алатын орны
Логикалық (Boolean) True false
Integer 2 -32768-32768
Long 4 -2147483648-2147483647
Single 4 1.401298e-45 3.402823e38
Double 8 4.94065645841247e-324
1.797693e308
Date 8 1 айдың 100 жылынаң 31
желтоқсанға дейін
Object 4 Кез–келген анықталған объект
String 10+жол 0 дан 2*109
ұзындығы
Currency 8 -922337203685477.5808 ден
922337203685477,5807 ға дейн
Variant Беріліп отырған айнымалыға байланысты болады.
Егер де айнымалының типі берілмеген болса мұндай жағдайда, жоғарыда
көрсетілген Variant типін қолданады. Бұл типтегі айнымаллар барлық
типтегілерді сақтауы мүмкін. Басқаша айтқанда айнымалының типі соңғы
меншіктелген мәніне байланысты болғандықтан. Сондықтан да Variant типі ең
қолайлы типтердің бірі болып саналады. Бірақта әрбір айнымалының өзіне
сәйкес тип меншіктеуі функциялардың жылдам жүктелуіне пайдалы болады.
VBA бағдарламасында айнымалыларды меншіктеу кезінде келесі
конструкцияны қолдануға болады:
Dim Айнымалы_аты As Айнымалы_типі
Айнымалыны меншіктеу келесі түрде де болуы мүмкін:
Dim A, As Integer
Dim C, D As Integer, E As Single
Жалпы бағдарламада жолдық немесе мәтіндік типтерге қолданатын
(string) мүмкін болатын ұзындығы бар массивтер және символдар болуы мүмкін.
Бірақта мәтіндік айнымалылары фиксерленген ұзындығы бар айнымалыларыда
анықталған болуы мүмкін. Келесі мысалда 25 символдан туратың массив
жарияланған.
Dim S String*25
Мұндай жағдайда s айнымалысына 25 символдан туратын жол меншіктейтін
болсақ онда айнымалы мәні қысқартылады.
Бұл бағдарламалау тілінде басқа бағдарламалау тілдеріндегі сияқты
массивте жеке өзін жариялап қолдануға болады. Мысалы, төменде
көрсетілгендей:
Dim B(3,3) As Single
Dim A (1 to 12) As Integer
Мысалда бірінші жол екі өлшемді 3х3 (матрица) массивті жарияланған.
Екінші жолы бір өлшемді (вектор) массив, массив 12 бүтін санан турады,
массивтің 1 элементі А(0) тең, ал соңғы элементі А(11) тең. Мұндай жағдайда
0 саны базалық индекс деп аталады.
Базалық индекс мәнін өзгертуге болады ол үшін модульдік беттегі
бағдарлама жазып отырған беттің басына Option Base1 жазу қажет. Осы мәтінен
кейін массив элементтері 0 басталып санайтын болады. Индекс өзгертудің енді
екінші амалы To кілт сөзін массив жариялау барсында қолдану қажет. Массив
бағдарламада әрбір элементімен анықталады, Мысалы: Dim b(1 to 2, 1 to 2) As
Single
B(1,1)=2
B(1,2)=4
B(2,1)=1
B(1,2)=6
Бір өлшемді массивті анықтаудың ең оңай жолы Array функциясының
көмегімен анықтау болып табылады. Шығуға тиіс элементтер тізімі үтірлермен
бөлінген және айнымалыларға Variant типін меншіктеген. Мысалы:
Dim A As Variant
A=Array (10,20,30)
B=A(2)
Кейбір жағдайда бағдарлма орындалу барсында массив өлшемін өзгерту
қажеттігі туындайды. Мұндай жағдайда массивтерді динамиқалық айнымалы
ретінде жариялайды. Динамикалық массив жариялау кезінде массив өлшемін
енгізу қажет емес. Мысалы:
Dim R() Single
Кейін бағдарлама орындалу барысында массивтің қажет болатын өлшемін
есептеп шығару қажет болады, оны кейбір айнымалыларға меншіктейміз, мысалы,
n, m және оның динамикалық өлшемін ReDim операторының көмегімен беру қажет.
ReDim R(n, n)
Функция және процедуралардың параметрлері болып саналатын
айнымалыларды бейнелеу барсында, Dim төмен түседі. Оны көптеген мысалдар
жасау барсында байқауға болады. Егер Х және у байланысты функцияларға
байланысты есептеулер жүргізу қажет болса оны төмендегі көрсетілгендей етіп
бағдарламасын құруға болады. Мысалы:
Function Y(X As Double) As Double
Y=Sin(Application. Pi ()*x ) * Exp(-2 * x)
End Function
Мұндағы “=“ белгісі меншіктеу операторы ретінде қолданылады. Жалпы
жоғарыдағы бағдарлама орындалу нәтижесінде төмендегі жауапты алуға болады.
X=2
X=X+2
Айнымалы Х–ке 4 мәнін меншіктеуді.
Әр қашанда еске алатын бір жағдай бағдарлама жасау барсында күнділкті
қолданып жүрген турақты мәндерді қолдану қажет. Мысалы, сандар, жолдар,
дата және т.б. Бұл жағдайда мұның орнына VBA да келесі берілген
конструкциялардың қай тиімдісін қолдану қажет. Конструкциясы төмендегідей.
Const Имя_Постоянной Турақты_аты = мәні
Const турақты _аты As турақты_ типі = мәні
2.2 Модульдер және процедуралар
VBA тілінде жазылған бағдарламаның құрылымды бөлігінің бірі модуль
функция және процедуралардың жиыны, барлығын біріктірген бағдарламаның
негізгі бір бөлігі. Бағдарламада модульдердің келесі екі түрі белгілі:
– Стандартты модульдер,
– Форма модульдері.
Әрбір модуль областы бейнелеу аймағының және бір немесе бірнеше
процедурадан туруы мүмкін. Процедура дегеніміз операторлар тізбегінен
турады, оларды бағдарламалық кодтар деп атаймыз. Модульге кіретін
процедуралар областы бейнелеу аймағына біріктірледі. Модульде берілген және
де объектілер суреттеледі, олардың барлығы жалпылай модуль элементтері деп
атап өтуге болады. Жалпы көрсетілген объектілер иерархиясы төмендегідей:
– модульдер
– областы бейнелеу;
– процедура;
– код;
мәтіндік операторлар;
Процедураларды жалпы екі түрге бөліп қарастырады:
Ішкі бағдарлама процедурасы және функция-процедурасы
Ішкі бағдарлама процедурасы осы процедураға тікелей атпен қатынау
кезінде активті етеді, орындалу кезінде белгілі бір неше ғана операторлар
тізбегі орындалады. Оларды біз мысалға, форма касиетін беру кезінде немесе
белгілі бір тізімдерді толтыру кезінде қолданымыз.
Функция–процедурасын орындау кезінде кейбір мәндер қайтарады оларды
кейбір есептеулерде айнымалы ретінде қолдануға болады Модульге кез–келген
көлемдерді қолдануға болады.
2.3 Процедуралар
Процедура VBA тіліндегі белгілі бір әрекеттер орындайтын операторлар
жиынтығы деуге болады. Мысалға Click қасиетіне Найти түймешесінің мәні
байланыстырған процедура мысалы көрсетілген:
Private Sub Command6_Click ( )
On Error GoTo Err_Command6_Click
Screen.PreviosControl.SetFocus
DoCmd.DoMenuItem acFormBar, acEditMenu, 10, , acMenuVer70
Exit Command6_Click:
Exit Sub
Err_Command6_Click:
MsgBox Err.Descrition
Resume Exit_Command6_Click
End Sub
Аталмыш мәселелерге қатынау үшін, операторларды белгілеу үшін кілт
сөзін қолданады ол кілт сөзі Function деген сөз
Теория жағынан алып қарайтын болсақ процедураны кез–келген модульден
алып іске косуға болады. Ал функцияны белгілі бір объектілерден және
формаларды шақыруға болады. Қолдану кезінде ең көп қолданатын процедура
Public процедурасы болып саналады.
4. Шартты көшу операторлары бар функциялар
If – then және If then else шартты көшу операторы.
Шартты көшу операторын қарастырмас бұрын функция мысалын алып
қарастырайық қолданушы функциясы.
Function G(y)
If y=0 then G=(1+y^2)(1+y^4)^(12)_
Else G=2*y +sin(y)^2(2+y)
End function
Келесіде бір мысал берілген. Ол мысалда функцияның мәні 2 шарт арқылы
шығады.
2y+
Бағдарламаны жазуындағы _ белгі бағдарламаның келесі бетте бар
екендігін көрсетедеді. Жалпы жоғарда берілген функцияны есептеу шартын
оператор қолданып шығарғаны тиімді. Жалпы шартты оператор синтаксисі
төмендегідей болады:
If Шарт then оператор_1 else оператор_2
Оператордың оператор_1 шарттында орындалады, егер шарт шын болған
жағдайда, кері жағдайда оператор_2 орындалады.
Шарт- логикалық типтегі мән. Нәтижесі әр қашанда буль типте болады.
Мәні өте қарапайым және күрделі құрылымды болуы мүмкін. Қарапайым типтегі
операторлар жұмыс жасау кезінде төмендегі кестедегі көрсетілген операциялар
қолданылады.
Кесте 2
Операциялар Аты Амалдар Нәтижесі
= Теңдік A=B True, егер A тең B ға болса
Тең емес AB True егер А тең емес В-ға
болса
Кіші AB True егер А Кіші В дан болса
Үлкен AB True егер А үлкен В дан
болса
= Үлкен немесе A=B True Егер А үлкен немесе тең
тең В болса
= Кіші немесе A=B True егер А кіші немесе тең
тең В болса
Кесте 2 Логикалық операциялар тізімідері көрсетілген
Операциялар Аты Мәні А В Нәтижесі
Not Логикалық Not A False True
True True
AND Логикалық A And B True True True
True False False
True True False
True False False
Or Немесе A or B True True True
логикалық True False True
операцисы False True True
False False False
Шартты операторлар қолдану кезінде жоғарыдағы кестедегі көрсетілген
кез–келген операторды қолдануға болады. Оларды қолдану синтаксисі
төмендегідей болады:
IF Шартты оператор THEN оператор
IF ШАРТ THEN
Операторлар_блогы
End if
Then шартты операторынан кейін бір неше операторлар қосуға болады, ол
үшін барлық операторлар орындалып тұру қажет және де шарт бойынша барлығы
шын болу қажет. Бұл жағдайда олардың барлығы бір жолда орналысып және қос
нүктемен бөлінген болу қажет, мысалы:
If A10 then A=A+1: B=B+A : C=C+B
Бағдарламада шартты операторда бірнеше шартта тексерледі бұл жағдайда
оның түрі төмендегідей болады:
If Шарт_1 Then
Блок_Операторлар_1
elseIf Шарт_2 Then
Блок_операторлары
End if
Берілген шартты операторында Блок_Операторы_I орындалады, егерде
Шарт_i дұрыс болса кері жағдайда Блок_Операторлары орындалады. Енді шартты
операторды қолдануы және Exit Function операторларының қолдануын мысал
жүзінде алып қарастырамыз. Мысалы есептің синтаксисі төмендегідей болады:
Function Sq(x)
If x 0 Then Exit Function Else Sq = ^ (12)
End function
If-Then шарты көшу операторын есептеуде қолдану.
VBA мысалдар қарастырайық, мысалда комиссионыды есептерді есептеу
ережелері төмендегідей:
– Егер 100000 тенгеден төмен емес товар сатылған болса оның
комиссионын товардын бағасынын 2 пайызы деп алып карастыруға болады.
– Егер товар 1000000 тенгеден төмен бағада сатылған болса онда оның
коммиссионы есебі товар бағасының 1% құрайды.
– Егер фирмада жұмыс жасауыңда 5 жылдық тәжирбиелі болсаң онда жалпы
жалақына 0,5 % сатылған товардан косымша қосып береді.
– Біріншіде қолданушы функциасын құрастыру:
Function Премия(стаж, продажа)
if стаж=5 And продажа =1000000 then Премия=0,025*продажа
if стаж 5 And продажа =1000000 then Премия=0,02*продажа
if стаж=5 And продажа =1000000 then Премия=0,015*продажа
if стаж 5 And продажа =1000000 then Премия=0,01*продажа
end function.
2.5 VBA объектілері әдістері және олардың қасиеттері
VBA түсінік негізінде объектілер жатады. Объект дегеніміз сол
бағдарламаны басқаратын құрал ретінде қарастыруға болады. Әр объект өз
қасиетімен және сипаттамасымен ерекшеленеді. Мысалға бағдарлама орныдалу
барсында диологтық терезені көренбейтіндей етуге болады, оны былай жасау
үшін қасеттер терезесіндегі Visible қасиеттіне тікелей байланысты болады.
Объектінің басқа бір мысалы реттінде әріптердің шрифтлерін алуға болады.
Объектінің қасиетін өзгерумен қатар оның сипаттамасын да өзгертуге
болады.
Объектілерде қолдануға арналған әдістер тізімі. Әдістер
түсінігінде объектілерге жасалатын амалдар жататындығын ұмытуға болмайды.
Мысалы диологтық терезені экранға көрсету үшін Show және Hide әдістерін
қолданымыз. Объект дегеніміз бағдарлама құруға арналған негізгі құрал
деуге болады. VBA да өзінің құрылымдық объектілері бар оларды атап өтсек
төмендегідей болады:
range Ұяшықтар диапазоны
Sheet- Ұяшықтар
WorkSheet Жұмыс қітабы
DialogSheet Диалогтық терезе
Келесі кезекте кейбір негізгі объектілеріне жеке жеке тоқтала
кетейік әр объект өзінің қасиеттер бойынша ерекшеленеді олардың
кейбіреулерін көптеген экономика–финанстық есептерге қолданысын табуда.
2.6 Worksheet объектісі
Worksheet объектісімен жұмыс жасау негіз ретінде олардың қасиетін
қолданамыз. Осындай тұрақты қолданатын қасиеттің бірі Name (Ат) қасиеті.
Name қасиеті жұмыс бетіндегі аралыққа екі рет шерткенмен және жаңа ат
енгізгенмен тең. Белсенді бетке жаңа Бюджет атын беру үшін
ActiveSheet.Name=“Бюджет” кодын қолданамыз.
Мысалға барлық жұмыс бетін форматтау қажет болса онда Cells (ұяшық)
қасиетін қолданамыз. Төменде барлық ұяшықтарға шрифт беру мысалы
көрсетілген.
Worksheets(“Лист1”).Cells.Font.Name =“Arial”
Worksheet обьектісімен жұмыс жасау кезінде тұрақты келесі әдістер
қолданылады:
– Activate – жұмыс бетін белсенді етеді;
– CheckSpelling – берілген беттің орфографиясын тексеруге қолданамыз;
– Delete – жұмыс кітабынан жұмыс бетін өшіреді.
2.7 Range объектісі және оның қасиеттері
Кез–келген объектіні үйрену дегеніміз олардың әдіс және қасиеттерін
тани білу деген сөз. Range объектісінің ішінде келесі қасиеттерді айрықша
алып көрейік:
– Address (Адрес) – ағындағы диапазон жағдайын қайтарады.
– Count (Санау) – диапазондағы ұяшықтар санын қайтарады.
– Formula (Формула) – бейнеленіп отырған ұяшықтағы мәнді есептеп оның
формуласын қайтарады.
– Offset (Орын ауыстыру) – келесі диапазонға қатысты мәнін мөлшерін
қайтарады.
– Resize (Өлшемнің өзгеру) – белсенді етілген диапазонды өзгертуге
мүмкіндік жасайды.
– Value (Мән) – диапазон құрайтын ұяшықтар мәнін қайтарады.
Range объектісінің әдістері
Range объектісі көптеген қасиетттері бар, олардың ішінде ең көп
қолдана алатынымыз төмендегідей:
– Activate (белсендендіреді) – диапазонды белсенді етеді.
– Clear (тазалау) – диапазон ұяшығындағы мәнді қайтарады.
– Copy (көшіру) – ауыстыру буферіне диапазондағы мәнді көшіреді.
– Cut (қию) – ауыстыру буферіне диапазондағы мәнді орналастырады.
– PasteSpecial (арнайы қою) – ауыстыру буферіне диапазондағы мәнді
әртүрлі мәндерді қолдану арқылы қояды.
– Select (айырып алу) – диапазонды белсенді етеді.
With операторын қолдану:
With операторы көп қасиет немесе үлкен көлемдегі әдістерді бір
объекті үшін орындауға мүмкіндік жасайды.
With операторы келесі синтаксис арқылы жазылды:
With объекті
[операторлар]
End with
For Each опреторы
For Each операторы With операторымен бірдей міндет атқарады, бірақта
бірнеше объект үшін.
For Each операторын массивтерге қолдануға болады.
For Each операторының синтаксисі келесі:
For Each элемент In группа
[Операторлар]
[Exit For]
[Операторлар]
Next
2.8 VBA–дағы экрандық формалар
Бағдарламаға экрандық форма орналастыру:
Термин Экрандық форма–әртүрлі тағайындалу түрі бар терезе және
қолданушының көмегімен құрылады. Олар басқару элементтерінен тұрады,
басқару элементін қолдануда басқа қолданушымен ақпарат алмасуға мүмкіндік
жасайды.
Экрандық форма қасиеті:
Экрандық формамен жұмыс жасамас бұрын оның мәнін қасиеттерін орнату
қажет. Excel–де форма құру кезінде оған UserForm1–ге ұқсас ат меншіктеп
беріледі. Форма бірнеше түрлі болуы мүмкін UserForm1, UserForm2, UserForm3
және т.с.с
Формаға Name қасиетін бергеннен кейін Caption қасиетіне қайткен күнде
ат берілуі қажет.
Экрандық форманың орындалуы:
Экрандық формаға ешқандай код жазбай–ақ орындауға болады.
Басқару элементтерін экранға қоюмен формаға қою екеуі арасында ешбір
айырмашылық жоқ, екеуі де бір–біріне ұқсас.
Экрандық форманы инициализациялау мәні:
Экрандық форманы жүктеу кезінде қандай болмасын бір алдын ала көз
алдымызға елестете білу қажет.
Егер алғашқы форма көркем таза көрінсе және уақыт енгізу қажеттілігі
туады деген сияқты мәселе көп. Ол үшін біз ал дегенде жүктеу бетін
жасауымыз керек. Бұл процедурада код болу керек, код бойынша элементтер
үшін қажет мәндерді белгілеу үшін қолданылады. Жалпы экрандық форманың
автоматтандыру қолданушыға қолайлы жағдай жасау деп айтуға болады.
2.9 Бағдарламаны автоматтандыру.
Excel программасының барлық мүмкіндіктері бойынша әртүрлі
құбылыстарды жолдауға және әмбебап программа түрлерін жасап, сол арқылы
өзгеде нұсқаларды салыстырады. Мысалы, Excel программасында мәтіндік
құжаттарды құрастырады. Сондықтан Excel программасына енбей ешқашанда
барлық функциональды қаражаттарды Microsoft Office нұсқасында толық алып
қарастырады. Бұл зертханалық жұмыста Excel–дің өзгеде нұсқаларының
көмегімен VBA код арқылы басқару мүмкіндігін талқылаймыз. Бұл уақытты
келесі сұрақтарды алып қараймыз.
– Автоматтандыру мүкіндігі
– Негізгі автоматтандыру
– Кітапханадағы өзгеде объектілер нұсқасы бойынша сілтеме құру
– Excel программасында Microsoft Word бойынша.
Автоматтандыру дегеніміз не?
Автоматтандыру дегеніміз–OLE автоматтандырудың анықталынған түрі
кез–келген функциональды ортаны қамтамасыз ететін Windows нұсқасындағы
өзгеде нұсқалардың орташа программалық кодын өзіне енгізетін технология.
Басқаша айтсақ автоматтандыру өзгеде ортадағы бір нұсқалар бойынша басқару
үрдісін айтамыз өзгеде нұсқаларды пайдалану көзі жаңа ортада және
инструменттер шақырту нұсқаларының мүмкіндігін молайтады. Себебі VBA
процедурасы әрқашанда тізімдерді қажет етеді. Мысалы, Музыкалық негіздерді
ұйымдастыру, Excel кітапшасында жұмысшылардың тізімдерін білдіреді.
Сондықтан автоматтандыруды пайдалану автоматтандыру технологиясын қолдану
нұсқаларын пайдалану мүмкіндігін береді көбінесе Windows нәтижесінде жұмыс
жасайды. Сол арқылы автоматтандыруды толық қарайды. Бұл олар жүйеде ашық
және айқын коллекциялардың объектілер қасиеттерінің тәсілдеріне әсер етеді
және ұйымдастыру шараларын қамтамасыз етеді. Ашық объектілерді пайдалану
мүмкіндігі бұл дегеніміз нұсқаны ортада пайдалану мүмкіндігінің ең үздік
түрі.
2. ОФИСТІК ОРТАДА БАҒДАРЛАМАЛАР ЖАСАУ
Офис ортасында жаңа бағдарлама құру дегенім түгелдей бағдарламаны
құру емес тек құжат негізінде жасалған қосымша құру мағанасын ... жалғасы
МАТЕМАТИКА, ФИЗИКА, ТЕХНИКА ЖӘНЕ АҚПАРАТТЫҚ
ТЕХНОЛОГИЯЛАР ФАКУЛЬТЕТІ
Математикалық модельдеу және
компьютерлік технологиялар кафедрасы
ДИПЛОМДЫҚ ЖҰМЫС
Тақырыбы: ҚОЛДАНБАЛЫ БАҒДАРЛАМАР ОРТАСЫНДА VBA ЭЛЕМЕНТТЕРІН ҚОЛДАНУ
КІРІСПЕ
VBA – мен ТАНЫСУ
ҚАРАПАЙЫМ ФУНКЦИАЛАР ЖӘНЕ ПРОЦЕДУРАЛАР
Айнымаллар және тұрақтылар
Модульдер және процедуралар
Процедуралар
Шартты көшу операторлары бар функциялар
VBA объектілері әдістері және олардың қасиеттері
Worksheet объектісі
Range объектісінің әдістері
VBA–дағы экрандық формалар
Бағдарламаны автоматтандыру
ОФИСТІК ОРТАДА БАҒДАРЛАМАЛАР ЖАСАУ
Access қосымшаларында VBA–ны қолдану мүмкіндіктері
Қосымша меню түрлері
Сервер нұсқасын кітапханалық объектілері
Кітапханадағы объектіні көру
Сервер нұсқасының экземплярын құру
Microsoft Word объектілерін пайдалану
VBA ортасында VB бизнес жобаларын интеграциялау
ҚОРТЫНДЫ
ӘДЕБИЕТТЕР ТІЗІМІ
ҚОСЫМША А
1 VBA-МЕН ТАНЫСУ
Бұл бағдарламамен Excel тәжірибелі қолданушы түріндегідей сенімді
және нақты жұмыс істеуге болады. Excel–де жұмысты автоматизациялау
дәрежесін толық қолдануға болады.
Егер сіз бұрын ешқашан бағдарламаламаған болсаңыз да онда VBA–ның
көмегімен есептер шешімдерін меншіктеп оңай автоматизациялай аласыз.
Бүгінгі таңда қосымшаларды автоматизациялау үшінгі бағдарламалау тілдерін
қолдану және үйренудегі қарапайым ұсыныстардың бірі болып табылады.
Visual Basic for applications дегеніміз не? 1990-шы жылдардың басына
дейін қосымшаларды автоматизациялау идеасы үлкен толғаныс тудырады және
мамандардың өзіне де оның реализациясы қиын іс–әрекет болып жетті.
Атоматизацияға жататын әрбір қосымша үшін автоматизациялауды іске асыра
алатын өз бағдарламалау тілін қайткен күнде де үйрену керек болды. Мысалы,
Excel–ді автоматизациялау үшін Excel макростар тілі қолданылады. Microsoft
Word–ты автоматизациялау үшін WordBasic тілі т.б. Microsoft фирмасы әрбір
қолданушыларға өзінің автоматизациялау тілін эффективті түрде ұсынды. Бұл
барлық қосымшаларға да бағдарламалау тіліне де жуық келетін VBA тілі.
Visual Basic for Applications (VBA), Visual Basic қосымшасының
ыңғайлы тілі болып саналады. Мұны қосымша ретінде бағытталған VB версиясы
деп санауға болады.
Сонымен қатар VBA–ның Visual Basic–тен айырмашылығын қарастыра кеткен
жөн.
– Visual Basic тілі өзіндік қосымшалардың аяқталғанын құру үшін жұмыс
істеу, VBA ағымдағы қосымшаларды автоматизациялау үшін қолданылады.
– Visual Basic тек ғана жұмыс істеу ортасында қолданылады, VBA
қосымшалар ортасына қолданылады.
– Visual Basic–те құрылған қосымшаларды толықтыру үшін қолданушыға
Visual Basic тілі өзінде байланыс түсіп тұруы міндетті емес, VBA қосымшаның
орындалуы өзі ұйымдасқан “аталық” қосымшаға қатынауды талап етеді (мысалы,
Excel).
Visual Basic және VBA жазылу ерекшеліктеріне қарамастан тілдер
құрылымы жағынан бір–біріне өте жуық. Егер де сіз Visual Basic–пен таныс
болсаңыз VBA–ді оңай меңгере аласыз. Нақты және кері түйіндеуі:
VBA–ны үйренгеннен кейін сіз Visual Basic–ке негізгі болатын
фундаментке ие боласыз. Бұдан басқа VBA–ны үйренгеннен кейін, Excelдегі
мысалдар мен есептеулерді шешкенде сіз VBA–ны Word, Access, Outlook, Fox
Pro және PowerPoint бағдарламаларында қолдану үшін бір шама білім игеріп
қаласыз.
Техникалық тілмен айтар болсақ бағдарламалаудың бұл тілі қосымшаны
автоматизациялауда қолданушы есебін құру, процедуралар мен процестерді
қолдану үшін арналған.
Макрос – Excel–де орындауға болатын және тек өзіне ғана тән атпен
сақталған қолданушы жазған командалар мен әрекеттер тізбегі.
Excel–де макростар жазуда MacroRecorder деп аталатын арнайы программа
қолданылады.
MacroRecorder – бұл VBA прогаммалау тілінде макрос құратын арнаулы
транслиятор. Бұл транслиятор макрос жазу басталғаннан кейінгі қолданушының
әрбір әрекетін VBA тіліне аударып отырады және бұл макрос жазу тоқталғанға
дейін жүргізіледі.
Макростарды Windows–тың Word, Excel, PoverPoint және т.б
қосымшаларында құруға болады. VBA Windows ортасында кездесетін көптеген
қолданбалы есептерді шешуге арналған программалау тілдерінің бірі. Бұл
программалау тілінде қазіргі кезде кең тараған визуалдық программалау
технологиясы қолданылады, яғни қосымша программалардағы жұмыстық беттер
экранда тұратын және басқарылатын компаненттерден құралады, сондай–ақ,
құрылып жатқан программа модулінің мәтіні арнаулы MacroRecorder көмегімен
автоматты түрде жазылып отырады.
Макросты жазуды бастамас бұрын макроста орындалатын әрекеттердің
барлығын бірінші рет қайталап орындап, нәтижесін көріп тиянақтап алған
дұрыс болады. Макростың VBA–дағы программа модулінің мәтінін Visual Basic
редакторында қарауға және өзгертуге болады. VBA–дағы программа бір
қарағанда үлкен болып көрінгенімен ол қарапайым және түсінікті.
2 ҚАРАПАЙЫМ ФУНКЦИАЛАР ЖӘНЕ ПРОЦЕДУРАЛАР
2.1 Айнымаллар және тұрақтылар
VBA барлық айнымалылардың барлық типтері болады. Типтер айнымаллар
қандай мән алатындығын көрсетеді. Мысалға, айнымалы бүтін сандық, жолдық,
уақыттық және т.б тип болу мүмкін. Барлық базалық типтер төмендегі кестеде
көрсетілген.
Кесте 1
Берілгендер типі Жадыдағы Диапазоны
алатын орны
Логикалық (Boolean) True false
Integer 2 -32768-32768
Long 4 -2147483648-2147483647
Single 4 1.401298e-45 3.402823e38
Double 8 4.94065645841247e-324
1.797693e308
Date 8 1 айдың 100 жылынаң 31
желтоқсанға дейін
Object 4 Кез–келген анықталған объект
String 10+жол 0 дан 2*109
ұзындығы
Currency 8 -922337203685477.5808 ден
922337203685477,5807 ға дейн
Variant Беріліп отырған айнымалыға байланысты болады.
Егер де айнымалының типі берілмеген болса мұндай жағдайда, жоғарыда
көрсетілген Variant типін қолданады. Бұл типтегі айнымаллар барлық
типтегілерді сақтауы мүмкін. Басқаша айтқанда айнымалының типі соңғы
меншіктелген мәніне байланысты болғандықтан. Сондықтан да Variant типі ең
қолайлы типтердің бірі болып саналады. Бірақта әрбір айнымалының өзіне
сәйкес тип меншіктеуі функциялардың жылдам жүктелуіне пайдалы болады.
VBA бағдарламасында айнымалыларды меншіктеу кезінде келесі
конструкцияны қолдануға болады:
Dim Айнымалы_аты As Айнымалы_типі
Айнымалыны меншіктеу келесі түрде де болуы мүмкін:
Dim A, As Integer
Dim C, D As Integer, E As Single
Жалпы бағдарламада жолдық немесе мәтіндік типтерге қолданатын
(string) мүмкін болатын ұзындығы бар массивтер және символдар болуы мүмкін.
Бірақта мәтіндік айнымалылары фиксерленген ұзындығы бар айнымалыларыда
анықталған болуы мүмкін. Келесі мысалда 25 символдан туратың массив
жарияланған.
Dim S String*25
Мұндай жағдайда s айнымалысына 25 символдан туратын жол меншіктейтін
болсақ онда айнымалы мәні қысқартылады.
Бұл бағдарламалау тілінде басқа бағдарламалау тілдеріндегі сияқты
массивте жеке өзін жариялап қолдануға болады. Мысалы, төменде
көрсетілгендей:
Dim B(3,3) As Single
Dim A (1 to 12) As Integer
Мысалда бірінші жол екі өлшемді 3х3 (матрица) массивті жарияланған.
Екінші жолы бір өлшемді (вектор) массив, массив 12 бүтін санан турады,
массивтің 1 элементі А(0) тең, ал соңғы элементі А(11) тең. Мұндай жағдайда
0 саны базалық индекс деп аталады.
Базалық индекс мәнін өзгертуге болады ол үшін модульдік беттегі
бағдарлама жазып отырған беттің басына Option Base1 жазу қажет. Осы мәтінен
кейін массив элементтері 0 басталып санайтын болады. Индекс өзгертудің енді
екінші амалы To кілт сөзін массив жариялау барсында қолдану қажет. Массив
бағдарламада әрбір элементімен анықталады, Мысалы: Dim b(1 to 2, 1 to 2) As
Single
B(1,1)=2
B(1,2)=4
B(2,1)=1
B(1,2)=6
Бір өлшемді массивті анықтаудың ең оңай жолы Array функциясының
көмегімен анықтау болып табылады. Шығуға тиіс элементтер тізімі үтірлермен
бөлінген және айнымалыларға Variant типін меншіктеген. Мысалы:
Dim A As Variant
A=Array (10,20,30)
B=A(2)
Кейбір жағдайда бағдарлма орындалу барсында массив өлшемін өзгерту
қажеттігі туындайды. Мұндай жағдайда массивтерді динамиқалық айнымалы
ретінде жариялайды. Динамикалық массив жариялау кезінде массив өлшемін
енгізу қажет емес. Мысалы:
Dim R() Single
Кейін бағдарлама орындалу барысында массивтің қажет болатын өлшемін
есептеп шығару қажет болады, оны кейбір айнымалыларға меншіктейміз, мысалы,
n, m және оның динамикалық өлшемін ReDim операторының көмегімен беру қажет.
ReDim R(n, n)
Функция және процедуралардың параметрлері болып саналатын
айнымалыларды бейнелеу барсында, Dim төмен түседі. Оны көптеген мысалдар
жасау барсында байқауға болады. Егер Х және у байланысты функцияларға
байланысты есептеулер жүргізу қажет болса оны төмендегі көрсетілгендей етіп
бағдарламасын құруға болады. Мысалы:
Function Y(X As Double) As Double
Y=Sin(Application. Pi ()*x ) * Exp(-2 * x)
End Function
Мұндағы “=“ белгісі меншіктеу операторы ретінде қолданылады. Жалпы
жоғарыдағы бағдарлама орындалу нәтижесінде төмендегі жауапты алуға болады.
X=2
X=X+2
Айнымалы Х–ке 4 мәнін меншіктеуді.
Әр қашанда еске алатын бір жағдай бағдарлама жасау барсында күнділкті
қолданып жүрген турақты мәндерді қолдану қажет. Мысалы, сандар, жолдар,
дата және т.б. Бұл жағдайда мұның орнына VBA да келесі берілген
конструкциялардың қай тиімдісін қолдану қажет. Конструкциясы төмендегідей.
Const Имя_Постоянной Турақты_аты = мәні
Const турақты _аты As турақты_ типі = мәні
2.2 Модульдер және процедуралар
VBA тілінде жазылған бағдарламаның құрылымды бөлігінің бірі модуль
функция және процедуралардың жиыны, барлығын біріктірген бағдарламаның
негізгі бір бөлігі. Бағдарламада модульдердің келесі екі түрі белгілі:
– Стандартты модульдер,
– Форма модульдері.
Әрбір модуль областы бейнелеу аймағының және бір немесе бірнеше
процедурадан туруы мүмкін. Процедура дегеніміз операторлар тізбегінен
турады, оларды бағдарламалық кодтар деп атаймыз. Модульге кіретін
процедуралар областы бейнелеу аймағына біріктірледі. Модульде берілген және
де объектілер суреттеледі, олардың барлығы жалпылай модуль элементтері деп
атап өтуге болады. Жалпы көрсетілген объектілер иерархиясы төмендегідей:
– модульдер
– областы бейнелеу;
– процедура;
– код;
мәтіндік операторлар;
Процедураларды жалпы екі түрге бөліп қарастырады:
Ішкі бағдарлама процедурасы және функция-процедурасы
Ішкі бағдарлама процедурасы осы процедураға тікелей атпен қатынау
кезінде активті етеді, орындалу кезінде белгілі бір неше ғана операторлар
тізбегі орындалады. Оларды біз мысалға, форма касиетін беру кезінде немесе
белгілі бір тізімдерді толтыру кезінде қолданымыз.
Функция–процедурасын орындау кезінде кейбір мәндер қайтарады оларды
кейбір есептеулерде айнымалы ретінде қолдануға болады Модульге кез–келген
көлемдерді қолдануға болады.
2.3 Процедуралар
Процедура VBA тіліндегі белгілі бір әрекеттер орындайтын операторлар
жиынтығы деуге болады. Мысалға Click қасиетіне Найти түймешесінің мәні
байланыстырған процедура мысалы көрсетілген:
Private Sub Command6_Click ( )
On Error GoTo Err_Command6_Click
Screen.PreviosControl.SetFocus
DoCmd.DoMenuItem acFormBar, acEditMenu, 10, , acMenuVer70
Exit Command6_Click:
Exit Sub
Err_Command6_Click:
MsgBox Err.Descrition
Resume Exit_Command6_Click
End Sub
Аталмыш мәселелерге қатынау үшін, операторларды белгілеу үшін кілт
сөзін қолданады ол кілт сөзі Function деген сөз
Теория жағынан алып қарайтын болсақ процедураны кез–келген модульден
алып іске косуға болады. Ал функцияны белгілі бір объектілерден және
формаларды шақыруға болады. Қолдану кезінде ең көп қолданатын процедура
Public процедурасы болып саналады.
4. Шартты көшу операторлары бар функциялар
If – then және If then else шартты көшу операторы.
Шартты көшу операторын қарастырмас бұрын функция мысалын алып
қарастырайық қолданушы функциясы.
Function G(y)
If y=0 then G=(1+y^2)(1+y^4)^(12)_
Else G=2*y +sin(y)^2(2+y)
End function
Келесіде бір мысал берілген. Ол мысалда функцияның мәні 2 шарт арқылы
шығады.
2y+
Бағдарламаны жазуындағы _ белгі бағдарламаның келесі бетте бар
екендігін көрсетедеді. Жалпы жоғарда берілген функцияны есептеу шартын
оператор қолданып шығарғаны тиімді. Жалпы шартты оператор синтаксисі
төмендегідей болады:
If Шарт then оператор_1 else оператор_2
Оператордың оператор_1 шарттында орындалады, егер шарт шын болған
жағдайда, кері жағдайда оператор_2 орындалады.
Шарт- логикалық типтегі мән. Нәтижесі әр қашанда буль типте болады.
Мәні өте қарапайым және күрделі құрылымды болуы мүмкін. Қарапайым типтегі
операторлар жұмыс жасау кезінде төмендегі кестедегі көрсетілген операциялар
қолданылады.
Кесте 2
Операциялар Аты Амалдар Нәтижесі
= Теңдік A=B True, егер A тең B ға болса
Тең емес AB True егер А тең емес В-ға
болса
Кіші AB True егер А Кіші В дан болса
Үлкен AB True егер А үлкен В дан
болса
= Үлкен немесе A=B True Егер А үлкен немесе тең
тең В болса
= Кіші немесе A=B True егер А кіші немесе тең
тең В болса
Кесте 2 Логикалық операциялар тізімідері көрсетілген
Операциялар Аты Мәні А В Нәтижесі
Not Логикалық Not A False True
True True
AND Логикалық A And B True True True
True False False
True True False
True False False
Or Немесе A or B True True True
логикалық True False True
операцисы False True True
False False False
Шартты операторлар қолдану кезінде жоғарыдағы кестедегі көрсетілген
кез–келген операторды қолдануға болады. Оларды қолдану синтаксисі
төмендегідей болады:
IF Шартты оператор THEN оператор
IF ШАРТ THEN
Операторлар_блогы
End if
Then шартты операторынан кейін бір неше операторлар қосуға болады, ол
үшін барлық операторлар орындалып тұру қажет және де шарт бойынша барлығы
шын болу қажет. Бұл жағдайда олардың барлығы бір жолда орналысып және қос
нүктемен бөлінген болу қажет, мысалы:
If A10 then A=A+1: B=B+A : C=C+B
Бағдарламада шартты операторда бірнеше шартта тексерледі бұл жағдайда
оның түрі төмендегідей болады:
If Шарт_1 Then
Блок_Операторлар_1
elseIf Шарт_2 Then
Блок_операторлары
End if
Берілген шартты операторында Блок_Операторы_I орындалады, егерде
Шарт_i дұрыс болса кері жағдайда Блок_Операторлары орындалады. Енді шартты
операторды қолдануы және Exit Function операторларының қолдануын мысал
жүзінде алып қарастырамыз. Мысалы есептің синтаксисі төмендегідей болады:
Function Sq(x)
If x 0 Then Exit Function Else Sq = ^ (12)
End function
If-Then шарты көшу операторын есептеуде қолдану.
VBA мысалдар қарастырайық, мысалда комиссионыды есептерді есептеу
ережелері төмендегідей:
– Егер 100000 тенгеден төмен емес товар сатылған болса оның
комиссионын товардын бағасынын 2 пайызы деп алып карастыруға болады.
– Егер товар 1000000 тенгеден төмен бағада сатылған болса онда оның
коммиссионы есебі товар бағасының 1% құрайды.
– Егер фирмада жұмыс жасауыңда 5 жылдық тәжирбиелі болсаң онда жалпы
жалақына 0,5 % сатылған товардан косымша қосып береді.
– Біріншіде қолданушы функциасын құрастыру:
Function Премия(стаж, продажа)
if стаж=5 And продажа =1000000 then Премия=0,025*продажа
if стаж 5 And продажа =1000000 then Премия=0,02*продажа
if стаж=5 And продажа =1000000 then Премия=0,015*продажа
if стаж 5 And продажа =1000000 then Премия=0,01*продажа
end function.
2.5 VBA объектілері әдістері және олардың қасиеттері
VBA түсінік негізінде объектілер жатады. Объект дегеніміз сол
бағдарламаны басқаратын құрал ретінде қарастыруға болады. Әр объект өз
қасиетімен және сипаттамасымен ерекшеленеді. Мысалға бағдарлама орныдалу
барсында диологтық терезені көренбейтіндей етуге болады, оны былай жасау
үшін қасеттер терезесіндегі Visible қасиеттіне тікелей байланысты болады.
Объектінің басқа бір мысалы реттінде әріптердің шрифтлерін алуға болады.
Объектінің қасиетін өзгерумен қатар оның сипаттамасын да өзгертуге
болады.
Объектілерде қолдануға арналған әдістер тізімі. Әдістер
түсінігінде объектілерге жасалатын амалдар жататындығын ұмытуға болмайды.
Мысалы диологтық терезені экранға көрсету үшін Show және Hide әдістерін
қолданымыз. Объект дегеніміз бағдарлама құруға арналған негізгі құрал
деуге болады. VBA да өзінің құрылымдық объектілері бар оларды атап өтсек
төмендегідей болады:
range Ұяшықтар диапазоны
Sheet- Ұяшықтар
WorkSheet Жұмыс қітабы
DialogSheet Диалогтық терезе
Келесі кезекте кейбір негізгі объектілеріне жеке жеке тоқтала
кетейік әр объект өзінің қасиеттер бойынша ерекшеленеді олардың
кейбіреулерін көптеген экономика–финанстық есептерге қолданысын табуда.
2.6 Worksheet объектісі
Worksheet объектісімен жұмыс жасау негіз ретінде олардың қасиетін
қолданамыз. Осындай тұрақты қолданатын қасиеттің бірі Name (Ат) қасиеті.
Name қасиеті жұмыс бетіндегі аралыққа екі рет шерткенмен және жаңа ат
енгізгенмен тең. Белсенді бетке жаңа Бюджет атын беру үшін
ActiveSheet.Name=“Бюджет” кодын қолданамыз.
Мысалға барлық жұмыс бетін форматтау қажет болса онда Cells (ұяшық)
қасиетін қолданамыз. Төменде барлық ұяшықтарға шрифт беру мысалы
көрсетілген.
Worksheets(“Лист1”).Cells.Font.Name =“Arial”
Worksheet обьектісімен жұмыс жасау кезінде тұрақты келесі әдістер
қолданылады:
– Activate – жұмыс бетін белсенді етеді;
– CheckSpelling – берілген беттің орфографиясын тексеруге қолданамыз;
– Delete – жұмыс кітабынан жұмыс бетін өшіреді.
2.7 Range объектісі және оның қасиеттері
Кез–келген объектіні үйрену дегеніміз олардың әдіс және қасиеттерін
тани білу деген сөз. Range объектісінің ішінде келесі қасиеттерді айрықша
алып көрейік:
– Address (Адрес) – ағындағы диапазон жағдайын қайтарады.
– Count (Санау) – диапазондағы ұяшықтар санын қайтарады.
– Formula (Формула) – бейнеленіп отырған ұяшықтағы мәнді есептеп оның
формуласын қайтарады.
– Offset (Орын ауыстыру) – келесі диапазонға қатысты мәнін мөлшерін
қайтарады.
– Resize (Өлшемнің өзгеру) – белсенді етілген диапазонды өзгертуге
мүмкіндік жасайды.
– Value (Мән) – диапазон құрайтын ұяшықтар мәнін қайтарады.
Range объектісінің әдістері
Range объектісі көптеген қасиетттері бар, олардың ішінде ең көп
қолдана алатынымыз төмендегідей:
– Activate (белсендендіреді) – диапазонды белсенді етеді.
– Clear (тазалау) – диапазон ұяшығындағы мәнді қайтарады.
– Copy (көшіру) – ауыстыру буферіне диапазондағы мәнді көшіреді.
– Cut (қию) – ауыстыру буферіне диапазондағы мәнді орналастырады.
– PasteSpecial (арнайы қою) – ауыстыру буферіне диапазондағы мәнді
әртүрлі мәндерді қолдану арқылы қояды.
– Select (айырып алу) – диапазонды белсенді етеді.
With операторын қолдану:
With операторы көп қасиет немесе үлкен көлемдегі әдістерді бір
объекті үшін орындауға мүмкіндік жасайды.
With операторы келесі синтаксис арқылы жазылды:
With объекті
[операторлар]
End with
For Each опреторы
For Each операторы With операторымен бірдей міндет атқарады, бірақта
бірнеше объект үшін.
For Each операторын массивтерге қолдануға болады.
For Each операторының синтаксисі келесі:
For Each элемент In группа
[Операторлар]
[Exit For]
[Операторлар]
Next
2.8 VBA–дағы экрандық формалар
Бағдарламаға экрандық форма орналастыру:
Термин Экрандық форма–әртүрлі тағайындалу түрі бар терезе және
қолданушының көмегімен құрылады. Олар басқару элементтерінен тұрады,
басқару элементін қолдануда басқа қолданушымен ақпарат алмасуға мүмкіндік
жасайды.
Экрандық форма қасиеті:
Экрандық формамен жұмыс жасамас бұрын оның мәнін қасиеттерін орнату
қажет. Excel–де форма құру кезінде оған UserForm1–ге ұқсас ат меншіктеп
беріледі. Форма бірнеше түрлі болуы мүмкін UserForm1, UserForm2, UserForm3
және т.с.с
Формаға Name қасиетін бергеннен кейін Caption қасиетіне қайткен күнде
ат берілуі қажет.
Экрандық форманың орындалуы:
Экрандық формаға ешқандай код жазбай–ақ орындауға болады.
Басқару элементтерін экранға қоюмен формаға қою екеуі арасында ешбір
айырмашылық жоқ, екеуі де бір–біріне ұқсас.
Экрандық форманы инициализациялау мәні:
Экрандық форманы жүктеу кезінде қандай болмасын бір алдын ала көз
алдымызға елестете білу қажет.
Егер алғашқы форма көркем таза көрінсе және уақыт енгізу қажеттілігі
туады деген сияқты мәселе көп. Ол үшін біз ал дегенде жүктеу бетін
жасауымыз керек. Бұл процедурада код болу керек, код бойынша элементтер
үшін қажет мәндерді белгілеу үшін қолданылады. Жалпы экрандық форманың
автоматтандыру қолданушыға қолайлы жағдай жасау деп айтуға болады.
2.9 Бағдарламаны автоматтандыру.
Excel программасының барлық мүмкіндіктері бойынша әртүрлі
құбылыстарды жолдауға және әмбебап программа түрлерін жасап, сол арқылы
өзгеде нұсқаларды салыстырады. Мысалы, Excel программасында мәтіндік
құжаттарды құрастырады. Сондықтан Excel программасына енбей ешқашанда
барлық функциональды қаражаттарды Microsoft Office нұсқасында толық алып
қарастырады. Бұл зертханалық жұмыста Excel–дің өзгеде нұсқаларының
көмегімен VBA код арқылы басқару мүмкіндігін талқылаймыз. Бұл уақытты
келесі сұрақтарды алып қараймыз.
– Автоматтандыру мүкіндігі
– Негізгі автоматтандыру
– Кітапханадағы өзгеде объектілер нұсқасы бойынша сілтеме құру
– Excel программасында Microsoft Word бойынша.
Автоматтандыру дегеніміз не?
Автоматтандыру дегеніміз–OLE автоматтандырудың анықталынған түрі
кез–келген функциональды ортаны қамтамасыз ететін Windows нұсқасындағы
өзгеде нұсқалардың орташа программалық кодын өзіне енгізетін технология.
Басқаша айтсақ автоматтандыру өзгеде ортадағы бір нұсқалар бойынша басқару
үрдісін айтамыз өзгеде нұсқаларды пайдалану көзі жаңа ортада және
инструменттер шақырту нұсқаларының мүмкіндігін молайтады. Себебі VBA
процедурасы әрқашанда тізімдерді қажет етеді. Мысалы, Музыкалық негіздерді
ұйымдастыру, Excel кітапшасында жұмысшылардың тізімдерін білдіреді.
Сондықтан автоматтандыруды пайдалану автоматтандыру технологиясын қолдану
нұсқаларын пайдалану мүмкіндігін береді көбінесе Windows нәтижесінде жұмыс
жасайды. Сол арқылы автоматтандыруды толық қарайды. Бұл олар жүйеде ашық
және айқын коллекциялардың объектілер қасиеттерінің тәсілдеріне әсер етеді
және ұйымдастыру шараларын қамтамасыз етеді. Ашық объектілерді пайдалану
мүмкіндігі бұл дегеніміз нұсқаны ортада пайдалану мүмкіндігінің ең үздік
түрі.
2. ОФИСТІК ОРТАДА БАҒДАРЛАМАЛАР ЖАСАУ
Офис ортасында жаңа бағдарлама құру дегенім түгелдей бағдарламаны
құру емес тек құжат негізінде жасалған қосымша құру мағанасын ... жалғасы
Ұқсас жұмыстар
Пәндер
- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.
Ақпарат
Қосымша
Email: info@stud.kz