tieu_ngao > 18-06-17, 11:04 AM
(18-06-17, 10:52 AM)MTNQ Đã viết:Cám ơn anh! Có để thể hướng dẫn cách sửa hàm fctaomabn thành dạng text dc ko anh?(17-06-17, 02:23 PM)tieu_ngao Đã viết: MTNQ giải thích giùm mình đoạn này, mình chưa hiểu:Nếu mình muốn lấy mã theo dạng: yyyymmdd001 kiểu dữ liệu của mình là textMã:datNgay_Max = DateValue(Mid(lngMaBN_Max, 5, 2) & "/" & Mid(lngMaBN_Max, 3, 2) & "/" & Left(lngMaBN_Max, 2))
thì làm thế nào?
Xin lỗi. Hàm DateValue trong trường hợp này có thể trả về giá trị không như mong muốn nếu format ngày giờ trên hệ thống khác "dd/MM/yyyy"
Nên sửa lại như sau
Mã:datNgay_Max = Format(Mid(lngMaBN_Max, 5, 2) & "/" & Mid(lngMaBN_Max, 3, 2) & "/" & Left(lngMaBN_Max, 2), "dd/mm/yy")
-Nếu muốn format theo kiểu yyyymmdd001 thì :
datNgay_Max = Format(Mid(lngMaBN_Max, 7, 2) & "/" & Mid(lngMaBN_Max, 5, 2) & "/" & Left(lngMaBN_Max, 4), "dd/mm/yy")
Tuy nhiên phải sửa hàm fcTaoMaBN lại cho phù hợp với dữ liệu kiểu text
MTNQ > 18-06-17, 11:04 AM
(17-06-17, 09:41 AM)cannguyen Đã viết:(17-06-17, 06:35 AM)MTNQ Đã viết: File của bạn đây:
http://www.mediafire.com/file/my2x1d7x7y4q7gh/PK1.rar
Cám ơn bạn rất nhiều.
Hiện tại mình không có máy nên chưa test được. Hi vọng là ok
Private Sub TenBN_AfterUpdate()
If Nz(Me.TenBN, "") = "" Then Exit Sub
On Error GoTo ErrorHandler
If Nz(MaBN, 0) = 0 Then
Me.MaBN = fcTaoMaBN
DaLuu = "Y"
DoCmd.RunCommand acCmdSaveRecord
End If
Exit_ErrorHandler:
Exit Sub
ErrorHandler:
If Err.Number = 3022 Then
Call XuLyTrungMaBN
Resume Next
Else
MsgBox "Err Number: " & Err.Number & vbCrLf & Err.Description, , "Error: TenBN_AfterUpdate"
End If
Resume Exit_ErrorHandler
End Sub
Private Sub XuLyTrungMaBN()
Dim I As Integer
Dim lngMaBN As Long
On Error GoTo ErrorHandler
lngMaBN = Me.MaBN
TaoLaiMabn:
lngMaBN = lngMaBN + 1
If DCount("[MaBN]", "BenhNhan", "[MaBN] = " & lngMaBN) = 0 Then
Me.MaBN = lngMaBN
DoCmd.RunCommand acCmdSaveRecord
Else
GoTo TaoLaiMabn
End If
Exit_ErrorHandler:
Exit Sub
ErrorHandler:
If Err.Number = 3022 Then
I = I + 1
If I < 100 Then
Resume TaoLaiMabn
Else
MsgBox "Loi trung MaBN: vui long lien he Admin!", vbCritical, "Loi!"
End If
Else
MsgBox "Err Number: " & Err.Number & vbCrLf & Err.Description, , "Error: XuLyTrungMaBN"
End If
Resume Exit_ErrorHandler
End Sub
MTNQ > 18-06-17, 05:13 PM
(18-06-17, 11:04 AM)tieu_ngao Đã viết: Cám ơn anh! Có để thể hướng dẫn cách sửa hàm fctaomabn thành dạng text dc ko anh?
MTNQ > 18-06-17, 05:22 PM
(18-06-17, 11:04 AM)MTNQ Đã viết:(17-06-17, 09:41 AM)cannguyen Đã viết:(17-06-17, 06:35 AM)MTNQ Đã viết: File của bạn đây:
http://www.mediafire.com/file/my2x1d7x7y4q7gh/PK1.rar
Cám ơn bạn rất nhiều.
Hiện tại mình không có máy nên chưa test được. Hi vọng là ok
MTNQ đã up lại file ở bài trên bạn tải lại nhé
tieu_ngao > 19-06-17, 09:26 PM
(18-06-17, 05:13 PM)MTNQ Đã viết:(18-06-17, 11:04 AM)tieu_ngao Đã viết: Cám ơn anh! Có để thể hướng dẫn cách sửa hàm fctaomabn thành dạng text dc ko anh?
đây:http://www.mediafire.com/file/o2yv1285k5agblr/PK2.rar
bạn test thử nhé (Lâu rùi không làm Bound Form )
advnamk > 27-06-17, 11:31 PM
(15-06-17, 02:48 PM)cannguyen Đã viết: Chào các bạn
Mình cần tạo form Bệnh nhân với yêu cầu Mã khách hàng sắp xếp theo ngày. Cấu trúc Mã BN như sau: Năm+Tháng+Ngày+STT. Ví dụ: 2017061501
Mình viết lệnh cho sự kiện như sau:
If [NgayNay] = [NgayTruoc] Then
L2 = BNCuoi + 1
Else
L2 = 1
End If
DoCmd.GoToRecord , , acNewRec
MaBN = Year(NgayDau) & Right(("0" & Month(NgayDau)), 2) & Right(("0" & Day(NgayDau)), 2) & Right(("00" & L2), 2)
Nhâp 1 máy thì ok nhưng nhập nhiều máy thì lỗi trùng mã bệnh nhân. Nhờ các bạn giúp nhé
Mình gửi kèm link: https://drive.google.com/open?id=0B7F3oA...HNoeE5nNm8
Cám ơn các bạn