-
Đếm mã còn thiếu
nam8384 > 05-05-16, 05:38 PM
E chào các bác. Em có các mã hv ví dụ từ 1…100 và có nhiều người nhập. Ví dụ như hôm nay người này nhập từ mã 1 đến 10, ngày mai người khác không biết lại nhập từ 15 đến 30 chẳng hạn, như vậy là thiếu mất mã từ 11 đến 14. Vậy có cách nào để đếm những mã còn nhập thiếu để mình còn biết không. Cảm ơn các bác đã giúp đỡ -
RE: Đếm mã còn thiếu
lamvankhanh > 05-05-16, 07:14 PM
Bạn thử áp dụng đoạn Code sau vào chương trình của bạn xem:
Private Sub Cmdkiemtra_Click()
Dim Db As Database, rsList As Recordset
Dim sSQL As String, sKetQuaKT As String
Dim nSoTheHienHanh As Long
Dim sThieuSo As String, sTrungSo As String
sKetQuaKT = Me.Application.CurrentProject.path & "\KetQua.Txt"
Open sKetQuaKT For Output As #1
sSQL = "SELECT sopxk FROM pxk ORDER BY sopxk"
Set Db = CurrentDb
Set rsList = Db.OpenRecordset(sSQL)
With rsList
.MoveFirst
nSoTheHienHanh = 0
sThieuSo = ""
sTrungSo = ""
While Not .EOF
If !sopxk = nSoTheHienHanh Then
sTrungSo = sTrungSo & _
IIf(Len(sTrungSo) = 0, "", ", ") & _
Trim(str(nSoTheHienHanh))
Else
Do While !sopxk - nSoTheHienHanh > 1
nSoTheHienHanh = nSoTheHienHanh + 1
sThieuSo = sThieuSo & IIf(Len(sThieuSo) = 0, "", ", ") & _
Trim(str(nSoTheHienHanh))
Loop
End If
nSoTheHienHanh = !sopxk
.MoveNext
Wend
End With
rsList.Close
Db.Close
MsgBox "da xuat ra file hay mo file KetQua.Txt de xem", vbCritical
Print #1, "Danh sach so phieu xuat kho the thieu: "
Print #1, sThieuSo
Print #1,
Print #1, "Danh sach so Phieu xuat kho bi trung lap: "
Print #1, sTrungSo
Close #1
End Sub -
RE: Đếm mã còn thiếu
ongke0711 > 06-05-16, 01:37 AM
Tôi nghĩ bạn đang ở giai đoạn nhập dữ liệu cơ bản nên nhanh nhất là làm trên Excel, lấy toàn bộ danh sách hiện vật hiện có, tạo thêm các cột cho giống như table trong Access, cập nhật dữ liệu cho các cột rồi import 1 lần vô table Access sẽ tiện hơn.
Vd: Cột mã hv của bạn chỉ là số thứ tự từ 1 - 100 thì tạo cột số tt trong excel nhanh hơn không. -
RE: Đếm mã còn thiếu
nam8384 > 06-05-16, 10:54 AM
(06-05-16, 01:37 AM)ongke0711 Đã viết:
E xin cảm ơn bác lamvankhanh và ongke. Em cũng làm như cách của bác ongke, hôm qua cũng vừa nghĩ ra xong, sử dụng thêm query find unmatch. Giờ thì giải quyết xong rồi. E cảm ơn hai bác rất nhiềuTôi nghĩ bạn đang ở giai đoạn nhập dữ liệu cơ bản nên nhanh nhất là làm trên Excel, lấy toàn bộ danh sách hiện vật hiện có, tạo thêm các cột cho giống như table trong Access, cập nhật dữ liệu cho các cột rồi import 1 lần vô table Access sẽ tiện hơn.
Vd: Cột mã hv của bạn chỉ là số thứ tự từ 1 - 100 thì tạo cột số tt trong excel nhanh hơn không.