จุดเด่นของการใช้ภาษา
OpenOffice/LibreOffice
Basic เป็นภาษาแมโครในการสร้างงานประยุกต์บนโปรแกรมต่างๆ
ของ OpenOffice/LibreOffice
ก็คือ
OpenOffice/LibreOffice
Basic เป็นภาษาแมโครที่มีตัวแปรภาษา
และส่วน IDE
รวมอยู่ในชุดของ
OpenOffice/LibreOffice
ที่สามารถใช้งานได้ทันที
2.1
การสร้างแมโครบนโปรแกรมต่างๆ
ของ OpenOffice
/ LibreOffice

- โดยการสั่งบันทึกแมโคร
- โดยการสร้างชุดคำสั่งขึ้นเอง
2.1.1
การสั่งบันทึกแมโคร

ยกตัวอย่างเช่น
ถ้าเรากำลังทำงานบนโปรแกรมสปรีดชีตของ
OpenOffice / LibreOffice
(OO / LB Calc) และต้องการสร้างแมโครสำหรับเปลี่ยนชื่อแผ่นงานชุดที่
3
ของแฟ้มเอกสารแบบสปรีดชีต
(แผ่นงาน3)
ให้เป็น
“แหล่งข้อมูลหลัก”
การสั่งบันทึกแมโคร
จะดำเนินการตามลำดับ ดังนี้
- เลือกที่หัวข้อ “เครื่องมือ” -> “แมโคร” และ “บันทึกแมโคร” จากเมนูของโปรแกรมตามลำดับ
- ใช้เมาส์คลิกที่ชื่อ “แผ่นงาน3”
- คลิกปุ่มขวาของเมาส์บนชื่อแผ่นงาน แล้วเลือกที่หัวข้อ “เปลี่ยนชื่อ” จากเมนูที่ปรากฏขึ้น
- พิมพ์ชื่อแผ่นงานที่ต้องการบนไดอะล็อก “เปลี่ยนชื่อแผ่นงาน” ที่ปรากฏขึ้นบนจอภาพ
- คลิกที่ปุ่มคำสั่ง “ตกลง” ของไดอะล็อก
- คลิกที่ปุ่ม “หยุดการบันทึก” ที่อยู่ในกรอบลอยอยู่เหนือโปรแกรม
- เลือกแหล่งที่เก็บแมโครในกรอบ “บันทึกแมโครใน” บนไดอะล็อก “OpenOffice / LibreOffice Basic Macro” ซึ่งโดยทั่วไปจะเก็บไว้กับตัวแฟ้มเอกสาร
- คลิกขยายตรงส่วนชื่อแฟ้ม แล้วคลิกเลือกที่หัวข้อ “Standard”
- กรณีที่ยังไม่เคยสร้างมอดูลไว้เลย ให้คลิกทีปุ่มคำสั่ง “มอดูลใหม่” บนไดอะล็อกชุดเดียวกัน ตั้งชื่อมอดูลบนไดอะล็อก “มอดูลใหม่” ที่ปรากฏขึ้น แล้วคลิกที่ปุ่มคำสั่ง “ตกลง” ของไดอะล็อก “มอดูลใหม่” ชื่อมอดูลที่ตั้งขึ้นใหม่จะไปปรากฏอยู่ในกรอบ “บันทึกแมโครใน”
- พิมพ์ชื่อแมโครที่ต้องการในช่อง “ชื่อแมโคร” บนไดอะล็อก
- คลิกที่ปุ่มคำสั่ง “ระเบียน” ของไดอะล็อก “OpenOffice/LibreOffice Basic Macro” เพื่อบันทึกแมโครของงานที่ดำเนินการผ่านไป
![]() |
รูปที่
2-1
การสั่งบันทึกแมโครบนโปรแกรมสปรีดชีตของ
OpenOffice/LibreOffice
|
รายละเอียดแฟ้ม
2-1
: ตัวอย่างแมโครที่ได้จากการดำเนินการในข้างต้น
sub
renameSheet3
rem
----------------------------------------------------------------------
rem
define variables
dim
document as object
dim
dispatcher as object
rem
----------------------------------------------------------------------
rem
get access to the document
document
= ThisComponent.CurrentController.Frame
dispatcher
= createUnoService("com.sun.star.frame.DispatchHelper")
rem
----------------------------------------------------------------------
dim
args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name
= "Nr"
args1(0).Value
= 3
dispatcher.executeDispatch(document,
".uno:JumpToTable", "", 0, args1())
rem
----------------------------------------------------------------------
dim
args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name
= "Name"
args2(0).Value
= "แหล่งข้อมูลหลัก"
dispatcher.executeDispatch(document,
".uno:RenameTable", "", 0, args2())
end
sub
เวลา
|
เหตุการณ์
|
||
06:00 น. | ตื่นนอน ทำบันทึกประจำวันของวันก่อน ทำบัญชีครัวเรือน | ||
07:15 น. | งานของกิจกรรมอาชีพ งานวิทยากร/อาสาสมัคร (14/2557) : เตรียมเอกสารสำหรับการเป็นวิทยากรการเลี้ยงปลาดุกในบ่อพลาสติกที่บ้านหนองกระดี่ | ||
08:00 น. |
|
||
08:30 น. | แต่งแปรงถ่านสำหรับซ่อมมอเตอร์จักรยานไฟฟ้า (ใช้กับปั้มชักพลังงานโซลาร์เซลล์) และทำการติดตั้งเข้าซอง | ||
09:00 น. | งานของกิจกรรมอาชีพ กสิกรรมธรรมชาติ แปลงสวนปาล์ม (8/2557) : ตัดปาล์ม | ||
11:30 น. |
|
||
12:15 น. | งานของกิจกรรมอาชีพ งานวิทยากร/อาสาสมัคร (14/2557) : ไปเป็นวิทยากรอบรมการเลี้ยงปลาดุกในบ่อพลาสติกที่บ้านหนองกระดี่, แวะจ่ายค่ากับข้าวร้านพี่มะลิ | ||
15:00 น. | ไปบ้านอาลมจ่ายหนี้, เลยไปแยกแตงโมเอามอเตอร์ไปให้ช่างดู | ||
17:00 น. | งานของกิจกรรมอาชีพ งานการตลาดและการลงทุน (20/2557) : ไปแวะบ้านพี่เทียนคุยเรื่องปุ๋ยนาโน | ||
19:00 น. |
|
||
21:00 น. | เข้านอน |