Có cách nào ẩn chức nang Paste và Cut trong Excel không?

Liên hệ QC

titanic20072007

Thành viên thường trực
Tham gia
10/7/07
Bài viết
213
Được thích
8
Nghề nghiệp
Giáo viên
Mình muốn trong tệp Excel của mình khi người dùng chọn menu Edit và trong menu khi chuột phải thì hai chức năng Cut và Paste không có hoặc không cho chọn còn các chức năng khác vẫn cho choạn bình thường. Xin hỏi các bạn có cách nào không?
 
Đơn giản là bạn Protect sheet lại. Chứ sửa thanh menu Edit bác Bill kiện chết đấy !
 
Upvote 0
Cde :

Ẩn trên RigthClick :

Sub Disable_Buttons()
On Error Resume Next
Dim oC1 As CommandBar
Set oC1 = Application.CommandBars("CELL")
oC1.Controls("Cu&t").Enabled = False
oC1.Controls("&Copy").Enabled = False
oC1.Controls("&Paste").Enabled = False
oC1.Controls("Paste &Special...").Enabled = False
oC1.Controls("&Insert...").Enabled = False
oC1.Controls("&Delete...").Enabled = False
oC1.Controls("Clear Co&ntents").Visible = False
oC1.Controls("Insert Co&mment").Visible = False
oC1.Controls("&Format Cells...").Visible = False
oC1.Controls("Pic&k From Drop-down List...").Visible = False
oC1.Controls("Add &Watch").Visible = False
oC1.Controls("&Create List...").Visible = False
oC1.Controls("&Hyperlink...").Visible = False
oC1.Controls("&Look Up...").Visible = False
End Sub

Sub hienRClick()
ResetMenu
End Sub

Ẩn MenuBar :

Sub an()
CommandBars("view").FindControl(ID:=30045).Enabled = False
CommandBars("Tools").FindControl(ID:=30017).Enabled = False
CommandBars("Tools").FindControl(ID:=943).Enabled = False
CommandBars("Tools").FindControl(ID:=797).Enabled = False
CommandBars("Tools").FindControl(ID:=522).Enabled = False
CommandBars("Tools").FindControl(ID:=30029).Enabled = False
CommandBars("Format").FindControl(ID:=30026).Enabled = False
CommandBars("Toolbar List").Enabled = False
End Sub

Hiện lại MenuBar :

Public Sub hien()
CommandBars("view").FindControl(ID:=30045).Enabled = True
CommandBars("Tools").FindControl(ID:=30017).Enabled = True
CommandBars("Tools").FindControl(ID:=943).Enabled = True
CommandBars("Tools").FindControl(ID:=797).Enabled = True
CommandBars("Tools").FindControl(ID:=522).Enabled = True
CommandBars("Tools").FindControl(ID:=30029).Enabled = True
CommandBars("Format").FindControl(ID:=30026).Enabled = True
CommandBars("Toolbar List").Enabled = True
End Sub

Bạn nghiên cứu nhé
Nếu đúng ý bạn hôm sau tôi up Ví dụ cho đúng yêu cầu của bạn
 
Lần chỉnh sửa cuối:
Upvote 0
Cho em hỏi 1 câu nha! Không biết có cách nào để biết được ID của tất cả các lệnh trong Excel ko? (Menu + phím tắt)
 
Lần chỉnh sửa cuối:
Upvote 0
Mình muốn trong tệp Excel của mình khi người dùng chọn menu Edit và trong menu khi chuột phải thì hai chức năng Cut và Paste không có hoặc không cho chọn còn các chức năng khác vẫn cho choạn bình thường. Xin hỏi các bạn có cách nào không?
Bạn thử cách này xem
Mã:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Application.CutCopyMode = False
End Sub
 
Upvote 0
Cảm ơn các bạn. Mình xẽ thử xem có gì mong các bạn giúp tiếp.

Xin cho hỏi đặt mấy thủ tục đó ở đâu mình đạt trong modun sao không được?
Vấn đề của mình là như thế này. Mình có một tệp muốn đưa cho mọi người trong cơ quan nhập dữ liệu rồi tổng hợp lại trong đó mình đã đặt một số lệnh kết xuất dữ liệu sang một sheet khác (Sheet này được mình đặt protiec để mọi người không làm mất công thức) nhưng khi người dùng sử dụng chức năng Cut rồi Paste thì phần kết xuất báo lỗi không ra được kết quả còn nếu copy rồi Paste Special thì không lỗi vì vậy mình muốn ẩn hai dòng lệnh Cut và Paste trên menu và chuột phải để không cho họ không sử dụng nhầm. Mong các bạn giúp đỡ. Lâu rồi mình có đọc được của ai đó trên diễn đàn này cách ẩn các mục trong menu nhưng không tìm ra ai biết chỉ giùm mình với. Cảm ơn mọi người.
 
