Đá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
  [Hỏi] Refresh Form và tiếp tục hoạt động Godspear 2 82 Hôm qua, 12:48 PM
Bài mới nhất: Godspear
  Tự động hiện Form khi loading hết thời gian ChiMai 1 49 02-12-16, 08:59 PM
Bài mới nhất: ongke0711
  [Help] Cập nhật combobox 2 từ combobox 1 (dữ liệu ở nhiều bảng) votinh.tq 6 209 22-11-16, 11:34 PM
Bài mới nhất: votinh.tq
  Xin giúp tạo 1 trường trong table đánh số tự động thay cho autonumber trungminh 7 450 16-09-16, 05:17 PM
Bài mới nhất: maidinhdan
  [Help] tạo 2 combobox liên kết giá trị trong một table trên form tronghieu9792 2 164 31-08-16, 08:48 AM
Bài mới nhất: tronghieu9792

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ơ