KomputerLunak

VBA Excel: program sampel. Macro ing Excel

Sawetara wong ngerti sing versi pisanan produk Microsoft Excel populer muncul ing taun 1985. Wiwit iku wis ngalami akèh owah-pirang modifikasi lan dikarepake yuta kedhaftar sak donya. Nanging, akeh karya mung karo Kapabilitas dicokot sethitik saka spreadsheet lan malah ora ngerti carane padha bisa nggawe urip luwih gampang kanggo kemampuan kanggo program Excel.

Apa VBA

Programming Excel wis rampung dening dhasar kanggo Aplikasi basa pamrograman Visual sing Originally dibangun ing spreadsheet paling misuwur saka Microsoft.

Kanggo patut kang ahli yèn relatif ease saka pembangunan. Minangka laku ditampilake, VBA bisa Master kerja, malah kedhaftar sing ora duwe program skills profesional. Kanggo VBA fitur kalebu execution script ing lingkungan aplikasi kantor.

Kerugian program sing masalah sing digandhengake karo kompatibilitas ing versi beda. Padha sing disebabake dening kasunyatan sing kode VBA saka program nuduhake fungsi sing saiki ing versi anyar saka prodhuk, nanging ora ing siji lawas. Ana uga kerugian amba lan openness kacida dhuwur saka kode kanggo ganti ngadhepi para wong liyo. Nanging, Microsoft Office, lan IBM Lotus Symphony ngidini kedhaftar kanggo aplikasi enkripsi kode entri lan sandi setelan kanggo ndeleng iku.

Obyek, koleksi, sifat, lan cara

Iku karo konsep sing perlu kanggo ngerti wong-wong sing arep bisa ing lingkungan VBA. Kaping kabeh, sampeyan kudu ngerti apa objek punika. Ing Excel, ing tumindak iki minangka sheet, buku, lan sawetara sel. Iki obyek duwe hirarki khusus, i.e. ngrungokake saben liyane.

Kepala ngolah punika Aplikasi, program Excel cocog dhewe. Workbooks ngiring, Worksheets, lan Range. Contone, kanggo deleng sel A1 ing sheet tartamtu kudu nggawa cara, njupuk menyang akun hirarki.

Usul konsep "koleksi" grup iki obyek saka kelas padha, kang ngrekam diwenehi ChartObjects. sawijining unsur uga obyek.

Sabanjure bab - situs. Padha fitur sing perlu obyek wae. Contone, kanggo Range - minangka Value utawa Formula.

Cara - iku printah kanggo nuduhake yen sampeyan pengin nggawe. Nalika nulis kode ing VBA menyang dipisahake saka titik objek. Contone, minangka bakal ditampilake mengko, asring banget nalika program ing printah "Excel" nggunakake Sel (1,1) .Pilih. Iku tegese iku perlu kanggo milih sel karo koordinat (1,1), i.e. A1.

Nanging, iku asring digunakake Selection.ClearContents. implementasine Sawijining Mbusak isi sel kapilih.

Miwiti

Kaping kabeh, sampeyan pengin nggawe file lan nyimpen, nemtokake jeneng banjur pilih jinis «Book Excel gedhe aktif."

Banjur, menyang aplikasi VB, kang cukup kanggo nggunakake kombinasi «Alt» tombol lan «F11». Next:

  • ing menu baris ing ndhuwur jendela, klik ing lambang ing jejere lambang Excel;
  • Mudule milih printah;
  • supaya ngeklik ing lambang karo floppy disk;
  • nulis, ngomong, njelaske nganggo bentuk garis kode.

Iku katon minangka nderek:

Sub program ()

'Kode Kita

Akhir Sub

Wigati dimangerteni menawa line " 'kode Kita" bakal disorot ing werna (ijo). Alesan kanggo apostrophe iki, dikirim ing awal senar, kang nuduhake yen apa nderek komentar.

Saiki sampeyan bisa nulis kode lan nggawe piyambak alat anyar ing VBA Excel (ndeleng program sampel. Etc.). Mesthi, wong-wong sing menowo kerja Visual Basic, iku bakal akeh luwih gampang. Nanging, malah wong-wong sing ora duwe, yen pengin bisa kanggo njaluk nyaman cukup cepet.

Macro ing Excel

