Tự động điền công thức vào hàng cuối cùng với Excel VBA (5 ví dụ)

  • Chia Sẻ Cái Này
Hugh West

Nếu bạn đã làm việc với Microsoft Excel một thời gian, bạn sẽ biết tầm quan trọng của Tự động điền. Để sao chép một công thức trên hàng hoặc cột, chúng tôi sử dụng phương pháp này. Bây giờ, chúng ta có thể sử dụng thủ công bằng chuột. Tuy nhiên, nếu bạn có một hàng lớn chứa dữ liệu, sẽ rất khó để sao chép bất kỳ công thức nào vào hàng hoặc cột cuối cùng. Bạn có thể sử dụng mã VBA để Tự động điền công thức vào hàng hoặc cột cuối cùng một cách dễ dàng.

Trong hướng dẫn này, bạn sẽ học cách Tự động điền công thức vào hàng cuối cùng trong Excel bằng mã VBA. Hướng dẫn này sẽ đi đúng hướng với các ví dụ phù hợp và hình minh họa phù hợp. Vì vậy, hãy ở lại với chúng tôi.

Tải xuống Sách bài tập thực hành

Tự động điền công thức cho hàng cuối cùng.xlsm

Tự động điền là gì Xuất sắc?

Giờ đây, tự động điền là một tính năng tích hợp sẵn của Microsoft Excel cho phép người dùng tự động điền các giá trị, định dạng hoặc công thức còn lại vào các hàng hoặc cột. Bạn có thể xác định nó khi đưa con trỏ đến góc dưới cùng bên phải của bất kỳ ô nào. Chúng tôi gọi đó là trình xử lý tự động điền của Excel.

Hãy xem ảnh chụp màn hình sau:

Ở đây, bạn có thể thấy hai số. Chúng tôi sẽ điền phần còn lại của các hàng bằng tính năng tự động điền trong Excel.

Đầu tiên, chọn phạm vi ô B5:B6. Sau đó, bạn sẽ thấy thanh điều khiển tự động điền ở góc dưới cùng bên phải.

Bây giờ, hãy kéo thanh điều khiển tự động điền này xuống.

Như bạn có thể thấy, Excel tự động điền vàocác ô còn lại. Đây là cách sử dụng cơ bản của tự động điền trong Excel.

Cách sử dụng Tự động điền với Excel VBA

Nếu bạn có một số lượng lớn hàng hoặc cột trong một phạm vi nhất định, bạn phải kéo xuống điều khiển tự động điền vào hàng hoặc cột cuối cùng. Đó là một quá trình rất bận rộn. Rất may, bạn có thể thu nhỏ nó bằng mã VBA trong Excel. Bạn có thể sử dụng mã VBA để tự động điền các ô có giá trị, công thức hoặc định dạng.

Cú pháp chung:

Phạm vi .Đích Tự động Điền, Loại

Tại đây,

Phạm vi(“B5”): Ô có mẫu chính để điền vào phần còn lại của chuỗi.

Đích: Phạm vi ô mà bạn muốn điền vào chuỗi mẫu.

Nhập dưới dạng xlAutoFillType: Loại điền theo chuỗi. Có nhiều loại tự động điền khác nhau mà bạn có thể chọn.

Đọc thêm: Cách sử dụng Tự động điền VBA trong Excel

4 loại Tự động điền trong Excel VBA

Trong phần này, tôi sẽ thảo luận về một số loại tự động điền. Chúng tôi đã thấy rằng chúng tôi có thể chọn bất kỳ loại tự động điền nào bằng cách sử dụng xlAutoFillType. Sau đây, tôi sẽ cho bạn xem một số ví dụ về điều đó.

1. xlFillDefault

Chúng ta đã thấy loại tự động điền này trong ví dụ trước.

Hãy xem ảnh chụp màn hình:

Nhập mã VBA sau để tự động điền các ô còn lại:

7323

Bây giờ, hãy chạy macro VBA và sau đó, bạn sẽ thấysau:

Nó tự động lấp đầy các ô còn lại bằng cách sử dụng macro VBA.

2. xlFillCopy

Để sao chép các giá trị giống nhau, bạn có thể sử dụng loại xlFillCopy trong loại tự động điền.

Hãy xem ảnh chụp màn hình:

Nhập mã VBA sau để tự động điền các ô còn lại:

