Mình xin góp vài í rất nhỏ ở những khía cạnh rất khác; Đó là các khâu từ thiết kế trang tính đến các thói quen khi lập trình,. . . . a./ Những gớp của mình về thiết kế như sau:
1) Tên trang tính không nên là 'KHACHHANG', mà nên là 'KhachHang';
Nếu là mình thì nên này sẽ là: 'KHang'
Tương tự thay vì 'CHITIETXUAT' sao không là 'CTietX'
2) Mã hàng hóa nên có độ dày như nhau; Những mã đang ngắn ta nên thêm các kí tự "_' cho đủ dài
Điều này tránh những sai ngớ ngẫn khi gõ nhập liệu, do thuận tiện hơn trong kiểm tra, xoát xét
2.1) Nếu được 'Số fiếu' cũng nên có độ dài như nhau; Nếu cái nào ngắn hơn ta nên thêm bằng những "_"
3) Là mình thì tên các trường (cột) không như bạn:
'Mã khách hàng' => 'Mã KH'; 'Mã Hàng' => 'Mã HH',. . . . .
4) Hai trang 'KhachHang' & 'HHoa' ta nên nhập lại làm 1 & gợi í của mình về tên gọi trang này sẽ là 'DMuc'
Trong nớ, ta sẽ thiết lập 2 bảng; 1 bảng bắt dầu từ cột [A:A] & bảng còn lại bắt đầu từ cột [AA:AA]
4.1) TRpng trang 'KhHang' của bạn còn thiếu cột ghi lại ngày sinh của khách hàng;
Ta nên gởi lời chào nho nhỏ khi khách hàng đến ngày sinh nhật;
Ông bà ta nói: Lời chào cao hơn mân cỗ, fải không bạn? b./ Vế những liên quan đến VBA:
1) Tên các tham biến hay các Control của bạn quá dài;
Nếu là mình thì thay vì 'th_so_phieu_xuat' sẽ là 'tbSoFXuat' hay chỉ là 'tbSoFX'; Hay thay vì 'cb_ma_hang_hoa' sao không là 'cbMaHH' hay 'cbMaHg'
2) Trong macro Private Sub cmd_add_Click() của bạn có dòng lệnh:
Con số 100 này tiềm ẩn sai lầm mà ta sẽ không dễ fát hiện sau 1 thời gian vận hành CSDL;
Là mình thì làm cách này:
Khai báo 1 Const xài chung trong toàn Form, như
Mã:
Const SoDg As Long =100
1 thời gian sau, ta chỉ việc khai tăng giá trị chứa trong Const này theo tiến trình tăng số dong dữ liệu là được ăn ngon, ngủ iên!
3) Macro này có thể rút gọn lại bằng cách đưa vô vòng lặp lặp lại 4 lần là được:
PHP:
Sub ve_khung(dong As Integer)
Range("A" & dong & ":G" & dong).Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
0 With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous: .ColorIndex = 0
.TintAndShade = 0: .Weight = xlThin
End With
1 With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous: .ColorIndex = 0
.TintAndShade = 0: .Weight = xlThin
End With
2 With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous: .ColorIndex = 0
.TintAndShade = 0: .Weight = xlThin
End With
3 With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous: .ColorIndex = 0
.TintAndShade = 0: .Weight = xlThin
End With
4 With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous: .ColorIndex = 0
.TintAndShade = 0: .Weight = xlThin
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
End Sub