Xác định mã hay đơn hàng đã nhận dựa VBA cho excel (1 người xem)

  • Thread starter Thread starter 1986QV
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

1986QV

Thành viên hoạt động
Tham gia
15/5/12
Bài viết
114
Được thích
6
Nghề nghiệp
Kỹ sư
Em có bộ sản phẩm họ nhận rồi và xác định đã nhận với mã là "1" và chưa nhận là "" nhưng với số lượng nhiều nên chỉ đánh mã số cuối vào đơn giá anh chi giúp em bằng VBA cho sổ ghi chép cho tiện chứ tìm tòi với ngàn bộ sản phẩm biết tìm sao được. Rất cảm ơn anh chị.
 

File đính kèm

Em có bộ sản phẩm họ nhận rồi và xác định đã nhận với mã là "1" và chưa nhận là "" nhưng với số lượng nhiều nên chỉ đánh mã số cuối vào đơn giá anh chi giúp em bằng VBA cho sổ ghi chép cho tiện chứ tìm tòi với ngàn bộ sản phẩm biết tìm sao được. Rất cảm ơn anh chị.
Có ai biết bạn này muốn làm gì trong bài của bạn í gởi lên không, xin hướng dẫn tí tẹo, mình đọc hoài mà.....hổng hiểu gì ráo trọi
Hihi, đùa tí thôi, đừng giận, bạn phải nói rõ cách làm cho ra kết quả như thế nào, kết quả ra sao, kết quả xuất ra chỗ nào.........thì anh em mới giúp bạn được chứ
:=\+Híc:=\+
 
Upvote 0
Có ai biết bạn này muốn làm gì trong bài của bạn í gởi lên không, xin hướng dẫn tí tẹo, mình đọc hoài mà.....hổng hiểu gì ráo trọi
Hihi, đùa tí thôi, đừng giận, bạn phải nói rõ cách làm cho ra kết quả như thế nào, kết quả ra sao, kết quả xuất ra chỗ nào.........thì anh em mới giúp bạn được chứ
:=\+Híc:=\+

Mình đã dính chính lại vào file rồi bạn ah. Cảm ơn bạn đã quan tâm.
 

File đính kèm

Upvote 0
các cao thủ ra tay giúp em với.
 
Upvote 0
em xin dính chính lại mong các anh, chị giúp em. Xin cảm ơn
 

File đính kèm

Upvote 0
- Một bộ sản phẩm gồm nhiều thành phần, hay chỉ có 2 như trong file ví dụ???
- Mỗi dòng là 1 mã khách hàng, đúng không?
- Trong hóa đơn, ứng với mỗi khách hàng, nhập mã bộ sản phẩm => cho ra kết quả là đã nhận đủ bộ hay chưa? (có đúng như thế không?)
và vân vân, vì cũng chưa hiểu hết mong muốn của bạn

