KompyuterlarDasturiy ta'minot

VBA Excel: namuna dasturlar. Excel Macros

Bir necha kishi mashhur Microsoft Excel mahsulot birinchi versiyasi 1985 yilda paydo bo'ldi. O'shandan beri u bir necha o'zgarishlar va butun dunyo bo'ylab millionlab foydalanuvchilar talabini ro'y berdi. Biroq, ko'p ish faqat, bu jadval bir oz qobiliyatiga ega bo'lgan va hatto ular Excel dasturlash qobiliyati uchun hayot oson qilish qanday bilmayman.

VBA nima

Excel dasturlash dastlab Microsoft eng mashhur elektron jadvali qurilgan Visual BASIC qo'llash uchun dasturlash tili orqali amalga oshiriladi.

uning qadr-qimmatiga ekspertlar taraqqiyot nisbiy sharoit yasadilar. amaliyot shuni ko'rsatadiki, VBA asoslarini, professional dasturlash mahoratini yo'q, hatto foydalanuvchilar o'zlashtirish mumkin. VBA uchun xususiyatlari ofis dastur muhit skript ijrosini o'z ichiga oladi.

dasturning ziyon turli versiyalari muvofiqligi bilan bog'liq muammolar bor. Ular dasturning VBA kodi emas, balki eski birida, mahsulot, yangi versiyada mavjud funktsional nazarda tutayapti, deb aslida tomonidan chaqiriladi. bir notanish yuzini o'zgartirish katta ziyon va kod haddan tashqari yuqori ochiqlik ham mavjud. Biroq, Microsoft Office, va IBM Lotus Symphony foydalanuvchilar, uni tasvirlash uchun shifrlash kirish kodi va parol ri amalga oshirish uchun imkon beradi.

Ob'ektlar, to'plamlar, xususiyatlari va usullari

Bu siz VBA muhitda ishlash uchun boryapmiz qilganlar tushunish kerak, bu tushunchalar bilan. Avvalo, siz ob'ekt nima tushunish kerak. Excel, bir lavha, bir kitob, va hujayra oralig'i bo'lib, bu harakat. Ushbu ob'ektlar maxsus ierarxiyasi bor, masalan, bir-biriga itoat qilinglar.

Ular orasida bosh Application, tegishli Excel dasturi o'zi. Ergashdi ish kitoblarini Ishchi varaqlar va KOffice. Misol uchun, hisobga ierarxiyasi olib, yo'l ishora kerak muayyan qog'ozga A1 xujayrasi murojaat qilish.

"To'plami," qayd ChartObjects berilgan Shu sinf ob'ektlari, bu guruh, konsepsiyasini bog'liq. Uning elementlarning ham elementlar hisoblanadi.

Keyingi narsa - xususiyatlari. Ular biron-bir ob'ekt zarur xususiyati bor. Misol uchun, intervalli uchun - bir qiymat yoki Formula hisoblanadi.

Usullari - siz istagan ko'rsatish uchun buyruq hisoblanadi. VBA kodini yozish paytida ularni ob'ekt nazaridan ajratilgan bo'lishi kerak. Misol uchun, juda tez-tez "Excel" foydalanish Hujayralar amri (1,1) o'cha dasturining qachon, keyinchalik namoyish etiladi. Bu koordinatalarini bilan xonasida tanlash uchun zarur bo'lgan, degan ma'noni anglatadi (1,1), masalan, A1.

Biroq, u tez-tez Selection.ClearContents ishlatiladi. Uning amalga oshirilishi tanlangan hujayraning mazmunini kliring bo'ladi.

boshlash uchun qanday

Avvalo, siz fayl yaratish va uni saqlash, ism tayinlash va so'l-ni yoqishingiz «Kitob Excel turini tanlang."

So'ngra, «Alt» asosiy va «F11» bir birlashmasidan foydalanish uchun etarli bo'lgan hokazo qo'llash, o'ting. Keyingi:

  • Oynaning yuqori qismida menyu satrida, keyingi Excel belgisiga belgini bosing;
  • Mudule buyrug'ini tanlab;
  • floppi bilan belgini bosish tutish;
  • , Aytaylik, bir kodi anahat yozish.