7126

Bây giờ, hãy chạy macro VBA và sau đó, bạn sẽ thấy như sau:

Excel điền vào các ô còn lại với cùng một mẫu giá trị.

3. xlFillMonths

Bạn cũng có thể điền tháng bằng cách sử dụng loại tự động điền xlFillMonths .

Hãy xem ảnh chụp màn hình:

Ở đây, chúng tôi đã nhập hai tháng Tháng Một và Tháng Hai.

Nhập mã VBA sau để tự động điền các ô còn lại:

2121

Bây giờ, hãy chạy macro VBA và sau đó đó, bạn sẽ thấy như sau:

Excel tự động hiểu các mẫu và điền vào chúng.

4. xlFillFormats

Bạn cũng có thể sao chép định dạng sang các ô khác bằng tính năng tự động điền VBA. Để làm được điều đó, bạn phải sử dụng loại tự động điền xlFillFormats .

Hãy xem ảnh chụp màn hình:

Ở đây, chúng tôi có đã tô một số màu cho hai ô.

Bây giờ, hãy nhập mã VBA sau để tự động điền các ô còn lại:

2433

Bây giờ, hãy chạy macro VBA và sau đó, bạn sẽ thấy sau:

Như bạn có thể thấy, macro VBA của chúng tôi sử dụng tính năng tự động điền đểđiền vào các hàng của cột B một cách hiệu quả.

Đọc thêm: Cách tự động điền tháng trong Excel

5 ví dụ với công thức tự động điền vào hàng cuối cùng trong Excel VBA

1. VBA để Tự động điền Công thức vào Hàng được Sử dụng Gần đây nhất

Tương tự, bạn có thể tự động điền công thức bằng VBA. nếu bạn đã đọc các phần trước, bạn có thể dễ dàng thực hiện điều này. Vấn đề phát sinh khi bạn phải tự động điền công thức vào hàng cuối cùng. Trước tiên, bạn phải xác định hàng được sử dụng cuối cùng. Sau đó, mã VBA sẽ tự động điền chúng.

Hãy xem tập dữ liệu sau:

Ở đây, chúng tôi có tập dữ liệu bán hàng của một số nhân viên bán hàng . Mục tiêu của chúng ta là thêm doanh thu của tháng 1 và tháng 2 vào cột Tổng. Sau đó, chúng tôi sẽ sử dụng phương pháp tự động điền bằng VBA cho hàng được sử dụng cuối cùng trong Excel.

Để thực hiện điều này, hãy nhập mã sau:

5608

last_row = Cells(Rows.Count, 2).End(xlUp).Row: Nó trả về hàng được sử dụng cuối cùng từ cột B. Bạn có thể chọn bất kỳ cột nào từ tập dữ liệu của mình.

Phạm vi(“E5”).Công thức = “=SUM(C5:D5)”: Chúng tôi cộng doanh số của Ô C5 D5.

Phạm vi(“E5”).AutoFill Destination:=Range(“E5:E” & last_row): Sau khi nhận được kết quả, chúng tôi sử dụng tính năng tự động điền. Nó bắt đầu tự động điền từ Ô E5 đến hàng được sử dụng cuối cùng mà chúng tôi đã có trước đó.

Bây giờ, hãy chạy macro VBA. Sau đó, bạn sẽ thấy đầu ra sau:

Asbạn có thể thấy, mã VBA của chúng tôi thêm kết quả đầu tiên và tự động điền công thức vào hàng cuối cùng trong Excel.

Đọc thêm: Cách điền dữ liệu xuống hàng cuối cùng trong Excel

2. Tự động điền VBA từ ActiveCell đến Hàng cuối cùng

Bây giờ, nếu bạn không muốn sử dụng phạm vi cụ thể trong phương thức tự động điền, bạn có thể sử dụng các giá trị của ô hiện hoạt , công thức hoặc định dạng. Khi bạn nhấp vào một ô và muốn tự động điền công thức của ô hiện hoạt vào các hàng còn lại, hãy sử dụng phương pháp này.

Phương pháp này tương tự như ví dụ trước. Chúng tôi đang sử dụng tập dữ liệu trước:

Bây giờ, chúng tôi sẽ thêm doanh số của tháng 1 và tháng 2 và tự động điền công thức vào hàng cuối cùng bằng Excel VBA.

Bây giờ, hãy nhập mã sau:

8697

last_row = Cells(Rows.Count, 2).End(xlUp).Row: Nó trả về lần sử dụng cuối cùng hàng từ cột B. Bạn có thể chọn bất kỳ cột nào từ tập dữ liệu của mình.

ActiveCell.Formula = “=SUM(C5:D5)”: Chúng tôi thêm doanh số của Cell C5 D5 trong ô bạn đã chọn.

ActiveCell.AutoFill Destination:=Range(ActiveCell.Address & “:E” & last_row): Sau khi có kết quả, chúng tôi sử dụng tính năng tự động điền. Nó bắt đầu tự động điền từ ô hiện hoạt đến hàng được sử dụng gần đây nhất mà chúng tôi đã lấy trước đó.

Bây giờ, hãy chọn Ô E5 .

Sau đó, hãy chạy macro VBA để thêm công thức và tự động điền vào hàng cuối cùng.

Như bạn có thể thấy, chúng tôiđã sử dụng thành công macro VBA để tự động điền công thức vào hàng cuối cùng.

Các bài đọc tương tự

  • Cách lặp lại các hàng với số lần được chỉ định trong Excel (4 cách)
  • Tự động đánh số hàng trong Excel (8 cách)
  • Cách điền vào cột trong Excel với cùng một giá trị (9 mẹo) )
  • Áp dụng phím tắt Tự động điền trong Excel (7 phương pháp)

3. Tự động điền vào hàng cuối cùng bằng Dynamic Range với Excel VBA

Trước đây, chúng tôi đã giới thiệu cho bạn một số macro VBA để tự động điền vào hàng cuối cùng trong Excel. Bây giờ, trong những ví dụ đó, chúng tôi đã sử dụng phạm vi động.

Để hiểu phạm vi tĩnh, hãy xem đoạn mã sau:

9297

Về cơ bản, chúng tôi yêu cầu Excel nhập công thức vào Ô E5 và tự động điền ô đó từ Ô E5 đến Ô E11 . Ở đây, chúng tôi đã chỉ định phạm vi. Nếu bạn thêm nhiều hàng thì sao? Trong trường hợp đó, VBA của chúng tôi sẽ không tự động điền các hàng bổ sung đó vì chúng tôi đã yêu cầu VBA tự động điền một phạm vi cụ thể.

Để giải quyết vấn đề này, tôi đã đưa ra một giải pháp có thể sử dụng phạm vi động:

4888

Như bạn có thể thấy, trước tiên chúng tôi tìm hàng cuối cùng bằng dòng mã này:

5740

Sau đó, chúng tôi tự động điền vào hàng cuối cùng bằng dải động:

6411

Không bất kể bạn thêm bao nhiêu hàng vào tập dữ liệu của mình, mã VBA này sẽ thành công để xác định chúng. Và nó sẽ tự động điền chúng bằng công thức.

Phạm vi động về cơ bản có nghĩa là bạn không phải nhập phạm vithủ công. Excel sẽ cập nhật nó theo thời gian.

Đọc thêm: Excel VBA: Phương thức tự động điền của lớp phạm vi không thành công

4. Tự động điền đến cuối cùng Cột trong Excel Sử dụng VBA

Nếu bạn đã đọc các phần trước về cách tự động điền vào hàng cuối cùng, thì bạn có thể tự động điền vào cột cuối cùng một cách dễ dàng. Bạn chỉ cần tìm số cột cuối cùng và tự động điền nó bằng Excel VBA.

Hãy xem tập dữ liệu sau:

Ở đây, chúng tôi có một tập dữ liệu đại diện cho ngân sách 3 tháng của một người. Bây giờ, chúng ta sẽ thêm chi phí của tất cả các tháng và tự động điền công thức vào cột cuối cùng bằng VBA Excel.

Bây giờ, hãy nhập mã sau:

5191

last_column = Cells(6, Columns.Count).End(xlToLeft).Column: Nó trả về cột được sử dụng cuối cùng từ hàng 6. Bạn có thể chọn bất kỳ hàng nào để bắt đầu từ tập dữ liệu của mình.

Phạm vi(“D9”).Công thức = “=SUM(D6:D8)”: Chúng tôi cộng chi phí của ba tháng (tháng 1, tháng 2, tháng 3).