=> Bạn nên mô tả chi tiết yêu cầu hơn nữa (hoặc đưa dữ liệu gần thật thì hy vọng mới có phương án trả lời.
 
Upvote 0
Mình cũng cố gắng hiểu nhưng vẫn chưa hiểu được ý của bạn. Những bài nào không có người trả lời có thể là yêu cầu không rõ ràng vì mình thấy GPE chưa chịu thua trường hợp nào cả.
Trong file của bạn dữ liệu dòng 2 là ở đâu ra vậy? con số 14, 26, 79 từ đâu ra?
 
Upvote 0
em xin dính chính lại mong các anh, chị giúp em. Xin cảm ơn
À há !!! Gần hiểu rồi, làm đại, trật ráng chịu
Cứ thêm mã hàng của 2 bộ (bi nhiêu cũng chơi) rồi bấm nút
Dữ liệu trong bảng có giống dữ liệu thật hông ??? Sao bố trí có nấy cột trống chi dzậy ???
[GPECODE=vb]
Public Sub GanHieu()
Dim Hang, Kq, I, Vung, Mg, J, K, MgKq
Hang = [A2:I2].Value
Set Kq = Range([k2], [k2].End(xlToRight))
Set Vung = Range("A2").CurrentRegion
ReDim Mg(3 To Vung.Rows.Count, 1 To 1)
For I = 3 To Vung.Rows.Count
For J = 1 To 4
If Vung(I, J) <> "" Then
For K = 6 To 9
If Vung(I, K) <> "" Then
Mg(I, 1) = Mg(I, 1) & Vung(I, J) & Vung(I, K) & " "
End If
Next K
End If
Next J
Next I
ReDim MgKq(3 To Vung.Rows.Count, 1 To Kq.Columns.Count)
For I = LBound(Mg) To UBound(Mg)
For J = 1 To Kq.Columns.Count
If InStr(1, Mg(I, 1), Kq(J)) Then MgKq(I, J) = 1
Next J
Next I
[K3].Resize(Vung.Rows.Count - 2, Kq.Columns.Count) = MgKq
End Sub
[/GPECODE]
Thân
 

File đính kèm

Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
Thanks bạn. Rất ok
mình test thấy được rồi. Bài toán của minh nên tới vài ngàn dòng với số lượng lớn tính sao bạn ơi
 
Upvote 0
14,26,79 là bộ sp hoàn chỉnh được ghép bởi bộ 1+bộ 4= bộ 14. Anh ah! khi nhập 1 bộ sp hoàn chỉnh sẽ tự động điền vào ô kết quả.

bạn xem viết lại code đó dùm mình khi bảng thống kê bộ sản phẩm của mình tương ứng với file sau.
Cảm ơn rất nhiều

À há !!! Gần hiểu rồi, làm đại, trật ráng chịu
Cứ thêm mã hàng của 2 bộ (bi nhiêu cũng chơi) rồi bấm nút
Dữ liệu trong bảng có giống dữ liệu thật hông ??? Sao bố trí có nấy cột trống chi dzậy ???
Mã:
Public Sub GanHieu()
    Dim Hang, Kq, I, Vung, Mg, J, K, MgKq
    Hang = [A2:I2].Value
    Set Kq = Range([k2], [k2].End(xlToRight))
    Set Vung = Range("A2").CurrentRegion
    ReDim Mg(3 To Vung.Rows.Count, 1 To 1)
        For I = 3 To Vung.Rows.Count
            For J = 1 To 4
                If Vung(I, J) <> "" Then
                    For K = 6 To 9
                        If Vung(I, K) <> "" Then
                            Mg(I, 1) = Mg(I, 1) & Vung(I, J) & Vung(I, K) & " "
                        End If
                    Next K
                End If
            Next J
        Next I
            ReDim MgKq(3 To Vung.Rows.Count, 1 To Kq.Columns.Count)
                For I = LBound(Mg) To UBound(Mg)
                    For J = 1 To Kq.Columns.Count
                        If InStr(1, Mg(I, 1), Kq(J)) Then MgKq(I, J) = 1
                    Next J
                    Next I
    [K3].Resize(Vung.Rows.Count - 2, Kq.Columns.Count) = MgKq
End Sub
Thân
bạn viết lại code cho file này dùm mình. Cảm ơn bạn!

thanks you! mình chỉnh được rồi.

Cũng như bài viết trước bài toán của em có khác chút. Xác định mã sp theo tiêu chuẩn A(0,1..) mã hàng B(0,1...) có số hiệu(0,1...). Rất mong các bạn và a/e trong forum giúp đỡ nhiệt tình như bài viết trước có các bác concogia, quanghai1969, Hoangvuluan đã tận tâm giúp đỡ (nên trong công việc em tiến triển rất tốt, chỉ có bài toán này không giải quyết được mà em đã nhầm 2 vụ lớn cho em và công ty) .Rất mong forum GPE giúp đỡ!
(Chân thành cảm ơn forum GPE và A/E đã quan tâm và giúp đỡ!!!)****n
 

File đính kèm

Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
em xin đính chính file để anh em forum dễ viết code VBA cho bài toán
Cảm ơn mọi người đã quan tâm và giúp đỡ !!!
 

File đính kèm

Upvote 0
em xin đính chính file để anh em forum dễ viết code VBA cho bài toán
Cảm ơn mọi người đã quan tâm và giúp đỡ !!!
Nếu:
- Mã tiêu chuẩn ( cột A ) là 1 ký tự
- Mã B ( cột C ==> F ) mỗi cell chỉ chứa 1 ký tự
- Số hiệu ( H ==> K ) tương tự Mã B
- Mã hàng ( từ [M4] chạy qua bên phải ) chứa 3 ký tự
thì chơi tạm cái này
Thêm, bớt, sửa búa xua rồi bấm Ctrl + W xem kết quả
Nếu ( lại nếu) dữ liệu không đúng với cái nếu ở trên thì code này "tèo" là cái chắc ( lỗi do chủ topic hổng đưa hết các kiểu dữ liệu chứ hổng phải lỗi của Cò. Híc)
Thân
 

File đính kèm

Upvote 0
Em đọc lại bài bác viết trên đúng là do em sai ngay ban đầu không xác định rõ từng tiêu chuẩn nên có sụ nhầm lẫn. Rất cảm ơn bác Concogia đã tận tâm giúp, nhắc nhở. Em đính chính lại file chuẩn và gửi lên a/e forum viết lại code VBA dùm. Thật là phiền A/E forum quá.
Cảm ơn mọi người quan tâm và giúp đỡ!!!
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Em đọc lại bài bác viết trên đúng là do em sai ngay ban đầu không xác định rõ từng tiêu chuẩn nên có sụ nhầm lẫn. Rất cảm ơn bác Concogia đã tận tâm giúp, nhắc nhở. Em đính chính lại file chuẩn và gửi lên a/e forum viết lại code VBA dùm. Thật là phiền A/E forum quá.
Cảm ơn mọi người quan tâm và giúp đỡ!!!
Mình nghĩ thế này không biết có đúng không, nếu chưa chính xác thì bạn nói cho rõ những chỗ chưa chính xác nhé nhé
- Từ [S4] ==> [Z4] ( có thể nhiều hơn nữa ) mỗi cell chứa 3 ký tự
- Tách 3 ký tự riêng ra từ trái sang phải: ký tự thứ nhất phải có trong khoảng từ A ==> G, ký tự thứ 2 phải có trong khoảng từ I ==> L, ký tự thứ 3 phải có trong khoảng N ==> Q. Nếu thỏa đồng thời 3 điều kiện đó thành đánh số 1, ngược lại để trống
Túm lại:
- Bạn giải thích lại cách đánh dấu Mã hàng một cách chi tiết xem sao
- Hãy giải thích vì sao các cell [Z5], [Z10], [Z29], [Y31] bằng 1
Thân
 
Upvote 0
Chuẩn như bác đã nghĩ:
S4--->Z4 có 3 ký tự số tại mỗi cell. Ký tự 1 thuộc khoảng[A:G]. Ký tự 2 thuộc khoảng [I:L]. Ký 3 thuộc [N:Q].Nếu thỏa đồng thời 3 điều kiện đó thành đánh số 1, ngược lại để trống

Có sự nhầm khi em đánh số hoa hết cả mắt. Vì sao em nhầm bác Concogia biết khi làm bằng tay rồi đó. Mong bác thông cảm. Em đính chính lại rồi đó. file số 2
Bác và a/e giúp code VBA để không có sự nhầm lẫn như vậy nữa.
Cảm ơn bác và A/E forum quan tâm và giúp đỡ!!!
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Chuẩn như bác đã nghĩ:
S4--->Z4 có 3 ký tự số tại mỗi cell. Ký tự 1 thuộc khoảng[A:G]. Ký tự 2 thuộc khoảng [I:L]. Ký 3 thuộc [N:Q].Nếu thỏa đồng thời 3 điều kiện đó thành đánh số 1, ngược lại để trống

Có sự nhầm khi em đánh số hoa hết cả mắt. Vì sao em nhầm bác Concogia biết khi làm bằng tay rồi đó. Mong bác thông cảm. Em đính chính lại rồi đó. file số 2
Bác và a/e giúp code VBA để không có sự nhầm lẫn như vậy nữa.
Cảm ơn bác và A/E forum quan tâm và giúp đỡ!!!
Nó đây, bấm Ctrl + W để chạy code
Bạn thử thêm, bớt, sửa dữ liệu rồi kiểm tra lại xem còn chỗ nào chưa ổn
Vì không biết dữ liệu thật ra sao nên còn vướng tý tẹo ở chỗ khai báo vùng dư liệu, nhưng nếu như trong bài thi ổn thôi, hãy thử với dữ liệu thật ( hoặc, dữ liệu của bạn thì bạn biết rõ, có thể khai báo trực tiếp địa chỉ luôn cho chắc ), có gì trục trặc thì la lên nhé bạn
Hãy cẩn thận với dữ liệu từ S4 ==> Z4, phải nhập đúng 3 ký tự, không được dư khoảng trắng, mình quên chưa xóa khoảng trắng vô nghĩa cho mấy thằng này. Híc
Thân
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Thanks Concogia. Tận tâm giúp đỡ!
Cảm ơn A/E forum quan tâm và giúp đỡ!!
 
Upvote 0
Bác Concogia cho em hỏi chút nếu em muốn tất các sheet hay workbook đó đồng thời xảy ra thì code VBA đó ta phải thay đổi thế nào cho phù hợp bác Concogia. (Và số lượng tính toán lớn nhất có thể với tất cả các sheet hay workbook đó)
Cảm ơn A/E forum quan tâm và giúp đỡ!!!
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Cuối tuần mọi người vào xem xét giải quyết giúp em nha.
thank 4rum GPE!
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom