ต้องการเพิ่มแท็บ/ปุ่มเมนูเองใน Ribbon ของ Excel? บทความนี้สอนสร้าง Custom Ribbon ด้วย XML และ Office RibbonX Editor
ขั้นตอนเพิ่ม Custom Ribbon ด้วย XML
ตัวอย่าง: สร้างปุ่มบน Ribbon ที่กดแล้วโชว์ MsgBox แสดงข้อมูลนักเรียน
ขั้นตอนที่ 1: สร้างไฟล์ Excel Macro-Enabled (.xlsm)
- เปิดไฟล์ Excel > File > Save a Copy
- ตั้งชื่อ > Save as type: Excel Macro-Enabled Workbook (*.xlsm) > Save
ขั้นตอนที่ 2: ใส่โค้ด VBA
- Developer > Visual Basic (Alt+F11) > Insert > Module
- วางโค้ด:
Sub MacroZ(control As IRibbonControl)
MsgBox "Here, You will see the Marksheet of the Students."
End Sub
- Ctrl+S บันทึก > ปิด Excel
ขั้นตอนที่ 3: ดาวน์โหลด Office RibbonX Editor
- ค้นหา "Office RibbonX Editor github" > ดาวน์โหลด Installer
- ติดตั้ง: Next > Next > Next > Install > Finish
ขั้นตอนที่ 4: เปิดไฟล์ .xlsm ใน Office RibbonX Editor
- เปิด Office RibbonX Editor > Open > เลือกไฟล์ .xlsm ที่สร้างไว้
ขั้นตอนที่ 5: ใส่ XML และ Validate
- คลิกไฟล์ Excel ในซ้าย > Insert > Office 2007 Custom UI Part
- วาง XML:
<customUI xmlns="https://schemas.microsoft.com/office/2006/01/customui">
<ribbon>
<tabs>
<tab idMso="TabHome">
<group id="customGroup1" label="My Group" insertAfterMso="GroupEditingExcel">
<button id="customButton1" label="Click Me" size="large" onAction="MacroZ" imageMso="HappyFace" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>
- กด Validate ตรวจสอบโค้ด > OK
- File > Save As > บันทึก
ขั้นตอนที่ 6: ทดสอบ Custom Ribbon
- เปิดไฟล์ .xlsm ใหม่ > จะเห็นปุ่ม Click Me ในกลุ่ม My Group บนแท็บ Home
- คลิกปุ่ม > จะโชว์ MsgBox ตามโค้ด VBA
สิ่งที่ควรจำ
- ปิดไฟล์ Excel ก่อนเปิดใน Office RibbonX Editor
- เปลี่ยนชื่อ macro ใน onAction ให้ตรงกับโค้ด VBA
- Validate XML เสมอก่อนบันทึก
สรุป
สร้าง Custom Ribbon ได้โดย: 1) สร้าง .xlsm 2) เขียน VBA 3) ใช้ Office RibbonX Editor ใส่ XML 4) Validate และบันทึก เยี่ยมชม ExcelDemy สำหรับบทความ XML/Excel เพิ่มเติม