Professional Documents
Culture Documents
Macro l g?
Macro l mt lnh lnh thc thi mt hay nhiu thao tc ngi dng ln i tng Excel
c m ha thnh cc dng lnh theo ngn ng lp trnh VBA.
M menu Developer
(Excel 2007)
Sau khi chn hin th tab Developer chng ta thy xut hin menu di y
Chy Macro: t con tr trong khi Sub..End Sub (trong thn mt macro). Nhn F5
hoc chn nt Run Macro
Chy Macro
Bn hy chn mt vng d liu cn thc hin cc thao tc nh dng nh l lm trn.
Vo menu Developer-> Macro (Phm tt ALT+F8). Chn macro DinhDang bn s thy
ton b cc thao tc th cng trc y c t ng lm.
Xem v sa Macro
Vo menu Developer-> Macro (Phm tt ALT+F8). Chn macro DinhDang, chn Edit.
Nhp chut phi trn nt lnh, chn Assign Macro, ca s Macro hin ra, chn macro
DinhDang.
Sub FillData()
Dim I As Long
MsgBox "Ban se dien cac gi tri vao A1:A100."
For I = 1 To 100
Cells(I, 1).Value = I
Next I
End Sub
Function ThueTNCN(Luong As Double, Optional Socon As Integer) As Double
Dim GiamTruNuoiCon As Double, MucLuong As Double, ThucLuong As Double
MucLuong = 9
GiamTruNuoiCon = 3.6
ThucLuong = Luong / 10 ^ 6 - MucLuong - Socon * GiamTruNuoiCon
Select Case ThucLuong
Case Is <= 0
ThueTNCN = 0
Case Is <= 5
ThueTNCN = ThucLuong * 0.05
Case Is <= 10
ThueTNCN = 5 * 0.05 + (ThucLuong - 5) * 0.1
Case Is <= 18
ThueTNCN = 5 * 0.05 + 5 * 0.1 + (ThucLuong - 10) * 0.15
Case Is <= 32
ThueTNCN = 5 * 0.05 + 5 * 0.1 + 8 * 0.15 + (ThucLuong - 18) * 0.2
Case Is <= 52
ThueTNCN = 5 * 0.05 + 5 * 0.1 + 8 * 0.15 + 14 * 0.2 + (ThucLuong - 32) * 0.25
Case Is <= 80
ThueTNCN = 5 * 0.05 + 5 * 0.1 + 8 * 0.15 + 14 * 0.2 + 20 * 0.25 + (ThucLuong - 52) * 0.3
Case Else
ThueTNCN = 5 * 0.05 + 5 * 0.1 + 8 * 0.15 + 14 * 0.2 + 20 * 0.25 + 28 * 0.3 + (ThucLuong -
80) * 0.35
End Select
ThueTNCN = ThueTNCN * 10 ^ 6
End Function
BI TP:
1. To macro k bng theo mu bn chn
2. Gn macro ln menu.
3. M tp tin Thuong theo doanh so.xlsx. Copy cc hm t to trong tp tin thuong tho
doanh so.txt v m bo chy c hm NhanThuong. Lu tnh tp tin c nh
dng lu c macro.