Mình có gặp vấn đề khi nhập liệu từ Form VBA vào các dòng trong Excel nhờ anh em giúp đỡ.
Vì cột Mã Khách hàng hơi rườm rà khi mình muốn dạng vừa ký tự vừa có số ngày tháng năm và số thứ tự
Ví Dụ: NH141202001 (141202 là 02/12/2014, 001 là là số thứ tự và sẽ +1 ở hàng tiếp theo) nên mình làm công thức Mã KH trong excel là:
và mình kéo xuống áp dụng cho những hàng phía dưới.
Khi nhập từ Form vào thì nó lại nhảy xuống ô cuối mà không bị dính công thức trên.
Vậy làm cách nào khi nếu hàng đó trống thì ta sẽ nhập vào hàng đó chứ không phải nhập vào hàng không có công thức Mã Khách Hàng.
Xin anh em chỉ giúp.
Hoặc có thể chỉ mình code tự động sinh mã khách hàng trên trong VBA không. Cám ơn nhiều..!
Đoạn code mình viết:
Vì cột Mã Khách hàng hơi rườm rà khi mình muốn dạng vừa ký tự vừa có số ngày tháng năm và số thứ tự
Ví Dụ: NH141202001 (141202 là 02/12/2014, 001 là là số thứ tự và sẽ +1 ở hàng tiếp theo) nên mình làm công thức Mã KH trong excel là:
PHP:
=IF(LEN(A1)>0,"GB"& MID(TEXT(B1,"dd/mm/yyyy"),9,2)& MID(TEXT(B1,"dd/mm/yyyy"),4,2)& MID(TEXT(B1,"dd/mm/yyyy"),1,2)&TEXT(A1,"000"),IF(C1="",""))
Khi nhập từ Form vào thì nó lại nhảy xuống ô cuối mà không bị dính công thức trên.
Vậy làm cách nào khi nếu hàng đó trống thì ta sẽ nhập vào hàng đó chứ không phải nhập vào hàng không có công thức Mã Khách Hàng.
Xin anh em chỉ giúp.
Hoặc có thể chỉ mình code tự động sinh mã khách hàng trên trong VBA không. Cám ơn nhiều..!
Đoạn code mình viết:
PHP:
Private Sub cmdNhapLieu_Click()
Dim RowCount As Long
Dim ctl As Control'
If Me.cbxhang.Value = "" Then
MsgBox "Chua nhap Hãng.", vbExclamation, "Nhap lieu"
Me.cbxhang.SetFocus
Exit Sub
End If
If Me.txthvt.Value = "" ThenMsgBox "Chua nhap Tên KH.", vbExclamation, "Nhap lieu"
Me.txthvt.SetFocus
Exit SubEnd If
If Me.cbxcode.Value = "" ThenMsgBox "Chua nhap CODE.", vbExclamation, "Nhap lieu"
Me.cbxcode.SetFocus
Exit Sub
End If
'Write data to worksheet
RowCount = Worksheets("Nhap lieu").Range("A4").CurrentRegion.Rows.Count
With Worksheets("Nhap lieu").Range("A4")
.Offset(RowCount, 2).Value = Me.cbxhang.Value
.Offset(RowCount, 4).Value = Me.cbxcode.Value
.Offset(RowCount, 5).Value = Me.txthvt.Value
End WithEnd Sub
Lần chỉnh sửa cuối:


