Noname > 26-08-10, 08:32 PM
Private Sub Form_Current()
'Kiểm Tra số thứ tự, nếu Null thì đó là recodr mới
If IsNull(Me.STT) Then
STT.Value = SoTT
End If
End Sub
Function SoTT() As String
Dim so As Integer
so = Nz(DMax("[Couter]", "BangChi", "[Date]= date()"))
Couter.Value = so + 1
SoTT = Date & "-" & Format(Couter, "000")
End Function
thanhtruong > 22-01-15, 02:06 PM
(26-08-10, 08:32 PM)Noname Đã viết: Hôm trước mình giới thiệu thủ thuật tạo số phiếu tăng tự động theo đoạn code của anh phatnq2002 trang Dân Kế Toán
Tạo số chứng từ tăng dần và reset mỗi tháng
Hôm nay, mình giới thiệu đoạn code tạo số chứng từ tăng dần theo mẫu dạng: dd/mm/yy + số TT
Để số thứ tự tự động tăng dần để trường STT là Text. Đồng thời ta thêm 1 trường couter kiểu Number - Integer để đếm số phiếu trong ngày. Trường này sẽ tăng khi bạn nhập phiếu mới với giá trị = max giá trị ngày đó.
Trường STT của bạn sẽ được set giá trị = Date & "-" & format(Couter,"000")
* Chú ý: để biết 1 record có phải được thêm mới hay không, bạn xét ở sự kiện Form_Current() của form. Nếu STT của bạn là null thì nó là record mới.
Mã:Private Sub Form_Current()
'Kiểm Tra số thứ tự, nếu Null thì đó là recodr mới
If IsNull(Me.STT) Then
STT.Value = SoTT
End If
End Sub
Function SoTT() As String
Dim so As Integer
so = Nz(DMax("[Couter]", "BangChi", "[Date]= date()"))
Couter.Value = so + 1
SoTT = Date & "-" & Format(Couter, "000")
End Function
Mời các bạn xem demo về xem:
DownLoad
thanhtruong > 27-01-15, 08:44 AM
Private Sub Form_Current()
'Kiểm Tra số thứ tự, nếu Null thì đó là recodr mới
If IsNull(Me.STT) Then
STT.Value = SoTT
End If
End Sub
Function SoTT() As String
Dim so As Integer
so = Nz(DMax("[Couter]", "BangChi", "[Date]= date()"))
Couter.Value = so + 1
SoTT = format(year(Date)) & "" & Format(Couter, "000")
End Function
thanhtruong > 27-01-15, 11:11 AM
maidinhdan > 27-01-15, 04:11 PM
Private Sub Form_Open(Cancel As Integer)
If IsNull(SoBN) Then
Docmd.GoToRecord , , acNewRec
Me.SoBN.Value = "1"
Me.SoLuu.Value = "1" & "/" & Year(Now) & "/GBN-TTPY"
msgBoxOK DLookup("[NDUNG1]", "tblTHONGBAO", "[SOTB] = 16"), vbInformation, DLookup("[TIEUDE]", "tblTHONGBAO", "[SOTB] = 16")
Me.Tennguoinhan.SetFocus
End If
End Sub
Private Sub cmdthem_Click()
Dim SoAo
If Year(Now) = DLast(Year([Ngaynhan]), "tbl_BBGiaoNhan_Main") Then ' Đây là đoạn mỗi năm reset một lần nè
Docmd.GoToRecord , , acNewRec
SoAo = DLast("[SoBN]", "tbl_BBGiaoNhan_Main")
SoBN = Format(SoAo + 1, "#")
Me.SoLuu.Value = Me.SoBN.Value & "/" & Year(Now) & "/GBN-TTPY"
Me.Dienthoaidelienhe.Value = DLast("[Dienthoaidelienhe]", "tbl_BBGiaoNhan_Main")
Me.Tennguoinhan.SetFocus
Else
Docmd.GoToRecord , , acNewRec
Me.SoBN.Value = "1"
Me.SoLuu.Value = "1" & "/" & Year(Now) & "/GBN-TTPY"
Me.Tennguoinhan.SetFocus
End If
End Sub
tieu_ngao > 21-05-17, 05:34 PM
(26-08-10, 08:32 PM)Noname Đã viết: Hôm trước mình giới thiệu thủ thuật tạo số phiếu tăng tự động theo đoạn code của anh phatnq2002 trang Dân Kế Toán
Tạo số chứng từ tăng dần và reset mỗi tháng
Hôm nay, mình giới thiệu đoạn code tạo số chứng từ tăng dần theo mẫu dạng: dd/mm/yy + số TT
Để số thứ tự tự động tăng dần để trường STT là Text. Đồng thời ta thêm 1 trường couter kiểu Number - Integer để đếm số phiếu trong ngày. Trường này sẽ tăng khi bạn nhập phiếu mới với giá trị = max giá trị ngày đó.
Trường STT của bạn sẽ được set giá trị = Date & "-" & format(Couter,"000")
* Chú ý: để biết 1 record có phải được thêm mới hay không, bạn xét ở sự kiện Form_Current() của form. Nếu STT của bạn là null thì nó là record mới.
Mã:Private Sub Form_Current()
'Kiểm Tra số thứ tự, nếu Null thì đó là recodr mới
If IsNull(Me.STT) Then
STT.Value = SoTT
End If
End Sub
Function SoTT() As String
Dim so As Integer
so = Nz(DMax("[Couter]", "BangChi", "[Date]= date()"))
Couter.Value = so + 1
SoTT = Date & "-" & Format(Couter, "000")
End Function
Mời các bạn xem demo về xem:
DownLoad
maidinhdan > 22-05-17, 12:02 AM
(21-05-17, 05:34 PM)tieu_ngao Đã viết:(26-08-10, 08:32 PM)Noname Đã viết: Hôm trước mình giới thiệu thủ thuật tạo số phiếu tăng tự động theo đoạn code của anh phatnq2002 trang Dân Kế Toán
Tạo số chứng từ tăng dần và reset mỗi tháng
Hôm nay, mình giới thiệu đoạn code tạo số chứng từ tăng dần theo mẫu dạng: dd/mm/yy + số TT
Để số thứ tự tự động tăng dần để trường STT là Text. Đồng thời ta thêm 1 trường couter kiểu Number - Integer để đếm số phiếu trong ngày. Trường này sẽ tăng khi bạn nhập phiếu mới với giá trị = max giá trị ngày đó.
Trường STT của bạn sẽ được set giá trị = Date & "-" & format(Couter,"000")
* Chú ý: để biết 1 record có phải được thêm mới hay không, bạn xét ở sự kiện Form_Current() của form. Nếu STT của bạn là null thì nó là record mới.
Mã:Private Sub Form_Current()
'Kiểm Tra số thứ tự, nếu Null thì đó là recodr mới
If IsNull(Me.STT) Then
STT.Value = SoTT
End If
End Sub
Function SoTT() As String
Dim so As Integer
so = Nz(DMax("[Couter]", "BangChi", "[Date]= date()"))
Couter.Value = so + 1
SoTT = Date & "-" & Format(Couter, "000")
End Function
Mời các bạn xem demo về xem:
DownLoad
Cho mình hỏi là nếu dùng Dmax để lấy số lớn nhất + 1
Nhưng mình muốn lấy số trên nó 1 dòng ( vì mình dùng làm số biên lai tăng dần nên khi chưa lấy thì dòng cuối chưa có số Biên lai nào hết)
Mình dùng Dlast nhưng nó hiểu là dòng cuối cùng chưa có số nên + 1 nó sẽ ko ra.
Vậy thì dùng cách nào để lấy, mong dc giúp đỡ.
tieu_ngao > 22-05-17, 05:36 AM
(22-05-17, 12:02 AM)maidinhdan Đã viết:Hi maidinhdan. Hom trước hàm Dân viết cho là lấy số TT, còn bây giờ mình muốn lấy số hóa đơn tự tăng khi nhập số hóa đớn đầu tiên. Mình dùng dmax cũng dc nhưng thấg ko ổn, còn dlast thì thua.(21-05-17, 05:34 PM)tieu_ngao Đã viết:(26-08-10, 08:32 PM)Noname Đã viết: Hôm trước mình giới thiệu thủ thuật tạo số phiếu tăng tự động theo đoạn code của anh phatnq2002 trang Dân Kế Toán
Tạo số chứng từ tăng dần và reset mỗi tháng
Hôm nay, mình giới thiệu đoạn code tạo số chứng từ tăng dần theo mẫu dạng: dd/mm/yy + số TT
Để số thứ tự tự động tăng dần để trường STT là Text. Đồng thời ta thêm 1 trường couter kiểu Number - Integer để đếm số phiếu trong ngày. Trường này sẽ tăng khi bạn nhập phiếu mới với giá trị = max giá trị ngày đó.
Trường STT của bạn sẽ được set giá trị = Date & "-" & format(Couter,"000")
* Chú ý: để biết 1 record có phải được thêm mới hay không, bạn xét ở sự kiện Form_Current() của form. Nếu STT của bạn là null thì nó là record mới.
Mã:Private Sub Form_Current()
'Kiểm Tra số thứ tự, nếu Null thì đó là recodr mới
If IsNull(Me.STT) Then
STT.Value = SoTT
End If
End Sub
Function SoTT() As String
Dim so As Integer
so = Nz(DMax("[Couter]", "BangChi", "[Date]= date()"))
Couter.Value = so + 1
SoTT = Date & "-" & Format(Couter, "000")
End Function
Mời các bạn xem demo về xem:
DownLoad
Cho mình hỏi là nếu dùng Dmax để lấy số lớn nhất + 1
Nhưng mình muốn lấy số trên nó 1 dòng ( vì mình dùng làm số biên lai tăng dần nên khi chưa lấy thì dòng cuối chưa có số Biên lai nào hết)
Mình dùng Dlast nhưng nó hiểu là dòng cuối cùng chưa có số nên + 1 nó sẽ ko ra.
Vậy thì dùng cách nào để lấy, mong dc giúp đỡ.
Hàm hôm trước viết cho anh sao không lấy ra mà dùng.
Hàm ở trên chỉ thiếu hàm if thôi.
maidinhdan > 22-05-17, 10:28 AM
(22-05-17, 05:36 AM)tieu_ngao Đã viết:(22-05-17, 12:02 AM)maidinhdan Đã viết:Hi maidinhdan. Hom trước hàm Dân viết cho là lấy số TT, còn bây giờ mình muốn lấy số hóa đơn tự tăng khi nhập số hóa đớn đầu tiên. Mình dùng dmax cũng dc nhưng thấg ko ổn, còn dlast thì thua.(21-05-17, 05:34 PM)tieu_ngao Đã viết:(26-08-10, 08:32 PM)Noname Đã viết: Hôm trước mình giới thiệu thủ thuật tạo số phiếu tăng tự động theo đoạn code của anh phatnq2002 trang Dân Kế Toán
Tạo số chứng từ tăng dần và reset mỗi tháng
Hôm nay, mình giới thiệu đoạn code tạo số chứng từ tăng dần theo mẫu dạng: dd/mm/yy + số TT
Để số thứ tự tự động tăng dần để trường STT là Text. Đồng thời ta thêm 1 trường couter kiểu Number - Integer để đếm số phiếu trong ngày. Trường này sẽ tăng khi bạn nhập phiếu mới với giá trị = max giá trị ngày đó.
Trường STT của bạn sẽ được set giá trị = Date & "-" & format(Couter,"000")
* Chú ý: để biết 1 record có phải được thêm mới hay không, bạn xét ở sự kiện Form_Current() của form. Nếu STT của bạn là null thì nó là record mới.
Mã:Private Sub Form_Current()
'Kiểm Tra số thứ tự, nếu Null thì đó là recodr mới
If IsNull(Me.STT) Then
STT.Value = SoTT
End If
End Sub
Function SoTT() As String
Dim so As Integer
so = Nz(DMax("[Couter]", "BangChi", "[Date]= date()"))
Couter.Value = so + 1
SoTT = Date & "-" & Format(Couter, "000")
End Function
Mời các bạn xem demo về xem:
DownLoad
Cho mình hỏi là nếu dùng Dmax để lấy số lớn nhất + 1
Nhưng mình muốn lấy số trên nó 1 dòng ( vì mình dùng làm số biên lai tăng dần nên khi chưa lấy thì dòng cuối chưa có số Biên lai nào hết)
Mình dùng Dlast nhưng nó hiểu là dòng cuối cùng chưa có số nên + 1 nó sẽ ko ra.
Vậy thì dùng cách nào để lấy, mong dc giúp đỡ.
Hàm hôm trước viết cho anh sao không lấy ra mà dùng.
Hàm ở trên chỉ thiếu hàm if thôi.
chuvoicon > 24-05-17, 10:23 AM