Upvote 0
Có rồi bạn thích sao là tùy bạn :
Code:
Sub Disable_Buttons()
On Error Resume Next
Dim oC1 As CommandBar
Set oC1 = Application.CommandBars("CELL")
oC1.Controls("Cu&t").Enabled = False
oC1.Controls("&Copy").Enabled = False
oC1.Controls("&Paste").Enabled = False
oC1.Controls("Paste &Special...").Enabled = False
oC1.Controls("&Insert...").Enabled = False
oC1.Controls("&Delete...").Enabled = False
oC1.Controls("Clear Co&ntents").Visible = False
oC1.Controls("Insert Co&mment").Visible = False
oC1.Controls("&Format Cells...").Visible = False
oC1.Controls("Pic&k From Drop-down List...").Visible = False
oC1.Controls("Add &Watch").Visible = False
oC1.Controls("&Create List...").Visible = False
oC1.Controls("&Hyperlink...").Visible = False
oC1.Controls("&Look Up...").Visible = False
End Sub

dòng bị tô đỏ là mất luôn trong RightClick
dùng vào chỗ nào là tùy bạn có thể đặt luôn trong Sheet đó nếu bạn muốn (Worksheet_Activate thì khi sheet đó hiện lên là thi hành ngay)
Bạn có thể gởi vdụ sang mình làm cho nếu bạn ko làm đc
Mình làm như bvạn nhưng không được bạn ơi. Bạn thử làm ẩn các mục đóp trong một tệp Excel là ví dụ đi. Cảm ơn bạn.
 
Upvote 0
Xin cho hỏi đặt mấy thủ tục đó ở đâu mình đạt trong modun sao không được?
Vấn đề của mình là như thế này. Mình có một tệp muốn đưa cho mọi người trong cơ quan nhập dữ liệu rồi tổng hợp lại trong đó mình đã đặt một số lệnh kết xuất dữ liệu sang một sheet khác (Sheet này được mình đặt protiec để mọi người không làm mất công thức) nhưng khi người dùng sử dụng chức năng Cut rồi Paste thì phần kết xuất báo lỗi không ra được kết quả còn nếu copy rồi Paste Special thì không lỗi vì vậy mình muốn ẩn hai dòng lệnh Cut và Paste trên menu và chuột phải để không cho họ không sử dụng nhầm. Mong các bạn giúp đỡ. Lâu rồi mình có đọc được của ai đó trên diễn đàn này cách ẩn các mục trong menu nhưng không tìm ra ai biết chỉ giùm mình với. Cảm ơn mọi người.

Có rồi bạn thích sao là tùy bạn :
Code:
Sub Disable_Buttons()
On Error Resume Next
Dim oC1 As CommandBar
Set oC1 = Application.CommandBars("CELL")
oC1.Controls("Cu&t").Enabled = False
oC1.Controls("&Copy").Enabled = False

oC1.Controls("&Paste").Enabled = False
oC1.Controls("Paste &Special...").Enabled = False
oC1.Controls("&Insert...").Enabled = False
oC1.Controls("&Delete...").Enabled = False
oC1.Controls("Clear Co&ntents").Visible = False
oC1.Controls("Insert Co&mment").Visible = False
oC1.Controls("&Format Cells...").Visible = False
oC1.Controls("Pic&k From Drop-down List...").Visible = False
oC1.Controls("Add &Watch").Visible = False
oC1.Controls("&Create List...").Visible = False
oC1.Controls("&Hyperlink...").Visible = False
oC1.Controls("&Look Up...").Visible = False

End Sub

dòng bị tô đỏ là mất luôn trong RightClick
dùng vào chỗ nào là tùy bạn có thể đặt luôn trong Sheet đó nếu bạn muốn (Worksheet_Activate thì khi sheet đó hiện lên là thi hành ngay)
Bạn có thể gởi vdụ sang mình làm cho nếu bạn ko làm đc
 
Upvote 0
Bổ sung :

Phục hồi lai
Code:
ResetMenu
Khi nào bạn ko muốn thì đặt lậnhh đó là phục hồi lại Rightclick của Êxcl
 
Upvote 0
Upvote 0
Web KT

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

Back
Top Bottom