Bài 4 - Dùng Office Custom UI Editor tạo thêm tab trên Ribbon trong Excel


{tocify} $title={Table of Contents}

Vì sao phải thêm Tab trên thanh Ribbon?

Nếu bạn là người thường sử dụng Microsoft Exel, thường dùng một số tính năng lập đi lập lại trong công việc hằng ngày. Mỗi tính năng lại nằm trên một file Macro, nếu nhiều file quá thì rất khó kiểm soát nơi lưu và tính năng của nó.
Bây giờ xin mời các bạn xem hình phía dưới. Trên thanh Ribbon có thêm một tab tên UExcel. Trên tab UExcel lại có nhiều nút với nhiều chức năng. Nếu chúng ta có thể chèn thêm một tab trên thanh Ribbon như trên hình thì tiện quá phải không các bạn.


Cách thêm Tab trên thanh Ribbon

Trong bài viết này tôi sẽ hướng dẫn các bạn cách tạo và chèn thêm một tab công cụ vào thanh Ribbon. Tab có nhiều chức năng sẽ giúp ích cho công việc hằng ngày của các bạn.

1. Cài đặt Office Custom UI Editor

Trước tiên các bạn truy cập vào đường dẫn bên dưới để tải phầm mềm Office Custom UI Editor về.
Sau khi tải về, giải nén ra xong thì các bạn mở file CustomUIEditor.exe để bắt đầu việc tạo cấu trúc hiển thị tab trên Ribbon. Nếu khi mở CustomUIEditor.exe, mà các bạn nhận được thông báo như hình:


Thông báo này có nghĩa là máy tính của bạn chưa cài đặt .Net Framework 3.5. Tạm thời thì cán bạn chọn Cancel. Mặc định từ Windows 7 trở về sau thì .Net Framework 3.5 đã được thêm vào khi cài đặt hệ điều hành. Để bật .Net Framework 3.5 lên thì các bạn tham khảo bài viết sau:
Sau khi bật .Net Framework lên, các bạn quay lại mở phần mềm CustomUIEditor.exe lên. Giao diện ban đầu của phầm mềm Office Custom UI Editor như sau: 



2. Thêm tab trên Ribbon dùng Office Custom UI Editor

Đầu tiên các bạn chọn File \ Open trên CustomUIEditor, tìm đến file Add-In của bạn và chọn Open để mở lên.
Tiếp theo nhấp phải vào file mới Open và chọn tab phù hợp
  • Office 2010 Custom UI Part: nếu bạn đang sử dụng Office 2010, 2013, 2016
  • Office 2007 Custom UI Part: nếu bạn đang sử dụng Office 2003, Office 2007

Ở đây tôi chọn Office 2010 Custom UI Part. Phần mềm sẽ thêm một lớp giao diện vào file Add-In của bạn tên CustomUI14.xml (hoặc CustomUI.xml).
Tiếp theo các bạn nhấp chọn file xml đó, rồi vào tab Insert \ Sample XML \ Excel - A Custom Tab. Khung soạn code XML xuất hiện như hình:

Trong khung soạn code (hình dưới), các bạn cần chú ý các vị trí sau:
    1. Mỗi tab Menu đều có tên, trong code được chỉ định là label.
    2. Vi trí xuất hiện của tab cần chèn, như trong hình tab sẽ xuất hiện sau Home.
    3. Trên mỗi tab, có nhiều Group, mỗi group đều có một id duy nhất.
    4. Tên của group trên tab.
    5. Mỗi group có thể thêm nhiều đối tượng khác nhau (button, label, editbox, gallery, item,...).
    6. 7: Mỗi đối tượng có id, tên, kích thước icon, loại icon, hàm được thực thi khi click vào đối tượng.

Ví dụ thực tế:

Hiển thị thêm 1 tab có tên myTab trên Ribbon, trong myTab có một Group với tên là First Lesson, trong group có một nút nhấn tên là Hello. Khi nhấp vào nút Hello thì màn hình sẽ xuất hiện MsbBox với nội dung là:

Xin chao moi nguoi, toi moi bat dau hoc VBA - Excel.
Chuc moi nguoi mot ngay vui ve! 
Lời giải: các bạn làm theo các bước sau
Bước 1: Mở Excel lên, và lưu lại với định dạng Add-In. Ở đây mình lưu lại với tên myTab trên desktop cho dễ tìm.
Bước 2: Mở Custom UI Editor lên, rồi Open file myTab mới tạo. Tiếp theo chọn Insert \ Sample XML \ Excel - A Custom Tab.
Bước 3: Xóa hết code hiện tại và dán lên đoạn code bên dưới vào, nhấn Save để lưu lại.

<customui xmlns="http://schemas.microsoft.com/office/2009/07/customui"> 
    <ribbon>
        <tabs> 
            <tab id="customTab" insertaftermso="TabView" label="myTab"> 
                <group id="cusGroup1" label="First Lesson"> 
                    <button id="btn1" imagemso="HappyFace" label="Hello" onaction="HelloCall" size="large"></button>
                </group> 
            </tab>
        </tabs>
    </ribbon>
</customui>
Bước 4: Chèn file Add-In vừa thao tác vào Excel, và kết quả được như hình.


Ở đây, khi nhấn vào nút Hello, thông báo lỗi như trên hình sẽ xuất hiện. Nguyên nhân là do chúng ta chưa viết đoạn chương trình thực thi cho nút nhấn Hello.

Bước 5:. Viết đoạn chương trình thực thi khi nhấn nút Hello.
Trên khung làm việc của excel, mình mở Visual Basic (tab Developer) lên. Nhấp phải vào và chọn Insert \ Module.


Tiếp theo các bạn nhập đoạn code như hình bên dưới vào Module 1.



Trở về khung làm việc Excel, các bạn nhấn vào nút Hello trên tab myTab, kết quả đã được như mong muốn nhé.


Post a Comment

Previous Post Next Post

Comments