AddIns mã PaceID

Liên hệ QC

langtuchungtinh360

Thành viên đã dừng hoạt động
Tham gia
7/10/13
Bài viết
1,062
Được thích
334
mọi người cho mình hỏi
trong Ribbon thì có control As IRibbonControl để lấy ID control của 1 nút lệnh trên Ribbon
Mã:
Sub onAction(control As IRibbonControl)
End Sub
vậy trong nút lệnh của Addins thì có cách nào tương tự cách trên để lấy được .Caption hay .TooltipText không hoặc cái gì đó tương tự không
như trong file đính kèm tại module 2
có hơn 10000 Sub để thực hiện cho 10000 lệnh, như thế thì bất tiện quá
mong được mọi người chỉ bảo giúp đỡ
 

File đính kèm

Nếu mình, mình sẽ làm như sau:
Trong code soạn thảo ribbon mình sẽ gắn 'Tag' cho nó: ví dụ Tag=1 cho đến tag=1000
Code trong Module được viết lại thành 1 sub duy nhất cho tất cả các 'Action' của control trên Ribbon
Sub onAction(): ChenPaceID (Clng(Control.Tag)): End Sub
 
Nếu mình, mình sẽ làm như sau:
Trong code soạn thảo ribbon mình sẽ gắn 'Tag' cho nó: ví dụ Tag=1 cho đến tag=1000
Code trong Module được viết lại thành 1 sub duy nhất cho tất cả các 'Action' của control trên Ribbon
Sub onAction(): ChenPaceID (Clng(Control.Tag)): End Sub
mình cảm ơn. nhưng đó không phải là Ribbon bác ạ. này hcir là menu tự tạo trong excel thôi
 
Code bạn mình sẽ sữa lại như sau:
Mã:
Sub TaoMenuPaceID(mStar As Long, mEnd As Long)
Application.ScreenUpdating = False
    Dim i As Long
    For i = mStar To IIf(mEnd > 10038, 10038, mEnd)
    With CommandBars(1).Controls.Add(Type:=msoControlButton)
    .Caption = i & " "
    .FaceId = i
    [COLOR=#ff0000].OnAction = "onAction" 'Sua cho nay [/COLOR]
    .TooltipText = i
    [COLOR=#ff0000].Tag = i      'Cho nay minh them vao[/COLOR]
    End With
    DoEvents
    Next i
Application.ScreenUpdating = True
End Sub

Code cho sự kiện OnAction

Mã:
Sub OnAction()
    ChenPaceID CLng(CommandBars.ActionControl.Tag)
End Sub
 
Code bạn mình sẽ sữa lại như sau:
Mã:
Sub TaoMenuPaceID(mStar As Long, mEnd As Long)
Application.ScreenUpdating = False
    Dim i As Long
    For i = mStar To IIf(mEnd > 10038, 10038, mEnd)
    With CommandBars(1).Controls.Add(Type:=msoControlButton)
    .Caption = i & " "
    .FaceId = i
    [COLOR=#ff0000].OnAction = "onAction" 'Sua cho nay [/COLOR]
    .TooltipText = i
    [COLOR=#ff0000].Tag = i      'Cho nay minh them vao[/COLOR]
    End With
    DoEvents
    Next i
Application.ScreenUpdating = True
End Sub

Code cho sự kiện OnAction

Mã:
Sub OnAction()
    ChenPaceID CLng(CommandBars.ActionControl.Tag)
End Sub
cảm ơn bác nhiều
cái em cần là cái này đây CommandBars.ActionControl.Tag

mà cái menu nó chạy chạy nhìn gà quá ^^- = 0
 
Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom