• Đánh số TT trong Query hoặc Form
  • Đánh số TT trong Query hoặc Form

    wintq > 22-07-15, 09:37 PM

    Sau khi đã chọn lọc mình muốn đánh số TT từ 1,2,3, lại nhưng không được. Mình đã tìm nhiều bài trên mạng tuy đã đánh được nhưng những giá trị trung nhau nó lại cho số TT trung nhau. Ai làm được điều này giúp mình mới đang cần gấp. (stt trong Report thì ok mình muón hiên ra trên Form).

    Kiều mình muốn hiên ra là: STT và Họ tên người thứ nhất rồi bấm Next để hiên tiếp stt và Họ tên người thứ 2
  • RE: Đánh số TT trong Query hoặc Form

    tranthanhan1962 > 22-07-15, 09:51 PM

    (22-07-15, 09:37 PM)wintq Đã viết: Sau khi đã chọn lọc mình muốn đánh số TT từ 1,2,3, lại nhưng không được. Mình đã tìm nhiều bài trên mạng tuy đã đánh được nhưng những giá trị trung nhau nó lại cho số TT trung nhau. Ai làm được điều này giúp mình mới đang cần gấp. (stt trong Report thì ok mình muón hiên ra trên Form).

    Kiều mình muốn hiên ra là: STT và Họ tên người thứ nhất rồi bấm Next để hiên tiếp stt và Họ tên người thứ 2

    Nếu bạn chỉ muốn hiện lại số thứ tự trên Form sau mỗi lần lọc thì đâu cần phải viết code chi cho nó mệt. Bạn chỉ cần tạo 1 textbox STT rồi gán công thức =[Form].[CurrentRecord] là xong thôi mà. 007
  • RE: Đánh số TT trong Query hoặc Form

    Minh Tiên > 24-07-15, 11:13 AM

    Bác tranthanhnhan1962 ơi ! Tôi sử dụng Acc2007, Tạo textbox, đánh số tt như bác HD (=[Form].[CurrentRecord]) nhưng không ra số tt mà chỉ hiển thị toàn số 1.
         Còn thiếu j ko bác ?Nhờ bác HD thêm.
    Thanks !
  • RE: Đánh số TT trong Query hoặc Form

    tranthanhan1962 > 24-07-15, 03:00 PM

    Mình đang sử dụng access 2003. Nên không test được. Nhưng bạn thử tạo một textbox tên là STT rồi đưa code này vào xem nó có chạy không.

    Mã PHP:
    Private Sub Form_Current()
    Me.STT Me.CurrentRecord
    End Sub 
  • RE: Đánh số TT trong Query hoặc Form

    Minh Tiên > 24-07-15, 03:50 PM

    Nếu dùng code Form_Current thì:
    Khi chọn đến Record 1 tất cả hiển thị stt=1, Record 2 tất cả hiển thị stt=2, ...
    Thân./.
  • RE: Đánh số TT trong Query hoặc Form

    paulsteigel > 24-07-15, 04:23 PM

    (22-07-15, 09:37 PM)wintq Đã viết: Sau khi đã chọn lọc mình muốn đánh số TT từ 1,2,3, lại nhưng không được. Mình đã tìm nhiều bài trên mạng tuy đã đánh được nhưng những giá trị trung nhau nó lại cho số TT trung nhau. Ai làm được điều này giúp mình mới đang cần gấp. (stt trong Report thì ok mình muón hiên ra trên Form).

    Kiều mình muốn hiên ra là: STT và Họ tên người thứ nhất rồi bấm Next để hiên tiếp stt và Họ tên người thứ 2

    Không rõ có phải ý định của tác giả là:
    + Có 1 trường số thứ tự;
    + Khi thêm bản ghi thì trường STT này tự động tăng lên 1 đơn vị và giá trị STT này sẽ được lưu vào trường STT trong Cơ sở dữ liệu;

    Nếu tác giả muốn như vậy thì có thể dùng hàm DMAX tại sự kiện Form_BeforeInsert trong đó
    STT=nz(DMax("Ten trường cần lấy giá trị mã","Tên bảng", ["Tiêu chí - nếu có"]),0)+1

    Với trường hợp này thì số thứ tự sẽ tự động tăng lên mỗi khi bạn có ý định thêm bản ghi
  • RE: Đánh số TT trong Query hoặc Form

    Minh Tiên > 24-07-15, 05:03 PM

    Không phải là Set và lưu số tt vào table đâu paulsteigel.
    Đây là trao đổi cách hiển thị số tt trên Form không thông qua query hay table mà là hiển thị trực tiếp !
    Thân./.
  • RE: Đánh số TT trong Query hoặc Form

    tranthanhan1962 > 24-07-15, 11:22 PM

    (24-07-15, 03:50 PM)Minh Tiên Đã viết: Nếu dùng code Form_Current thì:
    Khi chọn đến Record 1 tất cả hiển thị stt=1, Record 2 tất cả hiển thị stt=2, ...
    Thân./.

    Mình chưa cảm nhận được tất cả là tất cả gì. Bạn post thử một tấm hình lên xem.
  • RE: Đánh số TT trong Query hoặc Form

    Minh Tiên > 25-07-15, 01:10 PM

    Có nghĩa: Mình có 5 record, nếu đánh số tt thì là: 1,2,3,4,5. Nhưng khi dùng đoạn code như bác HD thì: Khi di chuyển con chuột vào record 1 (Form hiển thị dạng Continuous ) thì stt ở 5 record (dòng) đều hiển thị số 1, con chuột vào record 2 thì stt của 5 dòng hiển thị số 2, ...
    Thân./.
  • RE: Đánh số TT trong Query hoặc Form

    tranthanhan1962 > 25-07-15, 11:46 PM

    Mình hiểu rồi. Textbox STT của mình là Textbox có Control Source là Unbound, trong khi Textbox STT của các bạn có Control Sour là field STT của query. Do mình hiểu nhằm các bạn chỉ cần một textbox tạo số thứ tự chứ không cần đưa số này vào field STT trên record source của form. Sorry nha.
    Vậy là cái này lỗi tại mình chứ không phải office 2003 khác với offiec 2007.
    Nếu muốn xử lý đưa STT này vào field thì cần phải viết code duyệt form ở event Form Load hay Form Open hoặc vào button lọc hay gì đó để cập nhật lại STT của các bạn.
     

    Mã:
    Sub DanhSoThuTu()
    Dim Bang As Recordset
    Dim numSTT As String
     
    Set Bang = Me.RecordsetClone
        numSTT = 1
        Bang.MoveFirst
     
    Do While Not Bang.EOF
        Bang.Edit
        Bang![STT] = numSTT
        numSTT = numSTT + 1
        Bang.Update
        Bang.MoveNext
    Loop
    Bang.Close
    End Sub
     
     
    Private Sub ButtonChonLoc(Cancel As Integer)
        DanhSoThuTu
    End Sub

    Còn nếu sử dụng textbox = Curent Record một cách hoàn chỉnh trên cả single form và continous form các bạn có thể vào đây để tham khảo