Mục lục:
Video: Nhiều người làm việc cùng lúc trên cùng file Excel trong mạng LAN hoặc Internet 2025
Trước Excel 2007, các lập trình viên VBA đã sử dụng đối tượng CommandBar để tạo các menu tùy chỉnh, các thanh công cụ tuỳ chỉnh và các phím tắt tùy chọn (nhấp chuột phải). Bắt đầu với Excel 2007, đối tượng CommandBar ở một vị trí khá kỳ lạ. Nếu bạn viết mã để tuỳ chỉnh một trình đơn hoặc thanh công cụ, Excel sẽ chặn mã đó và bỏ qua nhiều lệnh của bạn.
Thay vì hiển thị cải tiến giao diện đã được suy nghĩ cẩn thận của bạn, Excel 2007 (như các phiên bản sau) chỉ đơn giản là đổ các menu và thanh công cụ tùy chỉnh của bạn vào một thẻ Ribbon được đánh dấu mang tên Add-Ins.
Các tuỳ chọn trình đơn và thanh công cụ kết thúc trong Add-Ins → Menu Commands hoặc Add-Ins → Custom Toolbars group. Nhưng tùy chỉnh menu tắt (cũng sử dụng đối tượng CommandBar) vẫn hoạt động như nó luôn luôn có - tốt, loại.
Dòng dưới cùng? Các CommandBar đối tượng không phải là rất hữu ích nữa, nhưng nó vẫn là cách duy nhất để tùy chỉnh các menu tắt.
Thêm một mục mới vào trình đơn phím tắt Cell
Dưới đây, bạn sẽ tìm thấy mẫu mã cho biết thêm một mục mới vào trình đơn phím tắt xuất hiện khi bạn nhấp chuột phải vào một ô. Bạn sẽ có thể thích nghi các ví dụ này với nhu cầu của bạn.
Bạn có thể nâng cấp Tiện ích Thay đổi trường hợp một chút bằng cách làm cho nó có sẵn từ trình đơn phím tắt Cell.
Thủ tục AddToShortcut thêm một mục trình đơn mới vào trình đơn phím tắt Cell. Bạn có thể thích ứng nó để trỏ đến các macro của bạn bằng cách thay đổi thuộc tính Chú giải và Các tính năng Bật của đối tượng NewControl.
Sub AddToShortCut () Dim Bar Như CommandBar Dim NewControl Như CommandBarButton DeleteFromShortcut Set Bar = Ứng dụng. CommandBars ("Cell") Đặt NewControl = Bar. Kiểm soát. Thêm _ (Loại: = msoControlButton, ID: = 1, _ tạm thời: = Đúng) Với NewControl. Chú thích = "& Trường hợp Thay đổi". OnAction = "ChangeCase". Style = msoButtonIconAndCaption Kết thúc với End Sub
Khi bạn sửa đổi một shortcut menu, sửa đổi đó vẫn có hiệu lực cho đến khi bạn khởi động lại Excel. Nói cách khác, các trình đơn phím tắt đã sửa đổi không tự thiết lập lại khi bạn đóng bảng tính có chứa mã VBA. Vì vậy, nếu bạn viết mã để sửa đổi một menu tắt, bạn hầu như luôn luôn viết mã để đảo ngược hiệu ứng của sửa đổi của bạn.
Thủ tục DeleteFromShortcut loại bỏ các mục trình đơn mới từ trình đơn phím tắt Cell:
Sub DeleteFromShortcut () On Error Tiếp tục ứng dụng tiếp theo. CommandBars ("Cell"). Kiểm soát _ ("& Trường hợp Thay đổi"). Xóa End Sub
Điều này cho thấy mục trình đơn mới hiển thị như thế nào sau khi bạn nhấp chuột phải vào một ô.
Trình đơn Phím tắt của điện thoại hiển thị mục trình đơn tùy chỉnh: Thay đổi trường hợp.Lệnh thực tế đầu tiên sau khi khai báo một vài biến gọi thủ tục DeleteFromShortcut. Câu lệnh này bảo đảm rằng chỉ có một mục Trình đơn Thay đổi trường hợp xuất hiện trên menu Tế bào Phím tắt. Hãy thử nhận xét rằng dòng (đặt một apostrophe ở đầu dòng) và chạy các thủ tục một vài lần - nhưng không nhận được mang đi!
Nhấp chuột phải vào một ô, và bạn có thể thấy nhiều trường hợp của mục trình đơn Trường hợp Thay đổi. Loại bỏ tất cả các mục bằng cách chạy DeleteFromShortcut nhiều lần (một lần cho mỗi mục trình đơn bổ sung).
Cuối cùng, bạn cần một cách để thêm các mục trình đơn phím tắt khi mở bảng tính và để xóa các mục trình đơn khi sổ làm việc được đóng lại. Làm điều này là dễ dàng. Chỉ cần thêm hai thủ tục sự kiện này vào mô đun mã ThisWorkbook:
Private Sub Workbook_Open () Gọi AddToShortCut End Sub Private Sub Workbook_BeforeClose (Hủy như Boolean) Gọi DeleteFromShortcut End Sub
Thủ tục Workbook_Open được thực hiện khi bảng tính được mở ra, và thủ tục Workbook_BeforeClose được thực hiện trước khi bảng tính đóng lại. Chỉ cần những gì bác sĩ đã ra lệnh.
Sự khác biệt trong Excel 2013 và Excel 2016 là gì?
Nếu bạn đã sử dụng VBA để làm việc với các menu tắt trong Excel 2007 hoặc sớm hơn, bạn cần phải nhận thức được sự thay đổi đáng kể.
Trong quá khứ, nếu mã của bạn đã sửa đổi một trình đơn phím tắt, sửa đổi đó đã có hiệu lực cho tất cả sổ làm việc. Ví dụ: nếu bạn đã thêm một mục mới vào trình đơn Nhấp chuột phải, mục mới sẽ xuất hiện khi bạn nhấp chuột phải vào một ô trong bất kỳ bảng tính (cộng với các bảng tính khác mà bạn mở sau đó). Nói cách khác, các sửa đổi của shortcut-menu đã được thực hiện ở mức application .
Excel 2013 và Excel 2016 sử dụng giao diện tài liệu đơn và ảnh hưởng đến các menu tắt. Những thay đổi bạn thực hiện cho các menu phím tắt chỉ ảnh hưởng đến cửa sổ bảng tính đang hoạt động. Khi bạn thực thi mã thay đổi trình đơn phím tắt, trình đơn phím tắt cho các cửa sổ khác ngoài cửa sổ đang hoạt động sẽ không bị thay đổi. Đây là một sự ra đi triệt để từ cách mọi thứ được sử dụng để làm việc.
Một xoắn khác: Nếu người dùng mở một bảng tính (hoặc tạo một bảng tính mới) khi cửa sổ đang hoạt động hiển thị menu phím tắt đã sửa đổi, bảng tính mới cũng sẽ hiển thị menu phím tắt đã sửa đổi. Nói cách khác, cửa sổ mới hiển thị các menu tắt giống như cửa sổ đang hoạt động khi cửa sổ mới được mở.
Dòng dưới cùng: Trong quá khứ, nếu bạn mở một bảng tính hoặc add-in mà đã sửa đổi các menu tắt, bạn có thể yên tâm rằng các menu tắt được sửa đổi sẽ có sẵn trong tất cả các workbooks. Bạn không còn có sự đảm bảo đó.