Vô hiệu hóa phím F1 khi đang mở hộp Find and Replace

  • Thread starter Thread starter dskhoa
  • Ngày gửi Ngày gửi
Liên hệ QC
Mình có 1 bảng, trong đó ô dữ liệu cần tìm là Tên thuốc C10="tên thuốc"", tên thuốc là ngẫu nhiên như abcEEE hay abcFFF abcAAA. Trong đó thao tác tìm thuốc abcFFF là Find "abc", nhấn ESC, chọn thuốc abcFFF bằng phím UP DOWN, sang 2 ô vào ô nhập số lượng, nhấn F2 để edit (cộng thêm số lượng). Có trường hợp chưa kịp bấm ESC (còn trong bảng FIND) mình đã bấm F2 và nhầm sang F1 thì bảng Help hiện ra.
1. Chỗ đỏ đỏ thực ra là chọn thuốc trong cửa sổ Find, tức thao tác trước khi nhấn ESC. Vậy thứ tự phải là: "Trong đó thao tác tìm thuốc abcFFF là Find "abc", chọn thuốc abcFFF bằng phím UP DOWN, nhấn ESC, sang 2 ô vào ô nhập số lượng, nhấn F2 để edit (cộng thêm số lượng)"

Vấn đề của bạn mà bạn trình bầy cẩu thả. Bó tay.

2.Tôi trả lời cho bài #1, tức cho trường hợp cụ thể.
Thao tác là Ctrl F (value cần tìm) --> ESC ---> F2 rồi sửa.
Do ngón tay em to (tay to) nên em thường xuyên bấm nhầm phím F1 --> hiện bảng help
Tức trường hợp nhấn nhầm F1 sau khi đóng cửa sổ Find - sau khi nhấn ESC.

Bây giờ bạn lại nói là bạn nhấn F1 trong cửa sổ Find, trước khi nhấn ESC.

Tôi đã trả lời trường hợp cụ thể mà bạn viết.

Ngoài ra tôi không thích khi người ta hỏi một điều nhưng sau đó lại thay bằng một điều khác. Không thích khi người ta thay đổi luật chơi giữa lúc đang chơi.

Tôi trả lời lần cuối. Tôi đính kèm tập tin để thử nghiệm. Trong tập tin này khi nào bạn muốn bắt đầu từ "lúc này" sẽ vô hiệu hóa F1 thì hãy nhấn Ctrl + q. Khi nào lại muốn "bật lại" F1 thì nhấn Ctrl + q lần nữa.

Hãy thử F1 trong cửa sổ Find và trên sheet.

Khi bạn muốn "tích hợp chức năng" vào tập tin thực của mình thì làm tuần tự các bước sau:
1. Alt + F11 -> menu Insert -> Module -> dán nội dung trong Module1 của tôi vào Module vừa được thêm -> menu Insert -> Module -> dán nội dung trong Module2 của tôi vào Module vừa được thêm -> đúp chuột vào ThisWorkbook -> dán vào cửa sổ bên phải nội dung trong ThisWorkbook của tập tin đính kèm -> đóng cửa sổ VBE
2. chọn thẻ Developer -> nhấn nút Macros trong phần Code -> click chọn enablehook -> nhấn nút Options -> trong trường Shortcut key gõ q -> nhấn OK -> đóng cửa sổ Macro

Sau đó lưu lại tập tin của mình.


Code của anh em đã thử rồi, và trước đó em cũng đã thử code kiểu này. Em đã từng nói ởi post #11 là nó sẽ chạy một chương trình bên ngoài excel.exe, nên khi kích hoạt F1 thì nó sang cửa sổ của HelpF1 nên không thể chạy code "hichic" được

Tôi trả lời cho thao tác theo đúng thứ tự như bài #1: Thao tác là Ctrl F (value cần tìm) --> ESC ---> F2 rồi sửa

Chỉ thay mỗi F1 vào chỗ F2 (nhấn nhầm). Tức nhấn F1 sau ESC. Lúc này chắc chắn hichic được gọi và nhìn thấy là ô ở chế độ chỉnh sửa.

Tôi trả lời rất chính xác. Hỏi trường hợp nào thì trả lời cho trường hợp ấy thôi. Người ta thay đổi luật chơi giữa lúc đang chơi thì không phải lỗi của tôi.
 

File đính kèm

1. Chỗ đỏ đỏ thực ra là chọn thuốc trong cửa sổ Find, tức thao tác trước khi nhấn ESC. Vậy thứ tự phải là: "Trong đó thao tác tìm thuốc abcFFF là Find "abc", chọn thuốc abcFFF bằng phím UP DOWN, nhấn ESC, sang 2 ô vào ô nhập số lượng, nhấn F2 để edit (cộng thêm số lượng)"

Vấn đề của bạn mà bạn trình bầy cẩu thả. Bó tay.

2.Tôi trả lời cho bài #1, tức cho trường hợp cụ thể.

Tức trường hợp nhấn nhầm F1 sau khi đóng cửa sổ Find - sau khi nhấn ESC.

Bây giờ bạn lại nói là bạn nhấn F1 trong cửa sổ Find, trước khi nhấn ESC.

Tôi đã trả lời trường hợp cụ thể mà bạn viết.

Ngoài ra tôi không thích khi người ta hỏi một điều nhưng sau đó lại thay bằng một điều khác. Không thích khi người ta thay đổi luật chơi giữa lúc đang chơi.

Tôi trả lời lần cuối. Tôi đính kèm tập tin để thử nghiệm. Trong tập tin này khi nào bạn muốn bắt đầu từ "lúc này" sẽ vô hiệu hóa F1 thì hãy nhấn Ctrl + q. Khi nào lại muốn "bật lại" F1 thì nhấn Ctrl + q lần nữa.

Hãy thử F1 trong cửa sổ Find và trên sheet.

Khi bạn muốn "tích hợp chức năng" vào tập tin thực của mình thì làm tuần tự các bước sau:
1. Alt + F11 -> menu Insert -> Module -> dán nội dung trong Module1 của tôi vào Module vừa được thêm -> menu Insert -> Module -> dán nội dung trong Module2 của tôi vào Module vừa được thêm -> đúp chuột vào ThisWorkbook -> dán vào cửa sổ bên phải nội dung trong ThisWorkbook của tập tin đính kèm -> đóng cửa sổ VBE
2. chọn thẻ Developer -> nhấn nút Macros trong phần Code -> click chọn enablehook -> nhấn nút Options -> trong trường Shortcut key gõ q -> nhấn OK -> đóng cửa sổ Macro

Sau đó lưu lại tập tin của mình.




Tôi trả lời cho thao tác theo đúng thứ tự như bài #1: Thao tác là Ctrl F (value cần tìm) --> ESC ---> F2 rồi sửa

Chỉ thay mỗi F1 vào chỗ F2 (nhấn nhầm). Tức nhấn F1 sau ESC. Lúc này chắc chắn hichic được gọi và nhìn thấy là ô ở chế độ chỉnh sửa.

Tôi trả lời rất chính xác. Hỏi trường hợp nào thì trả lời cho trường hợp ấy thôi. Người ta thay đổi luật chơi giữa lúc đang chơi thì không phải lỗi của tôi.

Code quá hay, dùng hook và API hay
Tuy thế có vẻ như bác dùng dao to mổ chim chích rồi - code khủng chỉ phục vụ cho việc vô lý, yêu cầu quá của thành viên - code khủng phục vụ cho 1 ngón tay...
 
Tuy thế có vẻ như bác dùng dao to mổ chim chích rồi - code khủng chỉ phục vụ cho việc vô lý, yêu cầu quá của thành viên - code khủng phục vụ cho 1 ngón tay...
Đã trót đâm lao nên đành phải theo lao, he he :D

Nhưng tôi đã viết rằng tôi trả lời lần cuối. Được hay không, sửa yêu cầu hay không thì cũng không giải nữa.

Nghĩ cũng lạ, hàng ngày phải liên tục nhập liệu thì cứ liên tục gõ nhầm?
 
1. Chỗ đỏ đỏ thực ra là chọn thuốc trong cửa sổ Find, tức thao tác trước khi nhấn ESC. Vậy thứ tự phải là: "Trong đó thao tác tìm thuốc abcFFF là Find "abc", chọn thuốc abcFFF bằng phím UP DOWN, nhấn ESC, sang 2 ô vào ô nhập số lượng, nhấn F2 để edit (cộng thêm số lượng)"

