VBA SendKeys | Ví dụ để sử dụng phương pháp Excel VBA SendKeys

Excel VBA SendKeys

SendKeys trong ngôn ngữ VBA là một phương thức được sử dụng để gửi các tổ hợp phím đến cửa sổ đang hoạt động để chúng ta có thể làm việc thủ công sau đó. Bất cứ khi nào chúng ta sử dụng bảng chữ cái làm khóa, tất cả các bảng chữ cái cần phải ở dạng ký tự viết thường. Đây là một phương pháp phức tạp và chỉ nên sử dụng nếu cần thiết và khi bạn không còn lựa chọn

“SendKeys” là một trong những chủ đề phức tạp cần hiểu. Không nhiều người trong chúng ta sử dụng tính năng này trong VBA nhưng luôn là một điều tốt khi có thêm kiến ​​thức về nhiều chủ đề hơn. Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách sử dụng chức năng SendKeys. Bạn có thể cảm thấy khó khăn khi đọc lại bài viết nhiều lần với cách tiếp cận thực tế để học nhanh và tốt hơn.

Cú pháp

Dưới đây là cú pháp của phương thức vba SendKeys.

Khóa hoặc Chuỗi: Loại khóa mà chúng tôi cần gửi đến ứng dụng đang hoạt động.

Chờ đã: Trong đối số này, chúng ta có thể sử dụng hai điều, tức là TRUE hoặc FALSE

  • ĐÚNG nếu bạn muốn excel đợi các Khóa được chỉ định được xử lý trước khi có điều khiển trở lại macro.
  • FALSE nếu bạn bỏ qua tham số Wait, đây sẽ là giá trị mặc định. Nếu bạn chọn FALSE thì excel tiếp tục chạy macro mà không cần đợi các phím được xử lý đến cửa sổ đang hoạt động.

Các phím phổ biến mà chúng tôi sử dụng với bàn phím là “Ctrl, Shift và ALT” . Vì vậy với phương thức SendKeys, chúng ta cần sử dụng chúng với các ký tự đặc biệt, bảng dưới đây sẽ hiển thị các ký tự đặc biệt cho 3 khóa chung trên.

Các phím khác có các phím và ký tự khác nhau, bảng bên dưới hiển thị giải thích chi tiết cho từng phím.

Theo yêu cầu, chúng tôi có thể sử dụng bất kỳ phím nào ở trên. Với một số ví dụ thực tế, chúng tôi sẽ chỉ cho bạn cách sử dụng SendKeys.

Các ví dụ để sử dụng Phương pháp SendKeys trong Excel VBA

Bạn có thể tải xuống Mẫu VBA SendKeys Excel này tại đây - Mẫu VBA SendKeys Excel

Ví dụ 1

Ví dụ, hãy xem giá trị ô bên dưới.

Chúng tôi có các giá trị trong ba ô và trong ô đầu tiên, chúng tôi có giá trị là “Bangalore” và đối với ô này, có một nhận xét là “Thành phố thủ đô của Karnataka”.

Bây giờ bằng cách sử dụng “SendKeys”, chúng tôi cố gắng chỉnh sửa nhận xét này.

Mở trang tính Excel và chuyển đến trình chỉnh sửa cơ bản trực quan, bắt đầu quy trình con VBA.

Mã:

 Sub Send_Keys_Example () End Sub 

Đầu tiên, chúng ta cần chọn ô bình luận để chỉnh sửa bình luận. Vì vậy, hãy sử dụng mã RANGE (“A1”). Chọn

Mã:

 Sub Send_Keys_Example () Range ("A1"). Chọn End Sub 

Khi ô được chọn, chúng tôi sẽ thực hiện hành động chỉnh sửa các nhận xét. Ở đây chúng ta cần nhớ lại phím tắt chúng ta sử dụng để chỉnh sửa bình luận.

Để chỉnh sửa nhận xét, chúng tôi sử dụng phím tắt “Shift + F2” .

Nếu bạn nhấn phím này, nó sẽ chỉnh sửa nhận xét.

Bây giờ, hãy mở phương thức “SendKeys”.

Trong phương thức SendKeys, ký tự để sử dụng phím SHIFT là “+” (Dấu cộng), vì vậy hãy nhập mã đăng nhập “+”.

Bây giờ dấu cộng hoạt động như một phím SHIFT, phím tiếp theo cùng với SHIFT chúng ta sử dụng là phím F2. Bất cứ khi nào chúng ta sử dụng các phím chức năng, chúng ta cần đặt chúng bằng dấu ngoặc nhọn, vì vậy hãy nhập phím chức năng F2 trong dấu ngoặc nhọn.

Mã:

 Sub Send_Keys_Example () Range ("A1"). Chọn SendKeys "+ {F2}" End Sub 

Bây giờ thực thi mã và xem những gì chúng tôi nhận được.

Khi chúng tôi cố gắng thực thi mã, chúng tôi nhận được thông báo như trên. Một trong những điều quan trọng, chúng ta cần lưu ý là chúng ta không thể chạy macro sử dụng “SendKeys” từ cửa sổ trình chỉnh sửa cơ bản trực quan.

Chúng tôi cần chạy mã từ danh sách "Macro".

Trước tiên, hãy đóng cửa sổ trình soạn thảo Visual Basic.

Chuyển đến tab “Nhà phát triển” và nhấp vào “Macro”.

Bây giờ một danh sách tất cả các macro mở ra, hãy chọn macro mà bạn cần chạy. Tên macro của chúng tôi là “Send_Keys_Example” vì vậy tôi sẽ nhấn vào nút chạy.

Bạn có thể thấy rằng tùy chọn Chỉnh sửa nhận xét đã được bật.

Như bạn thấy ở trên, nó đã gán tổ hợp phím tắt SHIFT + F2 để mở tùy chọn chỉnh sửa bình luận.

Ví dụ số 2

Ví dụ: nếu bạn muốn mở cửa sổ “Dán đặc biệt” thông qua phương thức SendKeys, chúng tôi cũng có thể thực hiện việc này. Đầu tiên, chúng ta cần sao chép các ô nhất định và sau đó sử dụng SendKeys.

Mã:

 Sub Send_Keys_Example1 () Range ("A1"). Sao chép SendKeys "% es" End Sub 

Chọn macro mà bạn cần chạy và sau đó nhấp vào Chạy.

Khi bạn chạy mã, nó sẽ mở ra bên dưới, dán hộp thoại đặc biệt.

Những điều cần ghi nhớ

  • SendKeys chỉ định các tổ hợp phím cho ứng dụng đang hoạt động.
  • Phương pháp này rất phức tạp và bạn chỉ nên sử dụng nếu cần thiết và khi bạn không còn lựa chọn.
  • Bất cứ khi nào chúng ta sử dụng bảng chữ cái làm khóa, tất cả các bảng chữ cái cần phải ở dạng ký tự viết thường.

$config[zx-auto] not found$config[zx-overlay] not found