Danh Mục không cập nhật trong listbox (1 người xem)

Liên hệ QC

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

Rùa Con 1080

Thành Viên Sao Chép 2
Tham gia
4/5/16
Bài viết
351
Được thích
47
Giới tính
Nữ
Em mới làm Form "Nhập" , khi nhập phụ liệu vào ListBox2, nếu phụ liệu nào không có thì nhấn nút "Tạo Danh Mục" và tạo danh mục, rồi quay lại form "Nhập" gỏ từ vào textBox tìm Phụ liệu thì mấy phụ liệu mới tạo lại không có. Hay Mảng "ArrChungLoai" không cập nhật kịp thời trong Sub TimKiem(), vì khi em tắt file đi mở lại thì ArrChungLoai mới có trong ListBox2. Mong Mọi Người giúp đỡ. Code em sưu tầm trên GPE.
 
Lần chỉnh sửa cuối:
Bạn thêm dòng đo đỏ này vào
...........................
MsgBox ("cap nhat xong"), , "GPE"
Call hotro_ListBox1
End Sub
 
Upvote 0
Ý bạn nói là thêm vào trong Sub GHI_Click ?????. Không phải bạn ơi. Ý mình là trong fom nhập, gỏ từ vào textbox tìm phụ liệu, nếu tìm thấy phụ liệu cần thì enter nạp vào listbox2, nếu không thấy phụ liệu cần thì nhấn vào nút tạo danh mục để tạo danh mục cần, rối thoát form tạo danh mục về form nhập tìm danh mục (tên phụ liệu) mới tạo để nạp vào listbox2. Nhưng lúc này tên phụ liệu mới tạo lại không có trong listbx1. Mong mọi người giúp đỡ!!!!!
 
Upvote 0
Em mới làm Form "Nhập" , khi nhập phụ liệu vào ListBox2, nếu phụ liệu nào không có thì nhấn nút "Tạo Danh Mục" và tạo danh mục, rồi quay lại form "Nhập" gỏ từ vào textBox tìm Phụ liệu thì mấy phụ liệu mới tạo lại không có. Hay Mảng "ArrChungLoai" không cập nhật kịp thời trong Sub TimKiem(), vì khi em tắt file đi mở lại thì ArrChungLoai mới có trong ListBox2. Mong Mọi Người giúp đỡ. Code em sưu tầm trên GPE.

thử vậy xem (code bạn nhiều quá, tôi làm biếng đọc.....hihihiih)
Mã:
Private Sub cb_CN_Click()
......................
ListBox1.List = ArrHangHoa
  If VBA.UserForms.Count = 2 Then UserForm2.ListBox2.List = ArrHangHoa: Unload UserForm1   
End Sub
tức là khi có 2 cái userform mở cùng lúc thì nạp luôn vào 2 cái listbox
 
Lần chỉnh sửa cuối:
Upvote 0
Vẫn không đúng Thầy ơi, ý em là nhập liệu trong form nhập, khi gỏ từ vào tb_search để tìm danh mục để nhập vào listbox2, nếu trong listbox1 của form nhập không có thì nhận nút tạo danh mục trên form nhập để tạo hàng hóa mới, tạo xong thoát form tạo danh mục về lại form nhập, lúc này gỏ từ của danh mục mới tạo vào tb_search để tìm thì lại không có, trong khi đó đã tạo danh mục này trong form tạo danh mục. Ý là khi tạo danh mục mới thì phải có trong listbox1 của form nhập để nhập vào listbox2 của form nhập. Mong mọi người giúp đỡ!!!!!
 
Upvote 0
Làm như cách của Thầy Let'GâuGâu thì đã nạp vào ListBox1 của Form nhập rồi, nhưng khi em gỏ vào tb_search để tìm danh mục đó thì không thấy. Em xin ví dụ như sau: em tạo danh mục "GPE.COM" bằng cách nhấn vào nút tạo danh mục, và có "GPE.COM" cuối listbox1, nhưng khi em gỏ "GPE" vào tb_search thì không thấy hiện gì ở listbox1-\\/.%#^#$@$@!^%-\\/. Hay lỗi gì ở Sub TimKiem().
Mong mọi người xem giúp.
 
