Bật/tắt Ribbon bằng VBA

Liên hệ QC

minhxaydungvinh

Thành viên chính thức
Tham gia
25/12/10
Bài viết
85
Được thích
7
Các bác cho em hỏi trong VBA có cách nào để bật/tắt 1 tab Ribbon không ạ? Ví dụ mình tạo 1 Tab mới là "Ribbon Custom" đứng trước Tab Home. Có cách nào để bật hoặc tắt Tab "Ribbon Custom" theo ý mình được không ạ?
 
Các bác cho em hỏi trong VBA có cách nào để bật/tắt 1 tab Ribbon không ạ? Ví dụ mình tạo 1 Tab mới là "Ribbon Custom" đứng trước Tab Home. Có cách nào để bật hoặc tắt Tab "Ribbon Custom" theo ý mình được không ạ?
Không biết thế này có được chưa bạn.
 

File đính kèm

  • CustomTab.xlsm
    32.5 KB · Đọc: 66
Upvote 0
Bác cho em hỏi
Mã:
Call RefreshRibbon(Tag:="Custom Tab")
thì Tag ở đây chính là thuộc tính Label phải không ạ?
Mã:
<tab id="CustomTab" label="Custom Tab" insertBeforeMso="TabHome" getVisible="GetVisible">
Nếu em dùng getLabel thì phải sửa code thế nào ạ
 
Upvote 0
Bác cho em hỏi
Mã:
Call RefreshRibbon(Tag:="Custom Tab")
thì Tag ở đây chính là thuộc tính Label phải không ạ?
Mã:
<tab id="CustomTab" label="Custom Tab" insertBeforeMso="TabHome" getVisible="GetVisible">
Nếu em dùng getLabel thì phải sửa code thế nào ạ
Tag ở đây là tên tham số trong SUB tự tạo thôi
Public Sub RefreshRibbon(Tag As String)
Vn_Ribbon.Invalidate
End Sub

Nhưng bạn nhìn thấy là tham số Tag này hiện thời không được dùng trong SUB nên vô dụng. Vì thế bạn có thể sửa thành
Public Sub LoadRB(ribbon As IRibbonUI)
Set Vn_Ribbon = ribbon
Call RefreshRibbon(Tag:="Bun cha. Pho bo")
End Sub

Thì code vẫn "chạy" ngon.

Cái Tag này 99,99% là của một tập tin khác, đã bị cắt xén để làm ví dụ cho bạn.
 
Upvote 0
Tag ở đây là tên tham số trong SUB tự tạo thôi


Nhưng bạn nhìn thấy là tham số Tag này hiện thời không được dùng trong SUB nên vô dụng. Vì thế bạn có thể sửa thành


Thì code vẫn "chạy" ngon.

Cái Tag này 99,99% là của một tập tin khác, đã bị cắt xén để làm ví dụ cho bạn.
Đúng là lấy từ cái VnRibbon của mình sửa lại, nhưng còn sơ xuất.
Bác cho em hỏi
Mã:
Call RefreshRibbon(Tag:="Custom Tab")
thì Tag ở đây chính là thuộc tính Label phải không ạ?
Mã:
<tab id="CustomTab" label="Custom Tab" insertBeforeMso="TabHome" getVisible="GetVisible">
Nếu em dùng getLabel thì phải sửa code thế nào ạ
Bạn sửa lại code thế này nhé.
Mã:
Public Vn_Ribbon As IRibbonUI
Public Sub LoadRB(ribbon As IRibbonUI)
    Set Vn_Ribbon = ribbon
    Vn_Ribbon.Invalidate
End Sub
Sub GetVisible(control As IRibbonControl, ByRef visible)
        If Sheet1.Range("I8").Value = True Then
            visible = True
        Else
            visible = False
        End If
 End Sub
Sub HelloTheRibbon(control As IRibbonControl)
    MsgBox "Welcome the Ribbon! Goodbye to the Menu!", vbInformation
End Sub
 
Upvote 0
Các bác cho em hỏi, làm sao để làm mờ hoặc vô hiệu các nút trên Ribbon khi đang trong chế độ nhập liệu vậy. Vì em tạo Ribbon bằng Ribbon Creator của bác Nguyen Huu Thang nên không biết sửa. Em cảm ơn!
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom