Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Xin giúp tạo 1 trường trong table đánh số tự động thay cho autonumber
#1
Mình muốn một trường giống như trường được đánh số tự động như autonumber nhưng số thứ tự =số recode.
Autonumber khi xóa 1 reccode thì nó không xóa luôn được số autonumber nên không hợp
Chữ ký của trungminh trungminh,gia nhập Thủ Thuật Access từ 12-07 -16.
Reply
Những người đã cảm ơn
#2
(14-09-16, 07:19 PM)trungminh Đã viết: Mình muốn một trường giống như trường được đánh số tự động như autonumber nhưng số thứ tự =số recode.
Autonumber khi xóa 1 reccode thì nó không xóa luôn được số autonumber nên không hợp

Đọc 10 lần, suy nghĩ hết 10 phút mà chẳng hiểu bạn muốn làm cái gì?

Rất mong ấy, trình bày lại câu hỏi để tiện hướng dẫn.

Thân mến!
Chữ ký của maidinhdan * Để được hỗ trợ tốt nhất, nhấn vào link dưới đây để xem.
1. [Hướng dẫn] Kiểu file gửi lên để được giúp đỡ
2. [Hướng dẫn] Nội quy diễn đàn
3. [Hướng dẫn] Cách Đưa file và hình vào diễn đàn
4.[Hướng dẫn] Để xây dựng một ứng dụng hoàn hảo và lời cảm tạ
5. Cần tìm Demo hay ứng dụng sử dụng thanh tìm kiếm phía trên cùng, bên phải của diễn đàn.
* Nếu muốn cảm ơn, hãy nhấn nút thank, không cần viết thêm bài nào nửa.



ღღღღღTài sản của maidinhdan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#3
007  tôi nghĩ bạn ấy muốn viết là : = số record (chứ không phải recode)
Chữ ký của ongke0711 If you BORN poor, it's not your mistake. But if you DIE poor, It's your mistake!
ღღღღღTài sản của ongke0711 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#4
(14-09-16, 09:31 PM)maidinhdan Đã viết:
(14-09-16, 07:19 PM)trungminh Đã viết: Mình muốn một trường giống như trường được đánh số tự động như autonumber nhưng số thứ tự =số recode.
Autonumber khi xóa 1 reccode thì nó không xóa luôn được số autonumber nên không hợp

Đọc 10 lần, suy nghĩ hết 10 phút mà chẳng hiểu bạn muốn làm cái gì?

Rất mong ấy, trình bày lại câu hỏi để tiện hướng dẫn.

Thân mến!

Vì trong form nhập nếu xóa 1 record đi thì khi vào tiếp số STT mà để autonumber không trùng với số record nữa. Mình muối làm sao 1 trường trong form nhập liệu tự động đánh số theo số record (có nghĩa khi vào 1 recode thì STT này là 1 recode 2 STT là 2.)

Hoặc làm thế nào đó trường STT để autonumber đánh đúng số record kể cả xóa đi 1 record rồi tiếp tục vào.
Chữ ký của trungminh trungminh,gia nhập Thủ Thuật Access từ 12-07 -16.
Reply
Những người đã cảm ơn
#5
Bạn thử tham khảo đoạn code này của mình nhé.
---------
Private Sub Shipper_AfterUpdate()
If Len(Trim(Me.STT & "")) = 0 Then
Me.STT = IIf(DCount("*", "Tbl_Import") > 0, DMax("STT", "Tbl_Import") + 1, 1)
End If
End Sub

----------------
Mình đưa vào event khi "bắt đầu nhập record mới". STT sẽ tăng dần dựa vào "max hiện tại", để ở chế độ enable = false.
(cái đoạn iff dcount là dùng cho trường hợp khi "chưa có record nào")
(và cái này nếu người dùng xóa ở đoạn "giữa" thì cũng vẫn tiếp tục tiến, ko hoàn toàn theo ý bạn lắm)
Chữ ký của toancvp Nếu tất cả đường đời đều trơn láng    
Có thể nào ta nhận ra ta Bat
Reply
Những người đã cảm ơn trungminh , maidinhdan
#6
(14-09-16, 11:39 PM)trungminh Đã viết:
(14-09-16, 09:31 PM)maidinhdan Đã viết:
(14-09-16, 07:19 PM)trungminh Đã viết: Mình muốn một trường giống như trường được đánh số tự động như autonumber nhưng số thứ tự =số recode.
Autonumber khi xóa 1 reccode thì nó không xóa luôn được số autonumber nên không hợp

Đọc 10 lần, suy nghĩ hết 10 phút mà chẳng hiểu bạn muốn làm cái gì?

Rất mong ấy, trình bày lại câu hỏi để tiện hướng dẫn.

Thân mến!

Vì trong form nhập nếu xóa 1 record đi thì khi vào tiếp số STT mà để autonumber không trùng với số record nữa. Mình muối làm sao 1 trường trong form nhập liệu tự động đánh số theo số record (có nghĩa khi vào 1 recode thì STT này là 1 recode 2 STT là 2.)

Hoặc làm thế nào đó trường STT để autonumber đánh đúng số record kể cả xóa đi 1 record rồi tiếp tục vào.
 - Bạn dùng đoạn Code này áp dụng thử xem. Hiện tại tôi dùng thấy Ok đó:
     Public Function RowNum(frm As Form) As Variant
     On Error GoTo Err_RowNum 
    With frm.RecordsetClone
        .Bookmark = frm.Bookmark
        RowNum = .AbsolutePosition + 1
    End With
    
Exit_RowNum:
    Exit Function
    
Err_RowNum:
    If Err.Number <> 3021& Then  'Ignore "No bookmark" at new row.
        Debug.Print "RowNum() error " & Err.Number & " - " & Err.Description
    End If
    RowNum = Null
    Resume Exit_RowNum
End Function
Chữ ký của lamvankhanh Xin chào, mình là lamvankhanh, Tham gia http://thuthuataccess.com/forum từ ngày 24-07 -14.
Reply
Những người đã cảm ơn trungminh , maidinhdan , Noname
#7
(14-09-16, 11:39 PM)trungminh Đã viết:
(14-09-16, 09:31 PM)maidinhdan Đã viết:
(14-09-16, 07:19 PM)trungminh Đã viết: Mình muốn một trường giống như trường được đánh số tự động như autonumber nhưng số thứ tự =số recode.
Autonumber khi xóa 1 reccode thì nó không xóa luôn được số autonumber nên không hợp

Đọc 10 lần, suy nghĩ hết 10 phút mà chẳng hiểu bạn muốn làm cái gì?

Rất mong ấy, trình bày lại câu hỏi để tiện hướng dẫn.

Thân mến!

Vì trong form nhập nếu xóa 1 record đi thì khi vào tiếp số STT mà để autonumber không trùng với số record nữa. Mình muối làm sao 1 trường trong form nhập liệu tự động đánh số theo số record (có nghĩa khi vào 1 recode thì STT này là 1 recode 2 STT là 2.)

Hoặc làm thế nào đó trường STT để autonumber đánh đúng số record kể cả xóa đi 1 record rồi tiếp tục vào.

- Ý bạn là form sẽ tự setup lại STT từ đầu đến cuối hay chỉ đơn giản là nối tiếp số cuối cùng ?
Chữ ký của Tuấn Ngọc Xin chào, Tôi đến từ TUAN NGOC CO., LTD !
Reply
Những người đã cảm ơn maidinhdan , Noname
#8
(14-09-16, 11:39 PM)trungminh Đã viết: Vì trong form nhập nếu xóa 1 record đi thì khi vào tiếp số STT mà để autonumber không trùng với số record nữa. Mình muối làm sao 1 trường trong form nhập liệu tự động đánh số theo số record (có nghĩa khi vào 1 recode thì STT này là 1 recode 2 STT là 2.)

Hoặc làm thế nào đó trường STT để autonumber đánh đúng số record kể cả xóa đi 1 record rồi tiếp tục vào.