Konco iki jeneng kurang program ditulis ing Visual Basic for basa Aplikasi. Mangkono, ing program kanggo Excel - iku kanggo nggawe macro kanggo kode dikarepake. Kanthi kemampuan iki, Microsoft spreadsheet poto-develops, nyesuekake kanggo syarat pangguna tartamtu. Duwe urusan karo carane nggawe modul kanggo nulis macro, iku bisa kanggo nerusake karo conto konkrit program VBA Excel. Iku apik kanggo miwiti karo kode paling dhasar.

CONTO 1

Task: Tulis program sing bakal nyalin ing Nilai saka isi siji sèl lan banjur nulis kanggo liyane.

Kanggo nindakake iki:

  • mbukak tab "View";
  • mindhah lambang "macro";
  • goyangake menyang "Rekam Makro";
  • isi formulir kabuka.

Kanggo gamblang, ing "Jeneng Macro" ninggalake "Makros1" lan ing "tombol Trabasan" dipasang, contone, HH (iki tegese sampeyan bisa mbukak program conto bakal «Ctrl + h» tim sakklepat). Ketik.

Saiki sing wis miwiti ngrekam gedhe, arupi isi sel liyane. Wangsul dhumateng lambang asli. Klik ing "Record Macro". tumindak tandha completion saka applets.

Next:

  • maneh obah kanggo senar "Macro";
  • dipilih ing dhaftar "Macro 1";
  • klik "Run" (wiwit tumindak padha Dibukak tombol trabasan «Ctrl + HH»).

Akibaté, tumindak kang wis dileksanakake sak ngrekam gedhe.

Iku ndadekake pangertèn kanggo ndeleng carane kode katon kaya. Kanggo nindakake iki, bali menyang senar "Macro" lan klik "Sunting" utawa "Ketik". Akibaté, padha golek piyambak ing lingkungan VBA. Bener, kode dhewe ana ing antarane garis gedhe Makros1 Sub () lan End Sub.

Yen Nyalin wis dileksanakake, contone, saka sèl A1 ing C1 sel, salah siji saka garis saka kode bakal katon kaya Range ( "C1"). Pilih. Ing translation, iku katon kaya "Range (" C1 "). Pilih", ing tembung liyane, ndadekake transisi kanggo VBA Excel, ing C1 sel.

Bagéyan aktif kode jangkep tim ActiveSheet.Paste. Iku tegese ngrekam isi ing C1 sel sing dipilih dipilih sel (ing ngono, A1).

CONTO 2

VBA siklus nggawe macro beda ing Excel.

VBA siklus nggawe macro beda. Nganggep sing ana fungsi y = x + x 3 + 3x 2 - beyo (x). Sampeyan pengin nggawe macro kanggo sawijining grafis. Iki bisa rampung mung kanthi nggunakake siklus VBA.

Kanggo Nilai dhisikan lan Final saka fungsi pitakonan njupuk X1 = 0 lan x2 = 10. Salajengipun, iku perlu kanggo introduce pancet - angka langkah ngganti pitakonan lan nilai dhisikan kanggo counter.

Kabeh conto macro VBA Excel sing digawe nggunakake prosedur padha kasebut ndhuwur. Ing kasus tartamtu, kode katon kaya:

Sub Program ()

X1 = 1

x2 = 10

shag = 0,1

i = 1

Aja Nalika X1

y = X1 + X1 ^ 2 + 3 * X1 ^ 3 - Cos (X1)

Sel (i, 1) .Nilai = X1 (Nilai X1 ditulis ing memori kanthi koordinat (i, 1))

Sel (i, 2) .Nilai = y (y Nilai ditulis ing sel karo koordinat (i, 2))

i = i + 1 (count bener);

X1 = X1 + shag (pitakonan wis diganti ukuran langkah);

Loop

Akhir Sub.

Minangka asil gedhe roto iki "Excel" diwenehi loro kolom, pisanan kang direkam angka kanggo x, lan liya - kanggo y.

Banjur gawe jadwal bisa mbangun ing wong, standar kanggo "Excel".

CONTO 3

Kanggo ngleksanakake siklus ing VBA Excel 2010, uga ing versi liyane, bebarengan karo wis suda Do Nalika desain digunakake Kanggo.

Coba program sing nggawe kolom. Ing saben sel iku bakal direkam squares cocog nomer baris. Kanggo nggunakake rancangan bakal ngidini kanggo ngrekam iku banget sedhela, tanpa nggunakake counter a.

First iku perlu kanggo nggawe gedhe sing, kaya ing ndhuwur. Sabanjure, nulis kode dhewe. Kita pitados bilih kita kasengsem ing angka kanggo 10 sel. Wóng kang minangka nderek.

