pntnguyen > 22-01-14, 11:24 PM
quan_pc > 23-01-14, 12:31 AM
(22-01-14, 11:24 PM)pntnguyen Đã viết: Mình có 1 table có cấu trúc như sau:
Col 1: Tên KH
Col 2: Đơn hàng
Col 3: Ngày nhận hàng
Col 4: Mã đơn hàng
Điều kiện như sau:
Ở Col 4 sẽ tự động cập nhật dữ liệu lấy điều kiện từ ngày nhận hàng
VD:
Ngày nhận hàng là 01/01/2014
Mã đơn hàng sẽ là: 01A14
Diễn giải:
- 2 ký tự đầu là tháng (01)
- ký tự thứ 3: A - nếu ngày nhận từ ngày 1 đến ngày 10, B - từ ngày 11 đến 20, C - từ ngày 21 trở đi
- Ký tự thứ 4,5: năm của ngày nhận (14)
Các bạn hướng dẫn mình nhé, mình mới làm quen với access nên chưa hiểu nhiều. Thanks
Function layma(ngay)
haisodau = Str(Month(ngay))
If haisodau <= 9 Then
haisodau = "0" & haisodau 'lay so 0 neu ngay nho hon 9
End If
Select Case Day(ngay)
Case Is <= 10
layngay = "A"
Case Is <= 20
layngay = "B"
Case Else
layngay = "C"
End Select
kytubonnam = Right(Year(ngay), 2)
layma = kytubonnam
ketqua = haisodau & layngay & kytubonnam
layma = Replace(ketqua, " ", "") ' bo khoang trang phan cach giua ngay va ma so sau do lay ket qua
End Function
Xuân Thanh > 24-01-14, 02:53 PM
Function LayMa(Ngay as Date) As String
LayMa = Right("00" & Month(Ngay), 2) & IIf(Day(Ngay)<=10, "A", IIf(Day(Ngay)<=20, "B","C")) & Right(Year(Ngay),2)
End Function
quan_pc > 24-01-14, 04:50 PM
(24-01-14, 02:53 PM)Xuân Thanh Đã viết: Tham gia một hàm tự viết trong ModulCách của anh rất gọn và hay, em sẽ cố gắng học hỏi thêm về code , Xin cảm ơn anh rất nhiều.
Mã PHP:Function LayMa(Ngay as Date) As String
LayMa = Right("00" & Month(Ngay), 2) & IIf(Day(Ngay)<=10, "A", IIf(Day(Ngay)<=20, "B","C")) & Right(Year(Ngay),2)
End Function
Thân mến
@quanpc ; Cố gắng nghiên cứu viết cho gọn code