quyidagicha ko'rinadi:

Sub dasturi ()

"Bizning kodi

End Sub

liniyasi "Bizning kodi" bir xil rang (yashil) ta'kidlangan ekanligini unutmang. nima quyidagicha izoh ekanligini bildiradi kanop, boshida yetkazib bu tirnoq sababi.

Endi siz har qanday kod yozish va (misol dasturlari qarang. Va boshqalar) o'zlari uchun VBA Excel yangi vositasi yaratishingiz mumkin. Albatta, Visual Basic asoslari bilan tanish bo'lganlar, bu ancha oson bo'ladi. Agar juda tez qulay olish imkoniyatiga ega bo'lish uchun bo'lsangiz Biroq, hatto, yo'q, kim.

Excel Macros

Bu ism ortida Application tilida uchun Visual BASIC yozilgan dasturlarni maxfiy qilsangiz. Shunday qilib, Excel dasturlash - kerakli kodi uchun bir so'l yaratish hisoblanadi. Shu xususiyati bilan, Microsoft elektron jadval muayyan foydalanuvchi talablariga moslashish, o'z-o'zini rivojlantirmoqda. so'l yozish uchun modul yaratish uchun qanday bilan muomala qilib, u VBA Excel dasturida aniq misollar bilan davom mumkin. Bu eng asosiy kodlari bilan boshlash uchun eng yaxshi hisoblanadi.

O'RNAK 1

Vazifa: Bir hujayraning mazmunini qiymatini nusxa va keyin yana bir yozish beradigan dastur yozing.

Buning uchun:

  • yorlig'ini "View" ochish;
  • icon "so'l" harakat;
  • "Record Macro" uchun titrash;
  • ochilgan formasini to'ldiring.

soddaligi uchun, "Ibratli nomi" dagi "Makros1" tark va "klavishalar kaliti", masalan, HH (bu siz misol dastur «Ctrl + h» blits jamoasi bo'ladi ishlatish mumkin, degan ma'noni anglatadi), joylashtirgandan. Enter ni bosing.

Endi siz Ibratli yozish boshladi, deb, boshqa bir hujayraning mazmunini tashkil etadi. original belgisiga qaytish. "Record Macro" ustiga bosing. Bu harakat uygulamacıkları bajarilishini to'ldi.

Keyingi:

  • yana mag'lubiyatga »Macros" uchun harakat;
  • "1 Ibratli" ro'yxatida tanlangan;
  • "Ishga tushirish" tugmasini bosing (qisqa klavishlardan boshlangan Shu harakat boshlanadi «Ctrl + hh»).

Natijada, harakat Ibratli yozish paytida amalga qilingan.

Bu kodi qanday paydo bo'lganini ko'rish uchun mantiqiy. Buning uchun, orqa kanop "Macros" borib, "Enter" "Tahrirlash" yoki bosing. Natijada, ular VBA muhitda topadi. Aslida, kodi o'zi chiziqlar o'rtasidagi so'l Makros1 Fevral () va End Fevral joylashgan.

Nusxa ko'chirish bajarilgan bo'lsa, masalan, hujayra C1 Hujayraning A1 dan, kod satrlarni bir. tizmasi ( "C1") kabi qarash tanlang qiladi. tarjima, u "tizmasi (" C1 ") kabi ko'rinadi. tanlang", boshqacha aytganda, hujayra C1 VBA Excel o'tishni, qiladi.

kodi faol qismi ActiveSheet.Paste jamoasi tamomlaydi. Bu tanlangan hujayra C1 (bu holda, A1) hujayraning tanlangan mazmunini yozib anglatadi.

O'RNAK 2

VBA davrlarini Excel turli so'l yaratish yordam beradi.

VBA ko'chadan turli so'l yaratish yordam beradi. cos (x) - bir vazifasi y = x + x 3 + 3x 2 bor, deb taxmin. Siz uning grafikalar uchun, bir so'l yaratish istayman. Bu faqat VBA ko'chadan yordamida amalga oshirilishi mumkin.

argument vazifalarni boshlang'ich va yakuniy qiymati uchun x1 = 0 va X2 = 10 boring. Bundan tashqari, u sobit joriy etish zarur - bosqich uchun qiymati dalillar va peshtaxta uchun bir boshlang'ich qiymati o'zgartiradi.

VBA Excel makroları Barcha misollar, yuqorida o'rtaga qo'yilgan bir xil amaliyoti yordamida yaratilgan. Ushbu holda, kodi kabi ko'rinadi:

Sub dasturi ()

x1 = 1

x2 = 10

sevilmasligi = 0,1

i = 1

x1

y = x1 + x1 ^ 2 + 3 * x1 ^ 3 - cos (x1)

Hujayralar (i, 1) .Value = x1 (x1 qiymati koordinatalarini (i bilan xotirasida yozilgan, 1))

Hujayralar (i, 2) .Value = y (y qiymati koordinatalarini (bilan hujayra yozilgan i, 2))

i = i 1 (amaliy sonini) +;

x1 = x1 + (argument qadam hajmiga o'zgaradi) sevilmasligi;

Loop

End Sub.

y - bu ishga tushirish, so'l natijasida "Excel" ikki x qiymatlari qayd birinchi bo'lgan ustunlar, va ikkinchi olish.

So'ngra "Excel" uchun, ular bo'yicha standarti qurish ega Xronologiya.

O'RNAK 3

dizayn uchun ishlatiladigan bo'lsa allaqachon tushgan Do bilan birga, VBA Excel 2010 yilda ko'chadan amalga oshirish, shuningdek, boshqa versiyalarida uchun.

Ustunni yaratadi dasturini ko'rib chiqaylik. Har bir hujayra ichida u satr raqami mos maydonlar qayd qilinadi. dizayn foydalanish uchun peshtaxta foydalanish holda, juda ham qisqa, uni yozib imkonini beradi.

Birinchi u yuqorida aytilganidek, bir so'l yaratish zarur. Keyingi, kodni o'zi yozish. Biz 10 hujayralari uchun qadriyatlar manfaatdor, deb ishonaman. quyidagicha kodi hisoblanadi.

i 10 Keyingi 1 = uchun

buyruq sifatida, "inson" tilda uzatiladi "birining bosqichlarida 10, 1-dan takrorladi."

vazifa kvadratchalar bilan ustunini olish bo'lsa, masalan, 1 va 11 orasidagi barcha g'alati natural son, biz yozish:

i = 1, 10, 1-qadamda Keyingi uchun.

Bu yerda, bosqichma - qadam. Bu holda, u ikki teng. Sukut bo'yicha ko'chadan so'zning yo'qligi bir qadamda, degan ma'noni anglatadi.

natijalar Uyali raqami (i, 1) saqlangan bo'lishi kerak. i avtomatik ravishda o'sadi va satr raqami bo'ladi qadam So'ngra har safar qiymati ortishi bilan aylanishiga boshlanadi. Shunday qilib, kod optimallashtirish mavjud bo'ladi.

Umuman, kodi kabi qarash edi:

Sub dasturi ()

i = 1 uchun 10 qadam 1 (1 10 uchun = faqat men uchun yozilgan bo'lishi mumkin)

Hujayralar (i, 1) .Value = i ^ 2 (ya'ni, kvadrat qiymati hujayra ichiga yoziladi (i, 1) i)

Keyingi (a ma'noda counter vositalari va boshqa davr boshlanishidan rolini o'ynaydi)

End Sub.

yozuv va yugurish makrolar (. Yuqoridagi ko'rsatmalarga qarang), shu jumladan, to'g'ri qilinsa, u berilgan hajmi (10 hujayralari iborat bu holda) ustunini olingan bo'ladi har vaqt deb ataladi.

O'RNAK 4

Kundalik hayotda, juda tez-tez u ba'zi sharoitlarda qarab u yoki bu qarorni qabul qilish uchun zarur. VBA Excel ularning holda, albatta, mumkin emas. algoritm yanada Kurs o'rniga tanlanadi dasturlari misollar END bo'lsa ... Keyin ... avval, oldindan belgilangan (qiyin holatlar uchun) Keyin bo'lsa, eng ko'p ishlatiladigan dizayn ... bo'lsa.

Xususan misolini ko'rib chiqaylik. Agar qayd etildi koordinatalarini bilan hujayra (1,1) uchun "Excel" uchun bir so'l yaratish uchun xohlagan deylik:

1 argument ijobiy bo'lsa;

0 argument nol bo'lsa;

1 argument salbiy, agar.

"Excel" uchun bunday so'l yaratish "issiq" tugmachalari Alt va F11 foydalanish orqali, standart tarzda boshlanadi. Bundan tashqari quyidagi kodni yozib:

Sub dasturi ()

x = kameralar (1, 1) .Value (Ushbu buyruq hujayra mazmunan x koordinata qiymatini (1 uradi, 1))

Keyin x> 0 kameralar (1, 1) .Value = 1 bo'lsa,

Keyin x = 0 kameralar (1, 1) .Value = 0 bo'lsa,

Keyin x <0 kameralar (1, 1) .Value = -1 bo'lsa

End Sub.

Bu argument uchun kerakli qiymatini bir so'l ishlatish va "Excel" olish uchun bo'lib qolmoqda.

VBA vazifalari

Agar sezdim mumkin kabi, eng mashhur dastur Microsoft elektron jadval qo'llash juda qiyin emas. Ayniqsa, agar siz VBA vazifalari qanday foydalanishni o'rganish. Jami, bu dasturlash tili "Excel" va Word, taxminan 160 vazifalari dasturlar yozish uchun maxsus yaratilgan. Ular bir necha yirik guruhga bo'lish mumkin. Ular:

  • Matematik vazifalari. kosinus qiymati dalilga ularni qo'llash, tabiiy logaritmasını, va shuning uchun butun qismini olinadi.
  • Moliyaviy vazifalari. Tufayli Excel o'z mavjudligi va ulardan foydalanish dasturlash uchun, siz buxgalteriya hisobi va moliyaviy hisob-kitoblar uchun samarali vositalarni olishingiz mumkin.
  • Array ishlash vazifalari. Ushbu qator, IsArray o'z ichiga oladi; LBound; UBound.
  • VBA Excel liniyasi uchun faoliyat. Bu juda katta guruh bo'ladi. Bu, masalan, Space vazifasi Ansi kod uchun butun son argument yoki Asc transfer ramzlari teng bo'shliqlar bir qator, bir mag'lubiyatga yaratish, o'z ichiga oladi. Ularning barchasi keng tarqalgan va bu jadvallar bilan ishlash yanada qulay ilovalarni yaratish uchun "Excel" satrlari bilan ishlash imkonini beradi.
  • Ma'lumotlarni turi aylantirish vazifalari. Misol uchun, cvar VARIANT ma'lumotlar turi, uni aylantirish, Expression hujjatingizni qaytadi.
  • Sana vazifalari. Ular juda "Excel" standart xususiyatlarini kengaytirish. Shunday qilib, WeekdayName funktsiyasi uning soniga hafta kuni (to'liq yoki qisman) nomini qaytaradi. Hatto ko'proq foydali Taymer hisoblanadi. U kunda bir lahza uchun yarim tunda buyon o'tgan soniya sonini beradi.
  • turli soni tizimlarida bir soni hujjatingizni aylantirish funktsiyasi. Misol uchun, Oct soni sakkiz qirrali taqdimnomasiga chiqaradi.
  • formatlash vazifalari. Ulardan eng muhim Format hisoblanadi. Bu formatda tavsifi berilgan ko'rsatmalarga muvofiq formatlangan, bir so'z bilan varianti qaytadi.
  • va hokazolar.

Bu vazifalar va ularni qo'llash xossalarini o`rganish sezilarli "Excel" ko'lamini kengaytiradi.

O'RNAK 5

murakkabroq muammolarni hal qilishga harakat qilaylik. Misol uchun:

Dan qog'oz hujjat korxona hisobot xarajatlarini haqiqiy darajasi. talab qiladi:

  • elektron jadval "Excel" tomonidan uning namuna qismini ishlab chiqish;
  • xom ma'lumotlar zarur hisob-kitoblarni amalga oshirish va tegishli hujayraning andoza to'ldirish, uni to'ldirish uchun so'raydi, bir VBA dasturini qilish.

Quyidagi echimlar biri ko'rib chiqaylik.

bir shablonini yaratish

Barcha harakatlar Excel standart lavha amalga oshiriladi. ma'lumotlarni kiritish uchun ajratilgan Free hujayralar oy, yil, nomi-iste'mol kompaniyalari, xarajatlar miqdori, ayirboshlash, ularning darajasi. hisobot qayd emas unga nisbatan kompaniyalari (kompaniya), soni kabi hujayralar oldindan himoyalangan emas qadriyatlar va professional nomimdan qilish. Yangi nom tayinlangan Mehnat sahifa. Misol uchun, "Օ hisoboti".

o'zgaruvchilar

Dastur avtomatik ravishda andoza to'ldiring yozish uchun, namoyish ni tanlang. Ular o'zgaruvchilar uchun ishlatiladi:

  • stol joriy satr NN- soni;
  • TP va TF - rejalashtirilgan va haqiqiy aylanmasi;
  • SF va SP - haqiqiy va rejadagi jami xarajatlar;
  • IP va BO'LSA - rejalashtirilgan va haqiqiy xarajatlar darajasi.

Biz shu harflar bilan bildirmoq, lekin bu ustun uchun », old» Itog yig'ish jami. Misol uchun, ItogTP - ustun kelsak, deb, nomlangan "rejalashtirilgan aylanmasining."

VBA dasturiy ta'minot bilan muammo hal

Bu namoyish yordamida, biz zid formulasini olish. Agar% da hisob amalga oshirish bo'lsangiz, (F - R) bor / P * 100, va miqdorda - (F - R).

Bu hisob-kitoblar natijalari yaxshi faqat tegishli hujayralardagi "Excel" elektron jadval qilish uchun bo'lishi mumkin.

ItogP = ItogP + P va ItogF = ItogF + F. formulalar tomonidan olingan aslida natijasida va prognoz uchun

og'ishlar = foydalanish uchun (ItogF - ItogP) / ItogP * 100 hisoblash foiz sifatida amalga oshiriladi, va agar umumiy qiymati bo'lsa - (ItogF - ItogP).

natijalar yana bir bor tegishli hujayralar qayd, shuning uchun o'zgaruvchilar ularni tayinlash uchun hech qanday ehtiyoj bor.

Agar dastur yaratish uchun boshlang'ich oldin siz nomi "Otchet1.xls" ostida, masalan, ish kitobini yozib oling istayman.

Matbuot "bir hisobot jadval yaratish,« Agar header ma'lumot kirib keyin faqat 1 marta bosing kerak. Bilasizmi va boshqa qoidalari kerak. Xususan, tugmasini bosing "bir chiziq qo'shish" har bir tadbir uchun qadriyatlar jadvalga kirib keyin har safar bosilishi kerak. tugmasini "Finish" tugmasini bosing, keyin esa oynada "Excel" o'tish uchun zarur bo'lgan barcha ma'lumotlarni kiritishdan so'ng.

Endi siz so'l bilan, Excel uchun muammoni hal qilish uchun qanday bilaman. VBA foydalanish qobiliyati (., yuqoridagi misol dasturlari qarang) Excel va hozir, matn muharriri eng mashhur muhitda ishlash uchun kerak bo'lishi mumkin "Word". Xususan, bu maqolaning boshida ko'rsatilgan bo'lib, yozishni tomonidan, yoki matn ustida operatsiyalar ko'p navbatchi yoki "ko'rish" belgisiga va "Macros" ko'rinishida orqali tugmalarini bosib, amalga oshirilishi mumkin orqali menyu tugmalari yaratish kodni yozib.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 uz.birmiss.com. Theme powered by WordPress.