You are here:: Các bài học hay VBA trong Excel
 
 

VBA trong Excel

Tự viết hàm tính tổng theo yêu cầu

Với lập trình VBA, các bạn có thể tạo ra các hàm tính toán theo nhu cầu công việc của bản thân sao cho thuận lợi và phù hợp nhất.
Giả sử chúng ta có 1 bài toán như sau:
Yêu cầu: Tính tổng điểm với điều kiện như sau:
Tổng điểm = Toán + Tin
Nếu đạo đức là A thì tổng điểm sẽ được cộng thêm 1
Nếu đạo đức là B thì tổng điểm sẽ được cộng thêm 0.5
Nếu đạo đức là D thì tổng điểm sẽ được trừ đi 1
Còn lại thì giữ nguyên tổng điểm.

Hàm đếm số ô trống trong một vùng bất kỳ

Trong excel, để kiểm tra 1 ô trống ta có thể dùng hàm IS BLANK, để đếm 1 vùng có bao nhiêu ô trống có hàm COUNTBLANK, nhưng hàm đếm ô trống này sẽ đếm bao gồm cả những ô chỉ có 1 dấu nháy đơn. Khi dùng hàm ISBLANK để kiểm tra ô có giá trị là 1 giấ`u nháy đơn thì kết quả trả về là FALSE, chứng tỏ ô đấy không phải ô trống mà hàm COUNTBLANK lại đếm vào. Vậy hôm nay mình sẽ hướng dẫn các bạn viết 1 hàm đểm những giá trị là trống.

Xóa, chèn dòng tự động giữa hai sheet

Giả sử có bài toán như sau: Trong Sheet 1 có một vùng dữ liệu, Sheet 2 cũng có một vùng dữ liệu tương ứng. Yêu cầu bài toán là khi xóa một dòng bất kỳ ở Sheet 1 thì Sheet2 tự động xóa dòng tại vị trí đó. Tương tự với việc chèn dòng, khi Sheet 1 chèn một dòng bất kỳ thì Sheet 2 cũng sẽ chèn một dòng tương ứng với vị trí dòng dòng ở Sheet 1.

Điền dữ liệu vào 2 cột tự động theo ý bằng VBA

Giải bài toán theo yêu cầu như sau:
Yêu cầu bài toán: Điền giá trị từ A1:A10 là 1:100, tương ứng mỗi giá trị tại cột A điền tiếp giá trị tại cột B từ B1:B100 nếu là:
- Dòng chẵn điền "Bluesofts.net"
- Dòng lẻ điền "Excelnangcao.com"

Cập nhật dữ liệu từ Form trên sheet sang Data trong Excel

 
Trong bài viết này mình chia sẻ cho các bạn code cập nhật dữ liệu từ Sheet Form sang sheet Data chỉ bằng click chuột. Khi cập nhật dữ liệu sang sheet Data, toàn bộ dữ liệu trong sheet form sẽ tự động xóa trắng. Hằng ngày nhân viên chỉ việc nhập liệu lên Form và bấm vào cập nhật để dữ liệu vào trong Data.

Trong bài viết này mình chia sẻ cho các bạn code cập nhật dữ liệu từ Sheet Form sang sheet Data chỉ bằng click chuột. Khi cập nhật dữ liệu sang sheet Data, toàn bộ dữ liệu trong sheet form sẽ tự động xóa trắng. Hằng ngày nhân viên chỉ việc nhập liệu lên Form và bấm vào cập nhật để dữ liệu vào trong Data. Để làm được như vậy, các bạn chỉ cần làm theo các bước sau:
Bước 1: Thiết lập sheet nhập liệu Form
 
 
Bước 2: Thiết lập sheet Lưu trữ dữ liệu Data (note: Cấu trúc 2 sheet thiết lập phải giống nhau)
 
 
Các bạn vào môi trường lập trình vào copy code dưới đây vào trong module, sau đó tạo nút bấm ở Sheet From và gán macro CapNhat vào trong nút bấm.
Option Explicit
 
Sub CapNhat()
    Dim shForm As Worksheet
    Dim shData As Worksheet
    Dim dFrom As Long
    Dim dData As Long
    
    Set shForm = ThisWorkbook.Worksheets("DATA")
    Set shData = ThisWorkbook.Worksheets("FORM")
    
    dData = shData.Range("B" & Rows.Count).End(xlUp).Row
    dFrom = shForm.Range("B" & Rows.Count).End(xlUp).Row
    
    shData.Range("A4:F" & dData).Copy shForm.Range("A" & dFrom + 1)
    shData.Range("A4:F" & dData).ClearContents
End Sub
Sau khi hoàn thành việc copy code vào module các bạn sẽ được như sau:
 
Đào tạo lập trình VBA trong Excel cơ bản
 
Cuối cùng, việc của các bạn là tạo nút bấm và gán thủ tục "CapNhat" vào nút bấm trong sheet Form, sau đó bấm vào nút bấm rồi trở về Sheet Data để nhận kết quả.
 
 
Để tìm hiểu thêm nhiều kiến thức bổ ích, các bạn tìm hiểu thêm tại khóa học Đào tạo lập trình VBA trong excel cơ bản của Bluesofts. Sau khóa học các bạn có thể tự thiết kế các mẫu file, các phần mềm nho nhỏ đáp ứng nhu cầu của các bạn.

Tác giả: Hoàng Phong - Công ty Cổ phần Bluesofts

 

Trang 3 của 5