Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Help] Code hàng hóa tự động tăng khi rời combobox
#1
Chào cả nhà
cả nhà cho mình hỏi tí về code hàng hóa tự động tăng khi rời combobox thì phải làm sao

http://www.uphinhnhanh.com/view-3096Capture.jpg

như hình này thì đúng còn

http://www.uphinhnhanh.com/view-134801.jpg

code đúng sẽ là HH3001

nhờ cả nhà giúp dùm, xin cám ơn
Chữ ký của cawboy Xin chào, mình là cawboy, Tham gia http://thuthuataccess.com/forum từ ngày 07-03 -14.
ღღღღღTài sản của cawboy (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#2
Mình đã xem 2 hình của bạn, theo mình hiểu, có phải bạn muốn: Mỗi khi Lost Focus Mã NCC thì Mã HH bằng Mã NCC +1 (Tự động tăng lên 1 đơn vị) ko ?
Nếu đúng thế thì bạn làm thế này nhé !
1. Tại thủ tục After_Update (Hoặc On Lost Focus) của cboMaNCC bạn gõ đoạn code sau:
Mã:
Private Sub cboMaNCC_AfterUpdate()
    Dim Sotang As Integer
    Sotang = Right(Me.cboMaNCC.Value, Len(Me.cboMaNCC) - 2) 'Chỉ dùng nếu ký hiệu Mã NCC cố định 2 ký tự, các ký tự sau thay đổi. Nếu cố định 4 số sau thì bạn có thể dùng hàm Left(Me.cboMaNCC.Value, 4) nhé !
    Me.txtMaHH.Value = "HH" & Sotang + 1
End Sub
Thế là OK !
Lưu ý: Nếu 1 Mã NCC có nhiều Mã HH mà bạn muốn Mã HH phải tăng theo Mã HH đã có của NCC này thì bạn phải thêm lệnh "Kiểm tra" xem đã có Mã HH cho Mã NCC này chưa, nếu chưa thì làm như trên, còn đã có rồi thì thay Sotang theo MaHH nhé !
Chúc bạn thành công !
Chữ ký của Minh Tiên -----------------------------------------------
Đường tuy ngắn, không đi không đến
Việc tuy nhỏ, không làm không nên.
                                           Tuân Tử
-----------------------------------------------
Reply
Những người đã cảm ơn cawboy
#3
(19-05-14, 06:21 PM)tmtien261 Đã viết: Nếu 1 Mã NCC có nhiều Mã HH mà bạn muốn Mã HH phải tăng theo Mã HH đã có của NCC này thì bạn phải thêm lệnh "Kiểm tra" xem đã có Mã HH cho Mã NCC này chưa, nếu chưa thì làm như trên, còn đã có rồi thì thay Sotang theo MaHH nhé !
Chúc bạn thành công !

đúng rồi bạn, bạn giúp dùm luôn nha vì mình mới học access nên chưa biết nhiều về VBA
Chữ ký của cawboy Xin chào, mình là cawboy, Tham gia http://thuthuataccess.com/forum từ ngày 07-03 -14.
ღღღღღTài sản của cawboy (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#4
Mình nói sơ bộ thế này nhé !
1. Bạn tạo 1 table tblDanhsachHanghoa gồm: Stt (Autonumber), MaNCC (Text), MaHH (Text) ...
2. Tạo 1 form frmDanhsachHanghoa gồm: cboMaNCC, txtTenHH ... (các đối tượng trên form bạn nên dùng UnBound Control).
3. Row Source của cboMaNCC bạn lấy dữ liệu từ "tblDanhsachNCC" (tblDanhsachNCC làm table(MaNCC, TenNCC, ....)
4. Tại thủ tục After_Update của cboMaNCC bạn gõ đoạn code:
Mã:
Private Sub cboMaNCC_AfterUpdate()
    Dim Sotang As Integer
    Dim strMaHHMax As String
    If IsNull(DLookup("[MaHH]", "Hanghoa", "[MaNCC]='" & Me.cboMaNCC & "'")) = True Then
        Sotang = Right(Me.cboMaNCC.Value, Len(Me.cboMaNCC) - 2)
    Else
        strMaHHMax = DLookup("[MaHH]", "Hanghoa", "[MaNCC]='" & Me.cboMaNCC & "' And [Stt]=" & DMax("[Stt]", "Hanghoa") & "")
        Sotang = Right(strMaHHMax, Len(strMaHHMax) - 2)
    End If
        Me.txtMaHH.Value = "HH" & Sotang + 1
End Sub
5. File demo: File đính kèm
Lưu ý: File đính kèm mình chỉ làm nội dung tạo mã tự động thôi nhé, còn lại bạn phải tự làm mới hiểu sâu được.
Chúc bạn thành công !
Chữ ký của Minh Tiên -----------------------------------------------
Đường tuy ngắn, không đi không đến
Việc tuy nhỏ, không làm không nên.
                                           Tuân Tử
-----------------------------------------------
Reply
Những người đã cảm ơn cawboy
#5
(20-05-14, 09:27 AM)tmtien261 Đã viết: Mình nói sơ bộ thế này nhé !
1. Bạn tạo 1 table tblDanhsachHanghoa gồm: Stt (Autonumber), MaNCC (Text), MaHH (Text) ...
2. Tạo 1 form frmDanhsachHanghoa gồm: cboMaNCC, txtTenHH ... (các đối tượng trên form bạn nên dùng UnBound Control).
3. Row Source của cboMaNCC bạn lấy dữ liệu từ "tblDanhsachNCC" (tblDanhsachNCC làm table(MaNCC, TenNCC, ....)
4. Tại thủ tục After_Update của cboMaNCC bạn gõ đoạn code:
Mã:
Private Sub cboMaNCC_AfterUpdate()
    Dim Sotang As Integer
    Dim strMaHHMax As String
    If IsNull(DLookup("[MaHH]", "Hanghoa", "[MaNCC]='" & Me.cboMaNCC & "'")) = True Then
        Sotang = Right(Me.cboMaNCC.Value, Len(Me.cboMaNCC) - 2)
    Else
        strMaHHMax = DLookup("[MaHH]", "Hanghoa", "[MaNCC]='" & Me.cboMaNCC & "' And [Stt]=" & DMax("[Stt]", "Hanghoa") & "")
        Sotang = Right(strMaHHMax, Len(strMaHHMax) - 2)
    End If
        Me.txtMaHH.Value = "HH" & Sotang + 1
End Sub
5. File demo: File đính kèm
Lưu ý: File đính kèm mình chỉ làm nội dung tạo mã tự động thôi nhé, còn lại bạn phải tự làm mới hiểu sâu được.
Chúc bạn thành công !

Cám ơn bạn nhiều, để mình làm xem sao
Chữ ký của cawboy Xin chào, mình là cawboy, Tham gia http://thuthuataccess.com/forum từ ngày 07-03 -14.
ღღღღღTài sản của cawboy (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#6
Bạn xem lại có đúng chưa nhe
http://www.mediafire.com/download/yh55ls...TEST.accdb
sao mà mình làm tới mã hàng thứ 3 là bị trùng lại mã hàng thứ 2 (đối với các MANCC)
Chữ ký của cawboy Xin chào, mình là cawboy, Tham gia http://thuthuataccess.com/forum từ ngày 07-03 -14.
ღღღღღTài sản của cawboy (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#7
Theo CSDL của bạn đúng là chỉ làm đến Record thứ 2, từ thứ 3 trở đi là ko tìm được rồi. Bạn lưu ý code mình viết là:
Mã:
strMaHHMax = DLookup("[MaHH]", "Hanghoa", "[MaNCC]='" & Me.cboMaNCC & "' And [Stt]=" & DMax("[Stt]", "Hanghoa") & "")
Trong khi bạn sửa thành:
Mã:
strMaHHMax = DLookup("[MaHang]", "t_Hanghoa", "[MaNCC]='" & Me.cbMancc & "'")
Làm sao giống được chứ !
- Code của mình là tìm Mã HH trong table Hanghoa với điều kiện là: Mã NCC = cboMaNcc Stt=SttMax (Stt lớn nhất). (Cho nên trong table Hanghoa mình có khai báo thêm Field Stt:Autonumber)
- Code của bạn là chỉ tìm Mã HH trong table Hanghoa với điều kiện là MaNCC=cboMaNCC, như vậy nếu trong table Hanghoa chỉ mới có 1 MaNCC thì OK, chứ đến >=2 MaNCC giống nhau thì code của bạn ko biết lấy cái MaNCC nào ?
Bạn xem lại Filedemo nhé !
Chúc bạn thành công !
Chữ ký của Minh Tiên -----------------------------------------------
Đường tuy ngắn, không đi không đến
Việc tuy nhỏ, không làm không nên.
                                           Tuân Tử
-----------------------------------------------
Reply
Những người đã cảm ơn
#8
(20-05-14, 04:22 PM)tmtien261 Đã viết: Theo CSDL của bạn đúng là chỉ làm đến Record thứ 2, từ thứ 3 trở đi là ko tìm được rồi. Bạn lưu ý code mình viết là:
Mã:
strMaHHMax = DLookup("[MaHH]", "Hanghoa", "[MaNCC]='" & Me.cboMaNCC & "' And [Stt]=" & DMax("[Stt]", "Hanghoa") & "")
Trong khi bạn sửa thành:
Mã:
strMaHHMax = DLookup("[MaHang]", "t_Hanghoa", "[MaNCC]='" & Me.cbMancc & "'")
Làm sao giống được chứ !
- Code của mình là tìm Mã HH trong table Hanghoa với điều kiện là: Mã NCC = cboMaNcc Stt=SttMax (Stt lớn nhất). (Cho nên trong table Hanghoa mình có khai báo thêm Field Stt:Autonumber)
- Code của bạn là chỉ tìm Mã HH trong table Hanghoa với điều kiện là MaNCC=cboMaNCC, như vậy nếu trong table Hanghoa chỉ mới có 1 MaNCC thì OK, chứ đến >=2 MaNCC giống nhau thì code của bạn ko biết lấy cái MaNCC nào ?
Bạn xem lại Filedemo nhé !
Chúc bạn thành công !

Cám ơn bạn nhiều, mình đã làm được rồi
Chữ ký của cawboy Xin chào, mình là cawboy, Tham gia http://thuthuataccess.com/forum từ ngày 07-03 -14.
ღღღღღTài sản của cawboy (View All Items) ღღღღღ
Reply
Những người đã cảm ơn


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  [Help] Code update dữ liệu từ subform vào table history(có ghi nhận ngày update) subasatran 5 238 10-07-17, 02:07 PM
Bài mới nhất: tranthanhan1962
  [Hỏi] Xin trợ giúp câu lệnh tự động lên lớp khi giới hạn thời gian truongtrungviet 14 605 02-07-17, 05:01 PM
Bài mới nhất: maidinhdan
  Lỗi trùng mã khách hàng cannguyen 35 1,835 27-06-17, 11:31 PM
Bài mới nhất: advnamk
  [Hỏi] Tại saoform không hiện thị được dấu phân cách hàng ngàn thanhhao 6 206 26-06-17, 11:45 AM
Bài mới nhất: tranthanhan1962
  hàm Dlookup không hoạt động ở máy khác thanhtruong 3 204 17-06-17, 07:32 PM
Bài mới nhất: tranthanhan1962

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ơ