Kanggo i = 1 kanggo 10 Sabanjure

Printah ditransfer menyang basa "manungsa", minangka "bola saka 1 kanggo 10 tambahan saka siji."

Yen tugas kanggo nampa kolom karo squares, contone, kabeh wilangan bulat aneh antarane 1 lan 11, kita nulis:

Kanggo i = 1 kanggo 10 langkah 1 Next.

Kene, langkah - langkah. Ing kasus iki, iku ingatase kanggo loro. Kanthi gawan, anané tembung ing daur ulang ing tegese langkah siji.

Asil kudu disimpen ing nomer sel (i, 1). Banjur saben-saben sampeyan miwiti siklus karo Tambah ing Nilai saka i langkah otomatis bakal tuwuh lan nomer baris. Mangkono, bakal ana kode Optimization.

Umumé, kode bakal katon kaya:

Sub program ()

Kanggo i = 1 10 Langkah 1 (bisa ditulis mung kanggo aku = 1 10)

Sel (i, 1) .Nilai = i ^ 2 (i.e. Nilai kothak ditulis menyang sel (i, 1) i)

Next (ing raos peran saka liya counter lan siklus wiwitan liyane)

Akhir Sub.

Rampung bener, kalebu rekaman lan mlaku macro (ndeleng. Pandhuan ing ndhuwur), banjur diarani saben wektu ukuran diwenehi bakal dijupuk kolom (ing ngono dumadi saka 10 sel).

CONTO 4

Ing saben dinten gesang, asring banget iku perlu kanggo njupuk kaputusan iki utawa sing gumantung ing sawetara kahanan. ora bisa apa tanpa wong ing VBA Excel. Conto program endi mesthi luwih saka algoritma dipilih tinimbang wiwitanipun predetermined, paling rancangan umum digunakake saka Yen ... Banjur (kanggo kasus angel) Yen ... Banjur ... END Yen.

Coba kasus tartamtu. Upaminipun pengin nggawe macro kanggo "Excel" kanggo sèl karo koordinat (1,1) wis direkam:

1 yen pitakonan iku positif

0 yen pitakonan iku nul;

1, yen pitakonan negatif.

Nitahaken saka gedhe kuwi kanggo "Excel" wiwit ing cara standar, liwat nggunakake "panas" tombol Alt lan F11. Luwih ditulis kode ing ngisor iki:

Sub program ()

x = Sel (1, 1) .Nilai (printah iki nugasi ing Nilai saka koordinat x isi sel (1, 1))

Yen x> 0 Banjur Sel (1, 1) .Nilai = 1

Yen x = 0 Banjur Sel (1, 1) .Nilai = 0

Yen x <0 Banjur Sel (1, 1) .Nilai = -1

Akhir Sub.

Iku tetep kanggo mbukak gedhe lan njaluk ing "Excel" nilai sing dipengini kanggo pitakonan.

fungsi VBA

Sing uga wis ngeweruhi, ing program aplikasi spreadsheet Microsoft paling misuwur iku ora banget angel. Utamané yen sinau carane nggunakake fungsi VBA. In total, basa program iki digawe khusus kanggo nulis aplikasi ing "Excel" lan Sabda, bab 160 fungsi. Padha bisa dipérang dadi sawetara klompok gedhe. Padha:

  • fungsi matématika. Nglamar menyang pitakonan saka cahya cosine iki dijupuk, ing logarithm alam, lan supaya kabèh bagéyan.
  • fungsi Financial. Amarga kasedhiyan lan nggunakake program ing Excel, sampeyan bisa njaluk pribadi efektif kanggo accounting lan pamukiman financial.
  • fungsi Processing Array. Iki kalebu Array, IsArray; LBound; UBound.
  • VBA Excel fungsi kanggo baris. Iki minangka grup kasuwur. Iku kalebu, contone, fungsi Space nggawe senar karo sawetara kesenjangan witjaksono kanggo pitakonan ongko utawa ASC pindhah simbol kanggo kode ANSI. Kabeh mau wis digunaaké lan ngidini sampeyan bisa nganggo strings ing "Excel" kanggo nggawe aplikasi akeh luwih gampang digarap tabel.
  • fungsi konversi jinis data. Contone, CVar ngasilake pitakonan Expression, nindakake iku kanggo Varian jinis data.
  • fungsi Tanggal. Padha nemen nggedhekake fitur standar "Excel". Dadi, fungsi WeekdayName ngasilake jeneng (full utawa sebagean) saka dina minggu dening sawijining nomer. Malah luwih migunani iku Timer ing. Dheweke menehi nomer detik sing wis dilakoni wiwit tengah wengi kanggo wayahe tartamtu sedina-dinane.
  • Dienggo ngowahi pitakonan numerik ing sistem nomer beda. Contone, Oct hasil kanggo perwakilan octal saka nomer.
  • fungsi format. Sing paling penting iku Format ing. Ngasilake Varian karo expression format miturut pandhuan kaparingaken ing gambaran saka format ing.
  • lan sanesipun.

