Ẩn toolbar tự tạo?

quochoi_05

Member
Hội viên mới
Mình có đoạn code VBA tạo 2 nút ToolBar là "NUT 1" và "NUT 2"

Function CreatToolBar()
Dim cmb As CommandBar
Dim cbc As Office.CommandBarButton
Dim picPicture As IPictureDisp
For Each cbar In CommandBars
If cbar.Name = "MyToolBar" Then
cbar.Delete
End If
Next
Set cmb = Application.CommandBars.Add("MyToolBar")
cmb.Visible = True
Set cbc = cmb.Controls.Add(msoControlButton)
cbc.Caption = "Nut 1"
cbc.Style = msoButtonCaption

Set cbc = cmb.Controls.Add(msoControlButton)
cbc.Caption = "Nut 2"
cbc.Style = msoButtonCaption
End Function

Private Sub Form_Load()
CreatToolBar
End Sub

Trên form có thêm 2 CommandButton: C1 và C2
mình muốn khi bấm nút C2 thì Toolbar "NUT 2" bị ẩn đi, và bấm nút C1 thì "NUT 2" hiện lại.
Các bạn giúp mình với.
 
Ðề: Ẩn toolbar tự tạo?

Mình có đoạn code VBA tạo 2 nút ToolBar là "NUT 1" và "NUT 2"

Function CreatToolBar()
Dim cmb As CommandBar
Dim cbc As Office.CommandBarButton
Dim picPicture As IPictureDisp
For Each cbar In CommandBars
If cbar.Name = "MyToolBar" Then
cbar.Delete
End If
Next
Set cmb = Application.CommandBars.Add("MyToolBar")
cmb.Visible = True
Set cbc = cmb.Controls.Add(msoControlButton)
cbc.Caption = "Nut 1"
cbc.Style = msoButtonCaption

Set cbc = cmb.Controls.Add(msoControlButton)
cbc.Caption = "Nut 2"
cbc.Style = msoButtonCaption
End Function

Private Sub Form_Load()
CreatToolBar
End Sub

Trên form có thêm 2 CommandButton: C1 và C2
mình muốn khi bấm nút C2 thì Toolbar "NUT 2" bị ẩn đi, và bấm nút C1 thì "NUT 2" hiện lại.
Các bạn giúp mình với.

Bạn xài một control thuộc thư viện của Office chứ không phải của riêng Access.

Nếu bạn khai báo commandbar trong một function hay một sub thì nó chỉ được hiểu trong hàm hoặc thủ tục đó. Do vậy bạn nên định nghĩa chúng ở khu vực Declaration của Module hoặc Form Class.

Để ẩn hiện một control trong commandbar, bạn có thể sử dụng các lệnh sau:

Hiện:
cmb.Controls(0).Visible = True

Ẩn:
cmb.Controls(0).Visible = False


Nếu bạn tạo một toolbar trực tiếp từ Access thì bạn có thể dùng lệnh sau:

Hiện:
DoCmd.ShowToolbar "Toolbar name", acToolbarYes

Ẩn:
DoCmd.ShowToolbar "Toolbar name", acToolbarNo
 
Ðề: Ẩn toolbar tự tạo?

Anh Phat có lệnh nào mà cho ẩn tất cả các toolbars buil_in của access khong?
(Trong mục Tool/ ******* thì mình bỏ chọn mục Allow buil in ...)
 
Ðề: Ẩn toolbar tự tạo?

Anh Phat có lệnh nào mà cho ẩn tất cả các toolbars buil_in của access khong?
(Trong mục Tool/ ******* thì mình bỏ chọn mục Allow buil in ...)

Không có hoặc không biết.

Hiện tại chỉ biết dùng DoCmd.ShowToolbar cho từng em thôi. Có điều phải biết tên em đó.

Để nghiên cú lại xem sao.
 
Ðề: Ẩn toolbar tự tạo?

Anh Phat có lệnh nào mà cho ẩn tất cả các toolbars buil_in của access khong?
(Trong mục Tool/ ******* thì mình bỏ chọn mục Allow buil in ...)


Không hiểu nghĩa của chữ bạn gọi "ẩn" là gì, tình huống nào mà bạn lại có ý định đó ...

Nếu muốn không cho toolbar của Access tồn tại (và không thể hỉển thị được) thì đầu chương trình bạn xóa nó đi:


For Each cbar In CommandBars
cbar.Delete
Next

Muốn biết tên của từng em đó thì :

For Each cbar In CommandBars
Msgbox (cbar.Name)

Next
 
Sửa lần cuối:
Ðề: Ẩn toolbar tự tạo?

Không hiểu nghĩa của chữ bạn gọi "ẩn" là gì, tình huống nào mà bạn lại có ý định đó ...

Nếu muốn không cho toolbar của Access tồn tại (và không thể hỉển thị được) thì đầu chương trình bạn xóa nó đi:


For Each cbar In CommandBars
cbar.Delete
Next

Muốn biết tên của từng em đó thì :

For Each cbar In CommandBars
Msgbox (cbar.Name)

Next
Cám ơn bạn
Mình tạo toolbar có nhiều nút, khi vào 1 form nào đó thì mình sẽ cho vài nút ẩn đi không thực hiện được.
 

CẨM NANG KẾ TOÁN TRƯỞNG


Liên hệ: 090.6969.247

KÊNH YOUTUBE DKT

Cách làm file Excel quản lý lãi vay

Đăng ký kênh nhé cả nhà

SÁCH QUYẾT TOÁN THUẾ


Liên hệ: 090.6969.247

Top