Hàm tính tổng theo hàng hoặc cột bất kỳ trong mảng
Đôi khi làm việc với mảng, chúng ta muốn tính toán theo những cột / hàng riêng lẻ trong mảng đó, nhưng không có hàm excel nào có sẵn giúp chúng ta làm được việc này. Điều này ảnh hưởng không nhỏ tới công việc khi chúng ta phải loay hoay tìm giải pháp thay thế, phải đi đường vòng. Vậy bạn có bao giờ ...
Đôi khi làm việc với mảng, chúng ta muốn tính toán theo những cột / hàng riêng lẻ trong mảng đó, nhưng không có hàm excel nào có sẵn giúp chúng ta làm được việc này. Điều này ảnh hưởng không nhỏ tới công việc khi chúng ta phải loay hoay tìm giải pháp thay thế, phải đi đường vòng. Vậy bạn có bao giờ nghĩ có thể tự tạo ra 1 hàm giúp giải quyết trực tiếp công việc này? Sau đây chúng ta cùng xem Học Excel Online làm điều này như thế nào nhé:
Ví dụ chúng ta có mảng dữ liệu như sau:
Bước 1: Mở cửa sổ Visual Basic Application (VBA)
Có 2 cách để mở cửa sổ VBA:
- Cách 1: Bấm tổ hợp phím tắt Alt + F11
- Cách 2: Trong tab Developer, bấm chọn Visual Basic
Bước 2: Tạo mới 1 Module
Bấm chuột phải vào mục Project – VBAProject rồi chọn Insert / Module
Bước 3: Tạo hàm trong VBA để tính tổng theo dòng bất kỳ
Trong Module 1 vừa tạo, chúng ta dùng lệnh Function để tạo ra 1 hàm
Đặt tên hàm là SumByRow (tính tổng theo hàng)
Mục tiêu của hàm: Tính tổng theo 1 dòng bất kỳ trong mảng
Do đó có 2 đối tượng cần sử dụng trong hàm: Mảng nào (Range) và Dòng nào (Row)
Cách viết hàm như sau:
Để tính cho đối tượng là Cột thì chúng ta sử dụng đối tượng Column (viết tắt là col). Khi đó trong phần Index cần thay đổi như sau:
Bước 4: Cách sử dụng hàm
Muốn tính tổng theo cột nào, sử dụng hàm SumByCol và xác định thứ tự cột cần tính tổng trong mảng đó
Muốn tính tổng theo hàng nào, sử dụng hàm SumByRow và xác định thứ tự dòng cần tính tổng trong mảng đó.
Video hướng dẫn:
Chúc các bạn học tốt cùng Học Excel Online!