Vấn đề của bạn mà bạn trình bầy cẩu thả. Bó tay.

2.Tôi trả lời cho bài #1, tức cho trường hợp cụ thể.

Tức trường hợp nhấn nhầm F1 sau khi đóng cửa sổ Find - sau khi nhấn ESC.

Bây giờ bạn lại nói là bạn nhấn F1 trong cửa sổ Find, trước khi nhấn ESC.

Tôi đã trả lời trường hợp cụ thể mà bạn viết.

Ngoài ra tôi không thích khi người ta hỏi một điều nhưng sau đó lại thay bằng một điều khác. Không thích khi người ta thay đổi luật chơi giữa lúc đang chơi.

Tôi trả lời lần cuối. Tôi đính kèm tập tin để thử nghiệm. Trong tập tin này khi nào bạn muốn bắt đầu từ "lúc này" sẽ vô hiệu hóa F1 thì hãy nhấn Ctrl + q. Khi nào lại muốn "bật lại" F1 thì nhấn Ctrl + q lần nữa.

Hãy thử F1 trong cửa sổ Find và trên sheet.

Khi bạn muốn "tích hợp chức năng" vào tập tin thực của mình thì làm tuần tự các bước sau:
1. Alt + F11 -> menu Insert -> Module -> dán nội dung trong Module1 của tôi vào Module vừa được thêm -> menu Insert -> Module -> dán nội dung trong Module2 của tôi vào Module vừa được thêm -> đúp chuột vào ThisWorkbook -> dán vào cửa sổ bên phải nội dung trong ThisWorkbook của tập tin đính kèm -> đóng cửa sổ VBE
2. chọn thẻ Developer -> nhấn nút Macros trong phần Code -> click chọn enablehook -> nhấn nút Options -> trong trường Shortcut key gõ q -> nhấn OK -> đóng cửa sổ Macro

Sau đó lưu lại tập tin của mình.




Tôi trả lời cho thao tác theo đúng thứ tự như bài #1: Thao tác là Ctrl F (value cần tìm) --> ESC ---> F2 rồi sửa

Chỉ thay mỗi F1 vào chỗ F2 (nhấn nhầm). Tức nhấn F1 sau ESC. Lúc này chắc chắn hichic được gọi và nhìn thấy là ô ở chế độ chỉnh sửa.

Tôi trả lời rất chính xác. Hỏi trường hợp nào thì trả lời cho trường hợp ấy thôi. Người ta thay đổi luật chơi giữa lúc đang chơi thì không phải lỗi của tôi.


Mình dùng phím up down sau khi nhấn esc bạn ơi. Và khi nhấn esc, thường thì mình đã chọn đúng ô cần tìm, sang phải 2 ô rồi f2 sửa.
Vấn đề là mình nhấn right, esc, f2 nhanh và nhiều khi không đúng thứ tự. Do đó, xảy ra các vấn đề sau:
1/ sau khi esc thì nhấn f2 mà nhầm f1 hoặc đè cả phím f2 và f1, nhận phím f1 --> giải quyết bằng application.onkey {F1} ""
2/ Nhấn esc nhầm sang phím F1, nhận phím f1 --> nhờ bạn giải quyết.

Mình không phải cẩu thả, có lẽ là do cách viết của mình quá rối và gây khó hiểu cho người đọc. Cái này mình rút kinh nghiệm.
Cảm ơn bạn đã quan tâm và giúp đỡ.

Đã trót đâm lao nên đành phải theo lao, he he :D

Nhưng tôi đã viết rằng tôi trả lời lần cuối. Được hay không, sửa yêu cầu hay không thì cũng không giải nữa.

Nghĩ cũng lạ, hàng ngày phải liên tục nhập liệu thì cứ liên tục gõ nhầm?
Mình không nhập liệu hàng ngày, toàn bộ bảng kê 1 tháng mình chỉ có khoảng 3-4 ngày phải xong báo cáo. Công việc này chỉ là phần phụ, mình chủ yếu là làm việc với Bảo hiểm xã hội. Do là việc phụ nên mình cố nhập nhanh, dẫn đến sai sót. Nếu mình làm cẩn thận, nhìn kỹ và làm chậm cho quen dần thì xảy ra các vấn đề sau:
1/ Chậm các công việc chính.
2/ mình không làm liên tục mà chỉ một tháng vài ngày phải xong nên mấy bữa lại quên.
3/ Mình muốn hạn chế tối đa sai sót, mỗi khi tỏng hợp mình đều phải kiểm lại và đối chiếu nữa nên khá mệt mỏi.
 
