Khi ai đó đang sử dụng sổ làm việc của Lorenzo, anh ta chỉ muốn người dùng có thể truy cập phím F2. Anh ấy tự hỏi liệu có cách nào để tắt tất cả các phím chức năng trong Excel, ngoại trừ phím F2?

Có một cách, nhưng nó phải được thực hiện bằng cách sử dụng macro. Cụ thể, bạn sẽ muốn sử dụng phương thức OnKey của đối tượng Ứng dụng. Mã này sẽ vô hiệu hóa tất cả các phím chức năng ngoại trừ F2:

Private Sub Workbook_Open()

Application.OnKey "{F1}", ""

Application.OnKey "{F3}", ""

Application.OnKey "{F4}", ""

Application.OnKey "{F5}", ""

Application.OnKey "{F6}", ""

Application.OnKey "{F7}", ""

Application.OnKey "{F8}", ""

Application.OnKey "{F9}", ""

Application.OnKey "{F10}", ""

Application.OnKey "{F11}", ""

Application.OnKey "{F12}", ""

End Sub

Macro phải được thêm vào mô-đun ThisWorkbook và nó sẽ chạy tự động khi sổ làm việc được mở.

Nếu muốn, bạn có thể làm cho macro ngắn hơn một chút:

Private Sub Workbook_Open()

Dim sTemp As String     Dim J As Integer

For J = 1 to 12         If J <> 2 Then             sTemp = "{F" & Trim(Str(J)) & "}"

Application.OnKey sTemp, ""

End If     Next J End Sub

Bạn cũng sẽ muốn đảm bảo rằng khi đóng sổ làm việc, bạn bật lại tất cả các phím chức năng. Macro này, một lần nữa, nên được thêm vào mô-đun ThisWorkbook:

Private Sub Workbook_BeforeClose(CANCEL As Boolean)

Application.OnKey "{F1}"

Application.OnKey "{F3}"

Application.OnKey "{F4}"

Application.OnKey "{F5}"

Application.OnKey "{F6}"

Application.OnKey "{F7}"

Application.OnKey "{F8}"

Application.OnKey "{F9}"

Application.OnKey "{F10}"

Application.OnKey "{F11}"

Application.OnKey "{F12}"

End Sub

Bạn cũng có thể sử dụng phiên bản ngắn hơn của cùng một mã:

Private Sub Workbook_BeforeClose(CANCEL As Boolean)

Dim sTemp As String     Dim J As Integer

For J = 1 to 12         If J <> 2 Then             sTemp = "{F" & Trim(Str(J)) & "}"

Application.OnKey sTemp         End If     Next J End Sub

ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.

Mẹo này (13523) áp dụng cho Microsoft Excel 2007, 2010, 2013, 2016, 2019 và Excel trong Office 365.