VBA AutoFill (Hướng dẫn từng bước) | Ví dụ để sử dụng tính năng tự động điền trong Excel VBA

Tự động điền làm gì trong Excel VBA?

Chúng tôi đã thấy tính năng tự động điền trong trang tính trong đó các ô được tự động điền dựa trên các giá trị trong các ô trước đó ở trên nó, chúng tôi có thể sử dụng VBA để excel thực hiện nhiệm vụ cho chúng tôi, để làm điều này, chúng tôi sử dụng phương pháp Selection.Autofill và chúng tôi cung cấp đích tức là đến các ô nào các giá trị cần được điền.

Việc sử dụng tự động điền VBA tốt nhất là khi chúng ta cần điền công thức của ô đầu tiên vào ô của cột. Chúng tôi thường áp dụng công thức trong ô đầu tiên hoặc chúng tôi sao chép và dán vào ô cuối cùng hoặc chúng tôi chỉ tự động điền bằng cách nhấp đúp vào phím mũi tên nhỏ. Một ví dụ điển hình khác về việc sử dụng tính năng tự động điền trong excel là khi chúng ta cần chèn số sê-ri. Chúng tôi thường nhập ba số đầu tiên sau đó kéo xuống cho đến ô cuối cùng được yêu cầu.

Trong VBA cũng vậy, chúng ta có thể thực hiện nhiệm vụ của phương thức Tự động điền. Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách chúng tôi có thể sử dụng phương pháp tự động điền và các cách viết mã. Bây giờ chúng ta sẽ xem cách chúng ta có thể sử dụng công cụ này trong mã hóa VBA.

Làm thế nào để sử dụng Tự động điền trong VBA?

Để sử dụng tính năng tự động điền trong VBA, chúng ta cần hiểu cú pháp của phương thức tự động điền. Dưới đây là cú pháp của tự động điền.

  • Phạm vi (“A1”): Các ô để xác định mẫu của chuỗi điền là gì.
  • Đích: Cho đến ô bạn muốn tiếp tục mẫu chuỗi điền. Ở đây chúng ta cần đề cập đến đầy đủ các ô.
  • Nhập là xlAutoFillType: Tại đây chúng ta có thể chọn kiểu điền loạt. Dưới đây là danh sách các mục trong tham số này - xlFillCopy, xlFillDays, xlFillDefault, xlFillFormats, xlFillMonths, xlFillSeries, xlFillValues, xlFillWeekdays, xlFillYears, xlFlashFill, xlGrowth.

Ví dụ về Tự động điền trong Excel VBA

Chúng ta hãy xem một số ví dụ từ đơn giản đến nâng cao về VBA AutoFill trong excel.

Ví dụ # 1 - xlFillDefault

Đầu tiên, nhập 3 số sê-ri vào ba ô đầu tiên.

Trong quy trình con VBA đề cập đến phạm vi VBA là Phạm vi (“A1: A3”)

Mã:

Sub AutoFill_Example1 () Phạm vi ("A1: A3"). Kết thúc Sub

Bây giờ hãy truy cập vào phương thức Tự động điền.

Nhập điểm đến là Phạm vi (“A1: A10”)

Mã:

Phạm vi ("A1: A3"). Đích tự động điền: = Phạm vi ("A1: A10") 

Chọn Loại là xlFillDefault .

Mã:

Phạm vi ("A1: A3"). Đích tự động điền: = Phạm vi ("A1: A10"), Loại: = xlFillDefault 

Bây giờ chạy mã chúng ta sẽ nhận được các số sê-ri từ 1 đến 10.

Vì chúng tôi đã đề cập đến ô đích cuối cùng là A10 nên nó đã dừng ở đó, chúng tôi có thể nhập ô đích làm ô cuối cùng của excel.

Ví dụ # 2 - xlFillCopy

Đối với các số giống nhau, chúng tôi sẽ sử dụng kiểu là xlFillCopy.

Mã:

 Sub AutoFill_Example1 () Range ("A1: A3"). AutoFill Destination: = Range ("A1: A10"), Type: = xlFillCopy End Sub 

Tôi có bản sao của ba ô đầu tiên cho các ô còn lại.

Ví dụ # 3 - xlFillMonths

Đối với ví dụ này, tôi đã nhập ba tháng đầu tiên vào 3 ô đầu tiên.

Thay đổi loại tự động điền thành xlFillMonths.

Mã:

 Sub AutoFill_Example1 () Range ("A1: A3"). AutoFill Destination: = Range ("A1: A10"), Type: = xlFillMonths End Sub 

Điều này sẽ điền vào chuỗi tháng.

Ví dụ # 4 - xlFillFormats

Đối với ví dụ này, tôi đã nhập số và áp dụng định dạng cho các ô đó.

Bây giờ tôi sẽ thay đổi kiểu thành xlFillFormats.

Mã:

 Sub AutoFill_Example1 () Range ("A1: A3"). AutoFill Destination: = Range ("A1: A10"), Type: = xlFillFormats End Sub 

Chạy mã này và xem điều gì sẽ xảy ra.

Nó đã điền các định dạng của ba ô đầu tiên đến ba ô tiếp theo và lại ba ô tiếp theo, v.v.

Ví dụ # 5 - xlFlashFill

Đối với ví dụ này, tôi đã nhập một vài giá trị từ ô A1 đến A10 như được hiển thị trong hình ảnh bên dưới.

Từ danh sách này, tôi muốn trích xuất phần số. Để cho excel biết về mẫu, trong ô đầu tiên, tôi sẽ nhập thủ công phần số của ô đầu tiên.

Bây giờ tôi sẽ viết mã như bình thường và thay đổi kiểu thành xlFlashFill. Lần này chúng ta sẽ sử dụng phạm vi cột B.

Mã:

 Sub AutoFill_Example1 () Range ("B1"). AutoFill Destination: = Range ("B1: B10"), Type: = xlFlashFill End Sub 

Nếu tôi chạy đoạn mã này, chúng tôi sẽ nhận được kết quả như bên dưới.

Đây là tổng quan về phương pháp VBA AutoFill. Hy vọng bạn đã thích nó.

Bạn có thể tải xuống Mẫu Excel Tự động điền VBA này từ đây - Mẫu Excel Tự động điền VBA


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