Range(“D9”).AutoFill Destination:=Range(“D9”, Cells(9, last_column)): Sau khi nhận được kết quả, chúng tôi sử dụng tính năng tự động điền. Ở đây, hàng chính của chúng tôi là Hàng số 9. Tất cả dữ liệu của chúng tôi sẽ nằm trong hàng này. Nó bắt đầu tự động điền từ cột D đến cột được sử dụng gần đây nhất mà chúng tôi đã lấy trước đó bởi last_column .

Sau khi chạy macro, bạn sẽ thấy kết quả sau :

Như bạn có thể thấy, chúng tôi đã sử dụng thành công VBA để tự động điềncông thức xuống cột cuối cùng trong Excel.

Đọc thêm: Cách Tự động điền một cột trong Excel

5. Tự động điền các số thứ tự vào hàng cuối cùng trong Excel Sử dụng VBA

Bạn cũng có thể tự động điền các số tuần tự bằng tính năng tự động điền trong VBA. Tại đây, bạn phải sử dụng xlFillSeries trong loại tự động điền. Excel sẽ hiểu mẫu và điền vào mẫu đó.

Hãy xem ảnh chụp màn hình sau:

Ở đây, chúng tôi có một số tên. Và chúng tôi muốn cung cấp cho họ một ID theo cách tuần tự. Để thực hiện việc này, chúng ta sẽ sử dụng tính năng tự động điền VBA.

Tự động điền Số thứ tự với Phạm vi tĩnh:

2448

Sau khi chạy mã, bạn sẽ thấy kết quả:

Nếu bạn muốn sử dụng dải động, hãy sử dụng mã sau:

2839

last_row = Cells(Rows. Count, 2).End(xlUp).Row: Nó trả về hàng được sử dụng cuối cùng từ cột B.

Phạm vi(“C5”).AutoFill Destination:=Range(“C5” :C” & last_row), Loại:=xlFillSeries: Nó sẽ lấy ID của Ô C5 và tự động điền vào hàng được sử dụng cuối cùng trong Cột C bằng cách sử dụng xlFillSeries ,

Trong cả hai trường hợp, bạn sẽ nhận được kết quả giống nhau:

Như bạn có thể thấy, chúng tôi đã sử dụng thành công mã VBA để tự động điền số thứ tự trong Excel.

Đọc thêm: Công thức Excel để điền số thứ tự xuống Bỏ qua hàng ẩn

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

Bạn có thể ngừng tự động điền vàoNhiều cách khác nhau nếu bạn không muốn .

Bạn không thể tự động điền đồng thời nhiều hàng và cột. Thực hiện từng bước một.

Kết luận

Để kết luận, tôi hy vọng hướng dẫn này đã cung cấp cho bạn một phần kiến ​​thức hữu ích để tự động điền công thức vào hàng cuối cùng bằng cách sử dụng mã VBA. Chúng tôi khuyên bạn nên tìm hiểu và áp dụng tất cả các hướng dẫn này vào tập dữ liệu của mình. Tải xuống sách bài tập thực hành và tự mình thử. Ngoài ra, vui lòng đưa ra phản hồi trong phần bình luận. Phản hồi có giá trị của bạn giúp chúng tôi có động lực tạo ra các hướng dẫn như thế này.

Đừng quên kiểm tra trang web của chúng tôi Exceldemy.com để biết các vấn đề và giải pháp khác nhau liên quan đến Excel.

Hãy tiếp tục học các phương pháp mới và tiếp tục phát triển!

Hugh West là một nhà phân tích và huấn luyện viên Excel giàu kinh nghiệm với hơn 10 năm kinh nghiệm trong ngành. Ông có bằng Cử nhân Tài chính Kế toán và bằng Thạc sĩ Quản trị Kinh doanh. Hugh có niềm đam mê giảng dạy và đã phát triển một phương pháp giảng dạy độc đáo, dễ hiểu và dễ theo dõi. Kiến thức chuyên môn về Excel của ông đã giúp hàng nghìn sinh viên và chuyên gia trên toàn thế giới cải thiện kỹ năng và xuất sắc trong sự nghiệp của họ. Thông qua blog của mình, Hugh chia sẻ kiến ​​thức của mình với mọi người, cung cấp các hướng dẫn Excel miễn phí và đào tạo trực tuyến để giúp các cá nhân và doanh nghiệp phát huy hết tiềm năng của họ.