Xin chào bạn đến với khóa học lập trình vba dễ nhất.
- Nó hoàn toàn FREE và hiệu quả mạng lại thực tế vào công việc.
- Dành cho mọi lứa tuổi, đặc biệt là dân văn phòng.
- Cho mọi cấp độ, kể cả từ cấp độ 0 (bạn chưa biết gì về VBA Excel)
Mời bạn tham khảo tại liên kết các video học miễn phí VBA Excel từ trại huấn luyện coder.
VBA: Visual Basic for Applications.
Dùng để tự động hóa các thao tác trong Excel.
Truy cập trình soạn thảo: Alt + F11.
Sub TenMacro()
' Nội dung lệnh vba
End Sub
Function Tong(a,b)
Tong=a+b
End Function
Ví dụ tạo dữ liệu thực tế VBA Excel
Sub TaoDanhSachNhanVien()
Dim i As Integer
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("Sheet1")
' Tieu de cot
ws.Range("A1").Value = "Ma NV"
ws.Range("B1").Value = "Ho va ten"
ws.Range("C1").Value = "Gioi tinh"
ws.Range("D1").Value = "Ngay sinh"
ws.Range("E1").Value = "Chuc vu"
ws.Range("F1").Value = "Phong ban"
ws.Range("G1").Value = "Luong"
' Xoa du lieu cu
ws.Range("A2:G101").ClearContents
tongNhanVien = 1000
' Tao du lieu
For i = 2 To tongNhanVien
Dim maNV As String, ten As String, gioitinh As String
Dim ngaysinh As Date, chucvu As String, phongban As String
Dim luong As Currency
maNV = "NV" & Format(i - 1, "000")
ten = "Nguyen Van " & Chr(64 + ((i - 1) Mod 26) + 1)
gioitinh = IIf(i Mod 2 = 0, "Nam", "Nu")
ngaysinh = DateSerial(1990 + (i Mod 10), (i Mod 12) + 1, (i Mod 28) + 1)
Select Case (i Mod 5)
Case 0: chucvu = "Nhan vien"
Case 1: chucvu = "Truong nhom"
Case 2: chucvu = "Quan ly"
Case 3: chucvu = "Giam sat"
Case 4: chucvu = "Thuc tap"
End Select
Select Case (i Mod 4)
Case 0: phongban = "Ke toan"
Case 1: phongban = "Ky thuat"
Case 2: phongban = "Kinh doanh"
Case 3: phongban = "Hanh chinh"
End Select
luong = TinhLuong(phongban, chucvu)
' Ghi vao sheet
ws.Cells(i, 1).Value = maNV
ws.Cells(i, 2).Value = ten
ws.Cells(i, 3).Value = gioitinh
ws.Cells(i, 4).Value = ngaysinh
ws.Cells(i, 5).Value = chucvu
ws.Cells(i, 6).Value = phongban
ws.Cells(i, 7).Value = luong
Next i
MsgBox "Da tao " & tongNhanVien & " dong du lieu nhan vien va tinh luong!", vbInformation
End Sub
Function TinhLuong(phongban As String, chucvu As String) As Currency
Dim heSo As Double
Dim luongCoBan As Currency
' He so theo phong ban
Select Case phongban
Case "Ke toan": heSo = 1
Case "Ky thuat": heSo = 1.2
Case "Kinh doanh": heSo = 1.1
Case "Hanh chinh": heSo = 0.9
Case Else: heSo = 1
End Select
' Luong co ban theo chuc vu
Select Case chucvu
Case "Nhan vien": luongCoBan = 5000000
Case "Truong nhom": luongCoBan = 7000000
Case "Quan ly": luongCoBan = 10000000
Case "Giam sat": luongCoBan = 8000000
Case "Thuc tap": luongCoBan = 2000000
Case Else: luongCoBan = 5000000
End Select
TinhLuong = luongCoBan * heSo
End Function
Dim a As Integer
Dim b As String
Dim c As Double
Dim d As Boolean
* Biến: dùng để lưu trữ dữ liệu, giúp ta tìm kiếm thông tin nhanh, chính xác khi xử lý dữ liệu.
* Kiểu dữ liệu của biến:
Ví dụ thực tế, để lấy vợ nhanh, chúng ta phải xác định giới tính ta là Nam/Nữ
- Phải xác định được mình đang phân khúc nào, U30 hay U40, U50 ... thì mới lấy vợ nhanh được.
Tóm lại: nếu biết các xác định kiểu dữ liệu thì phần mềm excel chạy tốc độ nhanh, nếu không thì file excel dữ liệu nhiều thì chạy RẤT CHẬM.
Một số kiểu dữ liệu trong VBA Excel bạn cần ghi nhớ:
Integer: Số nguyên.
Double: Số thực.
String: Chuỗi.
Boolean: Đúng/Sai.
If a > 10 Then
MsgBox "Lớn hơn 10"
ElseIf a = 10 Then
MsgBox "Bằng 10"
Else
MsgBox "Nhỏ hơn 10"
End If
For…Next
For i = 1 To 10
Debug.Print i
Next i
Do While
Do While a < 10
a = a + 1
Loop
For Each
For Each cell In Range("A1:A5")
cell.Value = "Hello"
Next
Range("A1").Value = "Xin chào"
Cells(1, 2).Value = 100
Sheets("Sheet1").Select
MsgBox "Thông báo"
ten = InputBox("Nhập tên:")
a = Range("A1").Value
Range("B1").Value = a * 2
If Range("A1").Value = "X" Then
Range("B1").Value = "Đúng"
End If
Set wb = Workbooks("tenfile.xlsx")
Set ws = wb.Sheets("Sheet1")
For i = 1 To 10
Cells(i, 1).Value = i
Next
Call InThongBao
Sub InThongBao()
MsgBox "Đây là thông báo"
End Sub
Tìm kiếm:
Khóa học VBA Excel miễn phí dành cho người mới bắt đầu học lập trình, đặc biệt DÂN VĂN PHÒNG.