Upvote 0
Em để ý thấy nếu tắt form nhập đi rồi mở lại thì mới có danh mục mới tạo, vậy có cách nào làm mới mảng ArrChungLoai mà không cần tắt Form nhập không vậy các AC?????
 
Upvote 0
Sai chổ nào mà em không thấy có ai góp ý giúp em tý vậy????
 
Upvote 0
Khi mở 1 Form là trên tay ta cầm con dao 1 lưỡi; Mở 2 Forms sẽ như cầm dao 2 lưỡi; Dễ đứt tay lắm!

Chúng hay cự nự, chả biết nhường nhịn & xung đột nhau lắm!
 
Upvote 0
Em thử giải pháp là khi nhấn Fom1(Tạo danh mục) thì unload Form2(Nhập), tạo xong danh mục show Form2(nhập) thì đã load danh mục mới để nhập, nhưng bất tiện là phải nhập lại từ đầu(nếu phiếu nhập có 30 mục, mà có 3 mục mới thì phê lắm) Vậy mong mọi người có giải pháp nào để khỏi phải nhập liệu lại từ đầu.(Tự load ArrChungLoai khi có danh mục mới, khỏi phải unload Fom2(Nhập)). Mong mọi người cho giải pháp.
 
Upvote 0
Có thể bố trí tất thẩy các Control lên 1 Form không vậy bạn?
 
Upvote 0
Vấn đề chính ở bài này là bạn sử dụng biến khá tùy tiện, nửa riêng tư nửa công cộng. Các biến bạn dùng công cộng lại không được update kịp thời nên dẫn đến sai sót khó tìm. Bạn thử như sau chắc chắn tìm thấy danh mục vừa thêm

Tại sub của Userform2 ban thêm 3 dòng màu đỏ như sau (Chủ yếu là cập nhật lại mấy cái biến dùng chung)

Mã:
Private Sub TimKiem()
Dim GetRows()
Dim strType As String
Dim n As Long, r As Long
        
    strType = UCase(tb_search) & "*"
    
    
 
[B][COLOR=#ff0000]    ArrChungLoai = Sheets("Ton").Range(Sheets("Ton").Range("A65000").End(xlUp), Sheets("Ton").Range("B3")).Value[/COLOR][/B]
[B][COLOR=#ff0000]    pri_Ubd1 = UBound(ArrChungLoai, 1)[/COLOR][/B]
[B][COLOR=#ff0000]    pri_Ubd2 = UBound(ArrChungLoai, 2)[/COLOR][/B]


        
    For r = 1 To pri_Ubd1
    If UCase(ArrChungLoai(r, 1)) Like strType Then
        n = n + 1
        ReDim Preserve GetRows(1 To n)
        GetRows(n) = r
    End If
    Next
        
    If n Then
        Dim ArrFilter(), c As Byte
        ReDim ArrFilter(1 To n, 1 To pri_Ubd2)
        
        For r = 1 To n
            For c = 1 To pri_Ubd2
            ArrFilter(r, c) = ArrChungLoai(GetRows(r), c)
            Next
        Next
        
        ListBox1.List = ArrFilter
    Else
        ListBox1.List = Array() 'neu tbx_Search =empty -> show all
    End If


End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Cám ơn Thầy!!!!! Đúng Đồ của Ban Huấn Luyên" rồi Thầy Ơi!!!!!!
Em biết là ArrChungLoai không cập nhật mới nên xảy ra tình trạng trên, nhưng vì em sử dụng biến tư biến công tùy tiện nên mới như vậy (Trình độ VBA của em mới bắt đầu nên Mong Thầy và Các AC lượng thứ)
 
Upvote 0
Web KT

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

Back
Top Bottom