pherotao > 08-12-10, 03:38 PM
Noname > 08-12-10, 04:17 PM
UPDATE table1 SET MSGD = [color=#FF0000]"Số mã số "[/color]
WHERE ....
Nguyendinhthanh > 10-01-11, 09:59 PM
(15-09-10, 01:43 AM)Noname Đã viết: Mình demo thử yêu cầu của bạn nhé.
Giả sử bạn có 1 table DS(ID,code, numchar,group)
Đoạn code sau có lẽ đáp ứng được nhu cầu của bạn:
Giải thuật của mình như sau:
Mã:Private Sub Command1_Click()
Dim rs As Recordset
Dim i As Integer ' Bien de duyet
Dim j As Integer ' bien luu group
Dim X1 As Integer ' so phan tu group m-1
Dim X2 As Integer ' so phan tu group m
Dim n As Integer ' so record .
Set rs = CurrentDb.OpenRecordset("DS", dbOpenDynaset)
rs.MoveLast
n = rs.RecordCount 'vi du n=37
If (n Mod 10) > 5 Then
X1 = Round((((n Mod 10) + 10) / 2) + 0.5, 0)
X2 = Fix(((n Mod 10) + 10) / 2)
Else ' truong hop so du <5
X1 = n Mod 10
X2 = 0
End If
rs.MoveFirst
i = 1
j = 1
Do Until rs.EOF
'Cap nhat Numchar
rs.Edit
rs("numchar") = i
rs("group") = j
rs.Update
If ((i < (n - X1 - X2)) And ((i Mod 10) = 0)) Or ((i = (n - X1 - X2)) And (X1 > 5)) Or (i = n - X2) Then
j = j + 1
End If
i = i + 1
rs.MoveNext
Loop
rs.Close
End Sub
Mời xem file đính kèm
Noname > 10-01-11, 10:08 PM
Nguyendinhthanh > 10-01-11, 10:25 PM
(10-01-11, 10:08 PM)Noname Đã viết:(10-01-11, 09:59 PM)Nguyendinhthanh Đã viết: Nếu có thêm fields số thứ tự nhóm (STTNhom) đánh số thứ tự cho mỗi nhóm (từ 1 đến hết nhóm; chuyển sang nhóm khác lại đánh số thứ tự từ 1 đến hết nhóm) thì làm thế nào nhỉ
Đó là việc của report.
Hình như trong box report mình có nói đấy! Sang đó mà kiếm
Noname > 10-01-11, 10:52 PM