Ở bài đầu tiên mình đã nhắc bạn là trình bày rõ lại câu vướng mắc và đền giờ tôi vẫn không hiểu bạn muốn làm cái gì về STT.

Lý do: Tại sao tôi lại nói như vậy: Bởi vì nó sẽ phát sinh nhiều biến cố xảy ra, và bạn đã không dự đoán được hết các biến cố thì làm sao mọi người viết cho bạn 1 đoạn code ưng ý.

Mình xin liệt kê 1 số biến cố xảy ra như sau để bạn thấy hợp hay thiếu thì bổ sung vào thêm để bạn nhận được câu trả lời sớm nhất:

* Giả sử Database có 5 dòng dữ liệu, gồm 2 cột Stt ( tương ứng 1-5) và Ten ( tương ứng là A-F)
Stt____Ten
1_____A
2_____B
3_____C
4_____D
5_____F

Biến cố thứ 1: Chỉ tạo STT tăng dần, ở đây xảy ra 1 sự kiện, là bạn sẽ không bao giờ nhấn nút xóa. ( Nếu bạn nhấn nút xóa thì chuyển qua biến cố thứ 2)
Biến cố thứ 2: (  Chỉ xóa đi 1) khoản giữa 1-5 bị xóa mất, ở đây xảy ra 2 sự kiện lồng nhau
+ Thứ nhất, Bạn muốn cột họ tên dồn số thứ tự lên hay không?
+ Thứ hai, hay là giữ nguyên trạng, có record mới sẽ thay vào Stt bị xóa đó.

Biến cố thứ 3: ( Nếu xóa nhiều ở khoản giữa)
Biến cố thứ 4:  .............

Góp ý riêng, Theo kinh nghiệm của mình bạn không nên đưa số TT vào trong table là điều tốt nhất, nếu có thì cũng đừng quan tâm đến chuyện nó có " tăng dần và không gián đoạn" hay không. Bởi chúng ta sẽ xử lý nó trên query, form hoặc report thì sẽ tốt hơn ( có rất nhiều hàm để bạn tham khảo về vấn đề này trên diễn đàn đã có).



Bổ sung thêm 1 ý: Nếu bạn chỉ có ý định là có 10 dòng thì số thứ tự cao nhất là 10 và phải " tăng dần không gián đoạn" thì gửi gửi bài bạn cho mình, mình viết code cho.

Thân mến!
Chữ ký của maidinhdan * Để được hỗ trợ tốt nhất, nhấn vào link dưới đây để xem.
1. [Hướng dẫn] Kiểu file gửi lên để được giúp đỡ
2. [Hướng dẫn] Nội quy diễn đàn
3. [Hướng dẫn] Cách Đưa file và hình vào diễn đàn
4.[Hướng dẫn] Để xây dựng một ứng dụng hoàn hảo và lời cảm tạ
5. Cần tìm Demo hay ứng dụng sử dụng thanh tìm kiếm phía trên cùng, bên phải của diễn đàn.
* Nếu muốn cảm ơn, hãy nhấn nút thank, không cần viết thêm bài nào nửa.



ღღღღღTài sản của maidinhdan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn Noname


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Tự động hiện Form khi loading hết thời gian ChiMai 1 43 02-12-16, 08:59 PM
Bài mới nhất: ongke0711
  [Hỏi] Làm sao để ấn định Null cho trường Date khi sử dụng Class Module Minh Tiên 8 613 18-11-16, 09:29 AM
Bài mới nhất: MinhnHang
  Thay đổi hình ảnh theo mã feeling 3 149 04-11-16, 05:18 PM
Bài mới nhất: maidinhdan
  [Help] Chỉnh giúp Form thống kê hoanghai902 2 124 28-10-16, 06:15 PM
Bài mới nhất: hoanghai902
  [Help] Giúp đỡ về cách xóa nội dung trong một field nam8384 2 117 17-10-16, 08:43 PM
Bài mới nhất: toancvp

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