Nyinaoni sifat fungsi iki lan aplikasi sing Ngartekno nggedhekake orane katrangan saka "Excel".

CONTO 5

Ayo dadi nyoba kanggo ngatasi masalah liyane Komplek. Contone:

document kertas Dan tingkat nyata biaya saka laporan perusahaan. mbutuhake:

  • berkembang bagean pola dening spreadsheet "Excel";
  • nggawe program VBA sing bakal nyuwun data mentah isi, kanggo nindakake etung-etungan perlu lan isi ing cithakan saka sel sing cocog.

Coba salah siji saka solusi ing ngisor iki.

Nggawe cithakan

Kabeh tumindak sing dileksanakake ing sheet standar ing Excel. sel Free dilindhungi undhang-undhang kanggo ngetik data ing sasi, taun, perusahaan judhul-konsumen, jumlah biaya, sing tingkat turnover. Minangka sawetara perusahaan (perusahaan), ing bab kang laporan ora kacathet sajarah, sel kanggo nggawe ing basis saka angka lan jeneng profesional ora dilindhungi undhang-undhang ing advance. Lembaran diutus kanggo jeneng anyar. Contone, "Օ Report".

variabel

Kanggo nulis program isi kanthi otomatis cithakan, pilih seratan ing. Padha bakal digunakake kanggo variabel:

  • NN- sawetara ing baris saiki meja;
  • TP lan TF - ngrancang lan turnover nyata;
  • SF lan SP - nyata lan ngrancang total biaya;
  • IP lan yen - ngrancang lan tingkat biaya nyata.

We ndudohke dening huruf padha, nanging karo "ater» Itog klempakan total kanggo kolom sing. Contone, ItogTP - Kanthi gati kanggo kolom ing irah-irahan, minangka "turnover ngrancang."

Solusi saka masalah nggunakake program VBA

Nggunakake seratan iki, kita diwenehi rumus kanggo bedo. Yen sampeyan pengin nindakake pitungan ing% kita duwe (F - P) / P * 100, lan ing jumlah - (F - P).

Asil petungan iki bisa dadi paling mung kanggo nggawe "Excel" spreadsheet ing sel cocok.

Kanggo kasil lan ramalan ing kasunyatan dijupuk dening rumus ItogP = ItogP + P lan ItogF = ItogF + F.

Kanggo standar nggunakake = (ItogF - ItogP) / ItogP * 100 yen pitungan wis digawa metu minangka persentasi, lan yen nilai total - (ItogF - ItogP).

Asil sepisan maneh direkam ing sel cocok, supaya ana ora perlu kanggo nemtokake menyang variabel.

Sadurunge miwiti kanggo nggawe program sing pengin disimpen notes, contone, ing jeneng "Otchet1.xls".

Pencet "Nggawe Tabel Reporting," sampeyan kudu pencet mung 1 wektu sawise ngetik informasi header. Sampeyan kudu ngerti lan aturan liyane. Ing tartamtu, tombol "Add a line" kudu dipencet saben wektu sawise ngetik menyang meja nilai kanggo saben kegiatan. Sawise ngetik kabeh data sing pencet tombol "Rampung", lan banjur ngalih menyang "Excel" ing jendhela.

Saiki sing ngerti carane ngatasi masalah kanggo Excel karo macro. Kemampuan kanggo nggunakake VBA Excel (ndeleng program sampel. Ndhuwur) lan sampeyan bisa uga kudu bisa ing lingkungan sing paling populer ing wayahe, teks editor "Sabda." Ing tartamtu, ngrekam, minangka ditampilake ing awal artikel iki, utawa dening nulis kode kanggo nggawe tombol menu liwat kang akeh saka operasi ing teks bisa rampung kanthi mencet tombol ing tugas utawa liwat "View" lambang lan tab "Macro".

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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