Nhưng cuối cùng đã được chưa? Tập tin bài #21 đã được chưa? Vô hiệu hóa F1 chưa?

Nếu tìm thấy > 1 kết quả thì để chọn kết quả khác kết quả đầu tiên thì phải dùng down-up trước khi nhấn ESC, đúng không? Còn về chuyện sau khi nhấn ESC thì nhấn phải-trái thì tôi có đả động gì đâu?
 
Nhưng cuối cùng đã được chưa? Tập tin bài #21 đã được chưa? Vô hiệu hóa F1 chưa?
Để thứ 2 mình mới thử được bạn ơi.Bữa nay có được vào cơ quan đâu.
Một lần nữa, cảm ơn bạn đã giải đáp giúp mình. Chúc bạn cuối tuần vui vẻ.
 
1. Chỗ đỏ đỏ thực ra là chọn thuốc trong cửa sổ Find, tức thao tác trước khi nhấn ESC. Vậy thứ tự phải là: "Trong đó thao tác tìm thuốc abcFFF là Find "abc", chọn thuốc abcFFF bằng phím UP DOWN, nhấn ESC, sang 2 ô vào ô nhập số lượng, nhấn F2 để edit (cộng thêm số lượng)"

Vấn đề của bạn mà bạn trình bầy cẩu thả. Bó tay.

2.Tôi trả lời cho bài #1, tức cho trường hợp cụ thể.

Tức trường hợp nhấn nhầm F1 sau khi đóng cửa sổ Find - sau khi nhấn ESC.

Bây giờ bạn lại nói là bạn nhấn F1 trong cửa sổ Find, trước khi nhấn ESC.

Tôi đã trả lời trường hợp cụ thể mà bạn viết.

Ngoài ra tôi không thích khi người ta hỏi một điều nhưng sau đó lại thay bằng một điều khác. Không thích khi người ta thay đổi luật chơi giữa lúc đang chơi.

Tôi trả lời lần cuối. Tôi đính kèm tập tin để thử nghiệm. Trong tập tin này khi nào bạn muốn bắt đầu từ "lúc này" sẽ vô hiệu hóa F1 thì hãy nhấn Ctrl + q. Khi nào lại muốn "bật lại" F1 thì nhấn Ctrl + q lần nữa.

Hãy thử F1 trong cửa sổ Find và trên sheet.

Khi bạn muốn "tích hợp chức năng" vào tập tin thực của mình thì làm tuần tự các bước sau:
1. Alt + F11 -> menu Insert -> Module -> dán nội dung trong Module1 của tôi vào Module vừa được thêm -> menu Insert -> Module -> dán nội dung trong Module2 của tôi vào Module vừa được thêm -> đúp chuột vào ThisWorkbook -> dán vào cửa sổ bên phải nội dung trong ThisWorkbook của tập tin đính kèm -> đóng cửa sổ VBE
2. chọn thẻ Developer -> nhấn nút Macros trong phần Code -> click chọn enablehook -> nhấn nút Options -> trong trường Shortcut key gõ q -> nhấn OK -> đóng cửa sổ Macro

Sau đó lưu lại tập tin của mình.




Tôi trả lời cho thao tác theo đúng thứ tự như bài #1: Thao tác là Ctrl F (value cần tìm) --> ESC ---> F2 rồi sửa

Chỉ thay mỗi F1 vào chỗ F2 (nhấn nhầm). Tức nhấn F1 sau ESC. Lúc này chắc chắn hichic được gọi và nhìn thấy là ô ở chế độ chỉnh sửa.

Tôi trả lời rất chính xác. Hỏi trường hợp nào thì trả lời cho trường hợp ấy thôi. Người ta thay đổi luật chơi giữa lúc đang chơi thì không phải lỗi của tôi.
Cảm ơn anh đã chia sẻ ạ. Em đã test thử trên máy em (2013, 64bit) ok ạ.
 
Cảm ơn batman1. Mình đã thử và thành công. (2013,32bit):)
 
Web KT

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

Back
Top Bottom