Ribbon แถบขวางที่อยู่ด้านบนสุดของหน้าต่างโปรแกรมที่มีกลุ่มของคำสั่ง เป็นคอมโพเนนต์ของ ส่วนติดต่อผู้ใช้ของ Microsoft Office Fluent
ใหม่ ส่วนติดต่อผู้ใช้ของ Office Fluent
ซึ่งมีหน้าแรกเดี่ยวสำหรับคำสั่งใน Microsoft Office Access 2007 และเป็นการแทนที่แบบหลักสำหรับเมนูและแถบเครื่องมือใน Access รุ่นก่อนหน้า
เมื่อคุณเริ่มสร้างโปรแกรมประยุกต์ขั้นสูงเพิ่มเติมด้วย Office Access 2007 คุณอาจตัดสินใจว่าคุณต้องการจะกำหนด Office Fluent Ribbon เอง เพื่อให้สามารถใช้โปรแกรมประยุกต์ได้ง่ายขึ้น ตัวอย่างเช่น คุณสามารถซ่อนแท็บเริ่มต้นบางแท็บหรือทั้งหมดเพื่อให้ผู้ใช้ไม่สามารถใช้คำสั่งบางรายการได้ และคุณสามารถสร้างแท็บใหม่ที่กำหนดเองซึ่งมีเพียงคำสั่งที่คุณต้องการให้ใช้งานได้เท่านั้น
ในโปรแกรม ระบบ Microsoft Office 2007
ทั้งหมดที่ใช้ ส่วนติดต่อผู้ใช้ของ Office Fluent
ให้คุณใช้ Extensible Markup Language (XML) (Extensible Markup Language (XML): รูปแบบอย่างย่อของ Standard Generalized Markup Language (SGML) ที่ช่วยให้นักพัฒนาสร้างแท็กแบบกำหนดเองขึ้นได้ ซึ่งช่วยให้การจัดระเบียบและการนำเสนอข้อมูลเปลี่ยนแปลงได้ตามความเหมาะสม) เพื่อกำหนดริบบิ้นเอง ดังนั้นความรู้พื้นฐานของ XML จึงมีประโยชน์ในการกำหนดริบบิ้นนี้ บทความนี้ไม่ได้ครอบคลุมแนวคิดของ XML แต่จะแสดงกระบวนงานการกำหนดริบบิ้นเองขั้นพื้นฐานและตัวอย่างของ XML บางรายการที่คุณสามารถปรับเปลี่ยนเพื่อให้เหมาะกับความต้องการของคุณได้
สำหรับข้อมูลขั้นสูงเพิ่มเติมเกี่ยวกับ XML และการกำหนดริบบิ้นเอง ให้ดูการเชื่อมโยงในส่วน ดูเพิ่มเติม ของบทความนี้
คุณต้องการทำสิ่งใด
ทำความเข้าใจกับเทคนิคการกำหนดริบบิ้นเอง
ใน Office Access 2007 คุณกำหนดริบบิ้นเองโดยสร้าง XML การกำหนดเอง และการเพิ่มโค้ดหรือการตั้งค่าคุณสมบัติของฐานข้อมูลที่สั่งให้ Access ใช้ XML นั้นเมื่อสร้างริบบิ้น คุณสามารถใช้ XML เพื่อซ่อนแท็บที่มีอยู่และเพื่อเพิ่มแท็บ กลุ่มคำสั่ง และคำสั่งใหม่ กระบวนงานในบทความนี้จะแสดงวิธีเพิ่มคำสั่งที่มีอยู่แล้วภายในให้กับ Access (เช่น ค้นหา เรียงลำดับ และบันทึก) และวิธีเพิ่มคำสั่งที่ใช้งานแมโครของ Access ที่คุณเขียนเอง
มีตำแหน่งจำนวนมากที่สามารถเก็บ XML ไว้ได้ แต่วิธีหนึ่งที่ง่ายที่สุดคือเก็บไว้ที่ตารางระบบในฐานข้อมูลปัจจุบัน กระบวนการนี้ประกอบด้วย การสร้างตารางระบบที่ชื่อว่า USysRibbons การเพิ่มริบบิ้น XML ของคุณไปยังตารางนี้ และการระบุว่าริบบิ้นที่กำหนดเองนี้จะแสดงฐานข้อมูลทั้งหมด หรือเฉพาะฟอร์มหรือรายงานที่ระบุไว้ คุณสามารถกำหนดริบบิ้นที่กำหนดเองได้หลายรายการ คือริบบิ้นหนึ่งสำหรับทั้งโปรแกรมประยุกต์ และริบบิ้นอื่นๆ สำหรับแต่ละฟอร์มหรือรายงานในฐานข้อมูลนี้
ด้านบนของหน้า
สร้างและนำริบบิ้นที่กำหนดเองไปใช้
ส่วนต่อไปนี้จะแสดงกระบวนการทีละขั้นตอนในการสร้างและการนำริบบิ้นที่กำหนดเองไปใช้
ก่อนที่คุณจะเริ่มต้น
แสดงตารางระบบในบานหน้าต่างนำทาง ตามค่าเริ่มต้น ตารางระบบจะไม่ปรากฏในบานหน้าต่างนำทาง ดังนั้นคุณจึงต้องแก้ไขการตั้งค่าใน กล่องโต้ตอบ ตัวเลือกการนำทาง เสียก่อนเพื่อให้สามารถเห็นตาราง USysRibbons หลังจากที่คุณสร้างตารางนั้นแล้ว ให้ใช้กระบวนงานดังต่อไปนี้:
- เมื่อเปิดฐานข้อมูลใน Access ให้คลิกขวาที่แถบนำทางตรงด้านบนสุดของบานหน้าต่างนำทาง และคลิกที่ ตัวเลือกการนำทาง บนเมนูทางลัด
- ในกล่องโต้ตอบ ตัวเลือกการนำทาง ภายใต้ ตัวเลือกการแสดง ให้เลือกกล่องกาเครื่องหมาย แสดงวัตถุของระบบ แล้วคลิกที่ ตกลง
ตารางระบบของ Access จะปรากฏในบานหน้าต่างนำทาง
เปิดใช้งานการแสดงข้อความแสดงข้อผิดพลาดของส่วนติดต่อผู้ใช้ Add-in ข้อความแสดงข้อผิดพลาดเป็นแหล่งที่มาที่มีค่าของข้อมูล เมื่อมีการสร้างและการแก้ปัญหา XML การกำหนดเองของริบบิ้น จึงเป็นความคิดที่ดีที่จะให้ Access แสดงข้อความแสดงข้อผิดพลาด ให้ใช้กระบวนงานดังต่อไปนี้:
- คลิก ปุ่ม Microsoft Office
แล้วคลิก ตัวเลือกการเข้าใช้งาน
- คลิก ขั้นสูง
- ภายใต้ ทั่วไป ให้เลือกกล่องกาเครื่องหมาย แสดงข้อผิดพลาดของส่วนติดต่อผู้ใช้ Add-in แล้วคลิกที่ ตกลง
สร้างตารางระบบ USysRibbons
ใช้กระบวนงานนี้เพื่อสร้างตารางระบบ USysRibbons จากนั้นคุณจะใช้ตารางนี้เพื่อเก็บ XML การกำหนดเองของริบบิ้น
- บนแท็บ สร้าง ในกลุ่ม ตาราง ให้คลิก ออกแบบตาราง
- ให้เพิ่มเขตข้อมูลต่อไปนี้ไปยังตาราง และตรวจสอบให้แน่ใจว่าได้พิมพ์ชื่อเขตข้อมูลถูกต้องตามที่ปรากฏอยู่
| Field Name |
Type |
Field Size |
| ID |
AutoNumber |
Long Integer |
| RibbonName |
Text |
255 |
| RibbonXml |
Memo |
|
- ถ้าคุณต้องการ คุณสามารถเพิ่มเขตข้อมูลไปยังตารางนี้ได้อีก เช่น เขตข้อมูล ความคิดเห็น เพื่ออธิบายฟังก์ชันของริบบิ้น XML
- เลือกเขตข้อมูล ID บนแท็บ ออกแบบ ในกลุ่ม เครื่องมือ ให้คลิกที่ คีย์หลัก
- บน แถบเครื่องมือด่วน คลิกที่ บันทึก หรือกด CTRL+S แล้วตั้งชื่อตารางใหม่เป็น USysRibbons
เพิ่มริบบิ้นการกำหนด XML เองไปยังตาราง USysRibbons
สำหรับจุดประสงค์ของตัวอย่างนี้ ให้สมมติว่าคุณไม่ต้องการให้ผู้ใช้ฐานข้อมูลใช้เครื่องมือในแท็บ สร้าง นอกจากนั้น คุณต้องการสร้างแท็บใหม่ที่ชื่อว่า แท็บที่กำหนดเอง พร้อมกับคำสั่ง วาง อยู่ในแท็บนั้น ตามที่ปรากฏในภาพประกอบต่อไปนี้
XML ในกระบวนงานดังต่อไปนี้จะสร้างการกำหนดค่านี้ขึ้น
- ในบานหน้าต่างนำทาง ให้คลิกขวาที่ตาราง USysRibbons แล้วคลิกที่ มุมมองแผ่นข้อมูล ในเมนูทางลัด
- เพิ่มข้อมูลต่อไปนี้ไปยังตาราง คุณสามารถคัดลอกตัวอย่าง XML จากบทความนี้และวางลงในตารางได้โดยตรง
| ID |
RibbonName |
RibbonXML |
| (AutoNumber) |
My Tab |
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon startFromScratch="false">
<tabs>
<tab idMso="TabCreate" visible="false" />
<tab id="dbCustomTab" label="A Custom Tab" visible="true">
<group id="dbCustomGroup" label="A Custom Group">
<control idMso="Paste" label="Built-in Paste" enabled="true"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>
|
- XML นี้จะสั่ง Access ก่อนว่าไม่ให้ "เริ่มตั้งแต่ต้น" กล่าวคือ XML จะระบุว่า Access ควรจะแสดงแท็บริบบิ้นเริ่มต้น จากนั้นสั่งให้ Access ซ่อนแท็บเริ่มต้นเพียงหนึ่งแท็บ (แท็บ สร้าง) ขั้นสุดท้าย XML จะสร้างแท็บริบบิ้นใหม่ที่ชื่อว่า "แท็บที่กำหนดเอง" โดยเพิ่มกลุ่มคำสั่งที่ชื่อว่า "กลุ่มที่กำหนดเอง" ให้กับแท็บนั้น และเพิ่มคำสั่ง วาง ไปยังกลุ่มนั้นด้วย สำหรับข้อมูลเพิ่มเติมเกี่ยวกับตัวอย่างนี้และวิธีกำหนด XML ที่เหมาะกับความต้องการของคุณเอง ให้ดูส่วน ทำความเข้าใจกับตัวอย่างของ XML
- ปิดตาราง USysRibbons แล้วให้ปิดและเปิดฐานข้อมูลอีกครั้ง
นำริบบิ้นที่กำหนดเองไปใช้
ขณะนี้ริบบิ้น XML ที่กำหนดเองได้เก็บไว้ในตารางแล้ว ให้เลือกดำเนินการอย่างหนึ่งดังต่อไปนี้ ซึ่งขึ้นอยู่กับว่าคุณต้องการนำริบบิ้นไปใช้กับฐานข้อมูลทั้งหมดหรือใช้กับฟอร์มหรือรายงานที่ระบุไว้
- นำริบบิ้นที่กำหนดเองไปใช้กับฐานข้อมูลทั้งหมด
- คลิก ปุ่ม Microsoft Office
แล้วคลิก ตัวเลือกการเข้าใช้งาน
- คลิกที่ ฐานข้อมูลปัจจุบัน จากนั้นที่ภายใต้ ริบบิ้นและตัวเลือกแถบเครื่องมือ ให้เลือกรายการ ชื่อริบบิ้น แล้วคลิกที่ริบบิ้นที่ต้องการ ซึ่งในกรณีนี้คือ แท็บของฉัน
- คลิก ตกลง
- นำริบบิ้นที่กำหนดเองไปใช้กับฟอร์มหรือรายงานที่ระบุไว้
- ในบานหน้าต่างนำทาง ให้คลิกขวาตรงฟอร์มหรือรายงานที่คุณต้องการนำริบบิ้นที่กำหนดเองไปใช้ แล้วคลิก มุมมองออกแบบ บนเมนูทางลัด
- ถ้าไม่มีการแสดงแผ่นคุณสมบัติ ให้กด F4 เพื่อแสดงแผ่นคุณสมบัติ
- ด้านบนสุดของแผ่นคุณสมบัติ ภายใต้ ชนิดการเลือก ให้ตรวจสอบว่ามีการเลือกชนิดวัตถุ (ฟอร์ม หรือ รายงาน) ในรายการแล้ว
- บนแท็บ อื่นๆ ของแผ่นคุณสมบัติ ให้คลิกที่รายการ ชื่อริบบิ้น แล้วคลิกริบบิ้นที่ต้องการแสดงเมื่อคุณเปิดฟอร์มหรือรายงาน (ในกรณีนี้คือ แท็บของฉัน)
- บน แถบเครื่องมือด่วน ให้คลิก บันทึก หรือกด CTRL+S
- ปิดฟอร์มหรือรายงาน แล้วคลิกที่ฟอร์มหรือรายงานนั้นสองครั้งในบานหน้าต่างนำทางเพื่อเปิดอีกครั้ง
ริบบิ้นที่คุณเลือกจะปรากฏขึ้น
หลังจากคุณได้ยืนยันว่าริบบิ้นที่กำหนดเองของคุณทำงานได้อย่างถูกต้อง คุณสามารถซ่อนตารางระบบอีกครั้งโดยดำเนินการดังต่อไปนี้:
- คลิกขวาที่แถบนำทางที่ด้านบนของบานหน้าต่างนำทาง แล้วคลิกที่ ตัวเลือกการนำทาง บนเมนูทางลัด
- ในกล่องโต้ตอบ ตัวเลือกการนำทาง ภายใต้ ตัวเลือกการแสดง ให้ล้างกล่องกาเครื่องหมาย แสดงวัตถุของระบบ แล้วคลิกที่ ตกลง
ด้านบนของหน้า
คืนค่าริบบิ้นเริ่มต้น
เมื่อต้องการหยุดใช้ริบบิ้นที่กำหนดเองและคืนค่าริบบิ้นเริ่มต้น ให้เลือกใช้กระบวนงานอย่างหนึ่งดังต่อไปนี้ โดยขึ้นอยู่กับว่าริบบิ้นที่กำหนดเองนั้นจะใช้โดยทั้งโปรแกรมประยุกต์ หรือโดยฟอร์มหรือรายงานที่ระบุไว้
คืนค่าริบบิ้นระดับโปรแกรมประยุกต์เริ่มต้น
- คลิก ปุ่ม Microsoft Office
แล้วคลิก ตัวเลือกการเข้าใช้งาน
- ให้คลิกที่ ฐานข้อมูลปัจจุบัน และภายใต้ ริบบิ้นและตัวเลือกแถบเครื่องมือ ให้ลบเนื้อหาของกล่อง ชื่อริบบิ้น
- ให้ปิดแล้วเปิดฐานข้อมูลอีกครั้ง
Access จะแสดงแท็บริบบิ้นเริ่มต้นของตัวเอง ส่วนริบบิ้น XML จะคงอยู่ในตาราง USysRibbons จนกว่าคุณจะลบออก ดังนั้นถ้าคุณต้องการให้ริบบิ้นที่กำหนดเองกลับคืน คุณสามารถทำได้โดยการตั้งค่าตัวเลือก ชื่อริบบิ้น กลับไปเป็นค่าก่อนหน้า
คืนค่าริบบิ้นเริ่มต้นของฟอร์มหรือรายงาน
- เปิดฟอร์มหรือรายงานในมุมมองออกแบบ
- ถ้าไม่มีการแสดงแผ่นคุณสมบัติ ให้กด F4 เพื่อแสดงแผ่นคุณสมบัติ
- ด้านบนสุดของแผ่นคุณสมบัติ ภายใต้ ชนิดการเลือก ให้ตรวจสอบว่ามีการเลือกชนิดวัตถุ (ฟอร์ม หรือ รายงาน) ในรายการแล้ว
- บนแท็บ อื่นๆ ของแผ่นคุณสมบัติ ให้ลบเนื้อหาของกล่องคุณสมบัติ ชื่อริบบิ้น
- บันทึก ปิด และเปิดฟอร์มหรือรายงานอีกครั้ง
ริบบิ้น XML จะคงอยู่ในตาราง USysRibbons จนกว่าคุณจะลบออก ดังนั้นถ้าคุณต้องการให้ริบบิ้นที่กำหนดเองกลับคืน คุณสามารถทำได้โดยการตั้งค่าในคุณสมบัติ ชื่อริบบิ้น กลับไปเป็นค่าก่อนหน้า
ด้านบนของหน้า
ทำความเข้าใจกับตัวอย่างของ XML
ต่อไปนี้เป็นตัวอย่าง XML ที่ใช้ก่อนหน้าในบทความนี้ และภาพประกอบของริบบิ้นที่กำหนดเองที่ XML สร้างขึ้น
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon startFromScratch="false">
<tabs>
<tab idMso="TabCreate" visible="false" />
<tab id="dbCustomTab" label="A Custom Tab" visible="true">
<group id="dbCustomGroup" label="A Custom Group">
<control idMso="Paste" label="Built-in Paste" enabled="true"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>
|
ในตัวอย่างนี้ บรรทัดที่สองของ XML ตั้งค่าแอตทริบิวต์ startFromScratch ให้เป็น False การตั้งค่าให้เป็น False จะทำให้แน่ใจว่า Access จะไม่เปลี่ยนแปลงแท็บที่มีอยู่ทั้งหมด และเพิ่มแท็บใหม่ไปยังด้านขวามือของแท็บที่มีอยู่นั้น การตั้งค่าแอตทริบิวต์นี้ให้เป็น True จะเอาแท็บที่มีอยู่ทั้งหมดออกและแสดงเพียงแท็บที่คุณสร้างใน XML ของคุณ แม้ว่าคุณตั้งค่าแอตทริบิวต์ startFromScratch ให้เป็น False แล้ว คุณยังสามารถซ่อนแท็บใดแท็บหนึ่งได้ โดยจะแสดงในบรรทัดที่สี่ของ XML ซึ่งซ่อนแท็บ สร้าง ที่มีอยู่แล้วภายใน บรรทัดที่เหลือจะสร้างแท็บที่กำหนดเองและกลุ่มที่กำหนดเอง แล้วเพิ่มคำสั่ง วาง ที่มีอยู่แล้วภายในไปยังกลุ่มนั้นโดยการใช้บรรทัดต่อไปของ XML
<control idMso="Paste" label="Built-in Paste" enabled="true"/>
|
เพิ่มกลุ่มหรือตัวควบคุมเพิ่มเติมไปยังริบบิ้นที่กำหนดเองของคุณ คุณสามารถเพิ่มกลุ่มและตัวควบคุมเพิ่มเติมไปยังริบบิ้นของคุณโดยการเพิ่มบรรทัดที่เหมือนกันของ XML และการแทนที่ค่า idMso และ label อื่น ตัวอย่างเช่น เพื่อสร้างตัวควบคุมที่ส่งออกวัตถุที่เลือกในขณะนี้ไปยัง Excel ที่ใช้ XML ต่อไปนี้
<control idMso="ExportExcel" label="Export to Excel" enabled="true"/>
|
เมื่อต้องการเพิ่มตัวควบคุมไปยังกลุ่มเดียวกันเป็นคำสั่ง วาง ให้แทรกบรรทัดใหม่ของ XML ก่อนหรือหลังบรรทัดที่สร้างคำสั่ง วาง ทันที เมื่อต้องการสร้างกลุ่มใหม่ คุณสามารถคัดลอก วาง และปรับเปลี่ยน XML ที่สร้างกลุ่ม กลุ่มที่กำหนดเอง ตามข้างต้น ตัวอย่างต่อไปนี้แสดง XML ที่เพิ่มตัวควบคุมสองตัวควบคุมไปยังกลุ่มที่กำหนดเอง
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon startFromScratch="false">
<tabs>
<tab idMso="TabCreate" visible="false" />
<tab id="dbCustomTab" label="A Custom Tab" visible="true">
<group id="dbCustomGroup" label="A Custom Group">
<control idMso="Paste" label="Built-in Paste" enabled="true"/>
</group>
<group id="dbCustomGroup2" label="Another Custom Group">
<control idMso="ImportExcel" label="Import from Excel" enabled="true"/>
<control idMso="ExportExcel" label="Export to Excel" enabled="true"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>
|
XML นี้จะเพิ่มกลุ่มอื่นไปยัง แท็บที่กำหนดเอง ซึ่งตามที่แสดงในภาพประกอบต่อไปนี้ กลุ่มใหม่จะประกอบด้วยสองตัวควบคุม โดยตัวควบคุมหนึ่งเตรียมใช้งานการดำเนินการนำเข้าจาก Excel และอีกตัวควบคุมหนึ่งเตรียมใช้งานการดำเนินการส่งออกไปยัง Excel

หมายเหตุ แต่ละค่า ID ของกลุ่ม และ ID ของแท็บ ในริบบิ้นที่กำหนดเองจะต้องไม่ซ้ำกัน
เรียนรู้ค่า idMso ของคำสั่ง เมื่อต้องการเรียนรู้ค่า idMso ของคำสั่งที่มีอยู่แล้วภายใน ให้ใช้กระบวนงานต่อไปนี้:
- คลิก ปุ่ม Microsoft Office
แล้วคลิก ตัวเลือกการเข้าใช้งาน
- คลิก กำหนดเอง
- ย้ายตัวชี้มาไว้เหนือรายการที่ต้องการข้อมูล Access จะแสดงค่า idMso ของตัวควบคุมในคำแนะนำบนหน้าจอในวงเล็บ
เพิ่มคำสั่งเพื่อใช้งานแมโคร Access คุณสามารถเพิ่มความยืดหยุ่นไปยังริบบิ้นที่กำหนดเองของคุณได้มากขึ้นโดยการเพิ่มคำสั่งที่ใช้งานแมโคร Access ตัวอย่างเช่น สมมติว่าคุณได้สร้างแมโครที่ชื่อว่า MyMacro เมื่อต้องการเพิ่มคำสั่งไปยังริบบิ้นที่ใช้งานแมโครนั้น ให้เพิ่มบรรทัดต่อไปให้กับ XML ของคุณ
<button id="RunMyMacro" label="Run My Macro" onAction="MyMacro"/>
|
เมื่อต้องการเพิ่มตัวควบคุมไปยังกลุ่มเดียวกันเป็นคำสั่ง วาง ในตัวอย่างก่อนหน้านี้ ให้แทรกบรรทัดใหม่ของ XML ก่อนหรือหลังบรรทัดที่สร้างคำสั่ง วาง ทันที ตัวอย่างต่อไปนี้จะแสดง XML ที่เพิ่มคำสั่งนั้น
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon startFromScratch="false">
<tabs>
<tab idMso="TabCreate" visible="false" />
<tab id="dbCustomTab" label="A Custom Tab" visible="true">
<group id="dbCustomGroup" label="A Custom Group">
<control idMso="Paste" label="Built-in Paste" enabled="true"/>
<button id="RunMyMacro" label="Run My Macro" onAction="MyMacro"/>
</group>
<group id="dbCustomGroup2" label="Another Custom Group">
<control idMso="ImportExcel" label="Import from Excel" enabled="true"/>
<control idMso="ExportExcel" label="Export to Excel" enabled="true"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>
|
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการสร้างแมโคร ให้ดูการเชื่อมโยงในส่วน ดูเพิ่มเติม
ด้านบนของหน้า