บทที่ 7 ความรู้เบื้องต้นเกี่ยวกับการใช้งาน Excel VBA

Download Report

Transcript บทที่ 7 ความรู้เบื้องต้นเกี่ยวกับการใช้งาน Excel VBA

บทที่ 7 ความรูเบื
อ
้
งต
น
้
้
เกีย
่ วกับการใช้งาน Excel
Visual Basic for Application
อ.รจนา
วานนท ์
Roseyayee.wordpress.com
[email protected]
Tel 089-7204020
1
Visual Basic for Application
(VBA) คืออะไร
• เป็ นการเขียนคาสั่ งดวยภาษา
้
Visual Basic เพือ
่ สั่ งงานให้
โปรแกรม Microsoft Office
ทางานตามตองการแบบอั
ตโนมัต ิ
้
ซึง่ ช่วยทาให้ผูใช
้ ้งานลดงานที่
ซา้ ซ้อนลงได้
อีกทัง้ งานที่
ประมวลผลดวย
VBA จะรวดเร็ว
้
และถูกตองมากกวา
2
เมือ
่ ไรทีเ่ ราจะตองใช
้
้
VBA
• งานทีซ
่ า้ ซาก
การทางานในขัน
้ ตอนเดิม ๆ
บพันครัง้ หากใช้ VBA ทีท
นับรอยนั
่ าเพียงครัง้
้
เดียวจะใช้งานไดตลอดไม
ว่ าจะกี
ค
่ รัง้ ก็ตาม
้
่
• งานทีซ
่ บ
ั ซ้อน บอยครั
ง้ ทีง่ านของเรามีขน
้ั ตอนที่
่
ยุงยาก
เช่น เอาขอมู
้ ตอนแรกไปใช้
่
้ ลจากขัน
ในขัน
้ ตอนทีส
่ อบ และเอาขอมู
้ ตอนที่
้ ลจากขัน
สองไปใช้ในขัน
้ ตอนทีส
่ าม สี่ ห้า ซึง่ เรา
สามารถลดการทางานทีซ
่ บ
ั ซ้อนเหลานี
่ ้ให้เหลือ
ขัน
้ ตอนเดียวไดโดยใช
้
้ VBA
• งานทีเ่ กีย
่ วกับฐานขอมู
้ ล
• งานทีต
่ องการการเชื
อ
่ มโยงขอมู
้
้ ลระหวาง
่
3
รูจั
ก
กั
บ
เครื
อ
่
งมื
อ
VBA
IDE
้
• เมนูบาร
(Menu Bar)
์
• File กลุมค
่ วกับการสราง
่ าสั่ งเกีย
้ Project
ใหม่ เปิ ด Project บันทึก ปิ ด Project
• Edit กลุมค
่ ่ วยสรางและแก
่ าสั่ งทีช
้
้ไขการ
ทางานของ Project
ให้งายขึ
น
้ เช่น
่
Copy, Paste และ Undo
• View กลุมค
่ วกับการแสดงหน้าตาง
่ าสั่ งเกีย
่
ตาง
ๆ ของ VBA IDE
่
4
รูจั
่ งมือ VBA IDE
้ กกับเครือ
• Insert กลุมค
่ วกับการเพิม
่ ออบเจ็กต ์
่ าสั่ งเกีย
Excel เขามาในProject
้
• Format กลุมค
่ วกับการจัดรูปแบบการ
่ าสั่ งเกีย
แสดงผลของ Form
• Debug กลุมค
่ วกับการหาขอผิ
่ าสั่ งเกีย
้ ดพลาด
ของโปรเจ็กต ์
• Run
กลุมค
่ วกับการสั่ งให้โปร
่ าสั่ งเกีย
เจ็กตท
์ างานหรือหยุดทางาน
• Tools
กลุมค
่ วกับการจัดการ
่ าสั่ งเกีย
เครือ
่ งมือตางๆ
5
ทูลบาร ์ (Toolbar)
1
2
3
4
5
7
6
• 1. กลุมค
่ ออบเจ็กต ์
่ าสั่ งเรียกโปรแกรม Excel เพิม
Excel และบันทึกโปรเจ็กต ์
• 2. กลุมค
่ าสั่ งในเมนู Edit เป็ นการตัด (Cut),การก็
อบปี้ (Copy),การวาง(Paste) และค้นหาคาหรือ
ข้อความ
• 3.กลุมค
่ าสั่ ง Undo (ยกเลิกคาสั่ งลาสุ
่ ด) และRedo(
ทาซา้ คาสั่ งทีย
่ กเลิกไป)
• 4.กลุมค
่ วกับการสั่ งให้โปรแกรมทางานและ
่ าสั่ งเกีย
หยุดทางาน
• 5.กลุมค
่ าสั่ งในเมนู View เป็ นคาสั่ งแสดงหน้าตาง
่
6
Project Explorer
• Project Explorer เป็ นหน้าตางแสดง
่
รายการของไอเท็ม (Item) ทีม
่ อ
ี ยูในโปร
่
เจ็กตทั
์ ง้ หมด เช่น Worksheet
,Module และ Class เป็ นตน
้
7
Properties Window
• Properties Window เป็ นหน้าตางแสดง
่
และกาหนดคุณบัตห
ิ รือลักษณะเบือ
้ งตน
้
ของคอนโทรลและออบเจ็กต ์ เช่น
กาหนดชือ
่ , สี และขนาด เป็ นตน
้ หรือ
สามารถกาหนดโดยการเขียนโค๊ดเพิม
่ เติม
ภายหลังก็ได้
8
หน้าตาง
Code
Editor
่
• Code Editor เป็ นหน้าตางที
ใ่ ช้สาหรับ
่
เขียนโค๊ดควบคุมการทางานของโปรแกรม
ตามทีเ่ ราตองการหลั
งจากทีไ่ ดออกแบบ
้
้
หน้าตาแอพพลิเคชัน และกาหนด
คุณสมบัตห
ิ รือลักษณะเบือ
้ งตนของ
้
คอนโทรลตางๆ
แลว
่
้
9
เริม
่ ตนการใช
้
้งาน VBA
คลิกแท็บ Developer แลวคลิ
กที่ Visual Basic
้
(กดคีย ์ Alt + F11)
10
หน้าตางโปรแกรม
VBA
่
หน้าตางในการ
่
เขียนโค้ด ค
รายการออบเจ็
ตาง
ๆ
่
แสดงคุณสมบัติของ
ออบเจ็คที่เลือกอยู่
11
การเขียน Code
• การสรางโค
่ สั่ งงานให้
้
๊ ด VBA เพือ
Excel ทางานตามทีต
่ องการ
จะตอง
้
้
เขียนโค๊ด VBA ใน Procedure
และสั่ งให้ Procedure ทางาน
•
รู
ป
แบบการอ
างอิ
ง
ถึ
ง
ต
าแหน
งเซล
้
่
Worksheets(“ชือ
่ Worksheet”).Range(“ชือ
่ Cell”).Value
อยางง
่ สดงใน Cell
่ าย
่ = คาที
่ แ
12
ขัน
้ ตอนการเขียน Code
• คลิกเมนู Insert แลวคลิ
ก
้
Module
• คลิกเมนู Insert แลวคลิ
ก
้
Procedure
ก OK
• ตัง้ ชือ
่ Procedure แลวคลิ
้
13
คลิกเมนู Insert แลวคลิ
ก
้
Module
14
คลิก Insert
Procedure
15
ตัง้ ชือ
่ Procedure เป็ น
My_first
16
พิมพ ์ Code ตามนี้
จากตัวอยาง
รูปแบบโค๊ด
่
ข้างตน
้ เป็ นการกาหนด
คาที
่ เ่ ซล A1 ใน
worksheet
ชือ
่ Sheet 1 มีคาเท
่ ากั
่ บ
17
การสราง
้ Message Box
รูปแบบ MsgBox “ขอความ
้
ทีแ
่ สดง”
หากเป็ นตัวเลขไมต
่ องใส
้
่
เครือ
่ งหมาย “ ”
18
19
วิธก
ี ารพิมพภาษาไทยใน
Code
์
VBA
20
วิธก
ี ารพิมพภาษาไทยใน
Code
์
คลิกแท็
Editor
VBA
(ตบอ)
่
Format
21
วิธก
ี ารพิมพภาษาไทยใน
Code
์
VBA (ตอ)
่
22
23
แบบฝึ กหัดที่ 7.1
• สราง
Procedure
้
• ส่งคา่ 35 ไปยังเซล B1 ใน
Worksheetชือ
่ Sheet1
• ส่งคา่ 72 ไปยังเซล C1 ใน
Worksheet ชือ
่ Sheet2
• ส่งตัวอักษร Excel VBA ไปยัง
เซล D1
24
แบบฝึ กหัดที่ 7.2
• สราง
Message Box แสดง
้
ชือ
่ และนามสกุลของตัวเองทัง้
ภาษาไทยและภาษาอังกฤษ
• สราง
Message Box แสดง
้
คาที
่ ยูในเซล
E1 ใน
่ อ
่
worksheet ชือ
่ sheet 1
25