[CHIA SẺ] Tìm kiếm và nhập liệu nâng cao - mã nguồn mở (1 người xem)

Liên hệ QC

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

langtuchungtinh360

Thành viên đã dừng hoạt động
Tham gia
7/10/13
Bài viết
1,062
Được thích
334
đi thẳng vào vấn đề luôn.
Chắc mọi người cũng không lạ lẫm gì với 2 Addins trích lọc và nhập liệu nâng cao tại 2 bài của 2 thành viên VIP của diễn đàn này
Nguyễn Duy Tuân, huuthang_bd (nhấn vào để đi đến bài viết)
---------------------
mình có tham khảo và cũng thấy được sự thuận tiện trong việc thao tác nhập liệu và trích lọc trong bảng tính
do cả 2 bài trên đều được mã hóa hết nên việc xem và tham khảo code là việc không thể hoặc khó khăn.
nay mình cũng bon chen viết 1 vài code với ý tưởng tương tự như thế.
hiện đã vừa hoàn thành, và mình test cũng thấy được nên mạn phép chia sẻ lên cho anh chị em cùng tham khảo nếu có ý định phát triển thêm có thể tích hợp vào chương trình của mình mà không phải cài nhiều Addins (file chia sẽ sẽ show code hết để mọi người có thể xem và tham khảo thuật toán)
trong quá trình test đứng ở phương diện là người viết nên mình không thể lường hết được các trường hợp phát sinh lỗi vẫn chưa thử hết các trường hợp.
nếu mọi người có tải và sử dụng thì nếu phát hiện lỗi nào, có thể bình luận về lỗi đó giúp mình để mình có thể chỉnh lại.
--------------------
tính năng:
+ dò tìm và nhập liệu nhanh, đối với dữ liệu lớn thì do viết bằng VBA nên có thể việc thể hiện tốc độ "bàn thờ" là không thể.
+ nếu cài đặt nhiều vùng nhập liệu thì khi chọn đúng vùng đó thì sẽ lọc ra dữ liệu tương ứng
+ có thể chèn cột, chèn dòng, xóa cột, xóa dòng ở cả bên bảng dữ liệu và bảng nhập liệu, chương trình sẽ tự động điều chỉnh phù hợp, trường hợp xóa luôn cả 1 vùng dữ liệu hoặc vùng nhập liệu thì tương ứng vùng đó sẽ không hoạt động nữa.
+ việc tìm kiếm không phân biệt chữ hoa, chữ thường
+ có thể tìm kiếm liên tục dữ liệu
+ có thể sắp xếp bảng dữ liệu theo alphabet sau khi lọc xong tạo thuận tiện cho việc xem.
+ nếu trong vùng nhập liệu có cả công thức ở giữa các cột nhập liệu thì khi nhập vào cũng không mất công thức
hạn chế:
+ Vì là lập trình VBA và phải sử lý nhiều lần để ra được kết quả tốt nhấn nên nếu dữ liệu nhiều sẽ xử lý chậm
--------------------
Link download 13h00
23/02/2017 (*)
--------------------
Chỉnh sửa lỗi và bổ xung so với File ban đầu (*)
+ chỉnh sửa lại các lỗi và bố trí lại bố cục + Chỉnh sửa Code Load và Lọc dữ liệu (bỏ chức năng Sort - do không biết cách tính giá trị)
+ bổ xung các hướng dẫn để dễ sử dụng, sửa lại code lọc dữ liệu không chính xác
+ sửa một số lỗi không chạy được code lọc dữ liệu ở bản cũ (khi làm việc với sheet này mà chuyển qua sheet khác thì code vẫn chạy nhưng không lọc được)
+ bổ xung thêm chức năng sort dữ liệu
+ bổ xung thêm các lọc duy nhất (lấy giá trị cuối hay giá trị đầu tiên)
+ sửa lại cách di chuyển list (bản cũ là chọn list chỗ nào cũng kéo được-> chỉ chọn dòng tiêu đề mới kéo đi được)
+ chỉnh sửa lại cách lọc duy nhất.
+ thêm tính năng dò tìm theo ngày tháng (list không hiển thị được dạng dd/mm/yyyy)
+ List hiển thị đúng như vùng data hiển thị trên trang tính (có thể hiển thị và điền vào đúng định dạng ngày tháng)
+ Sửa lại lỗi sắp xếp nhiều lần bị sai (nếu bảng dữ liệu có dữ liệu là chữ hay số trộn lẫn nhau)
Link download 10h30 04/03/2016

---------------------
Do mình cũng là "tay mơ" nên rất mong nhận được sự đóng góp và phản hồi từ mọi người
---------------------
ps: xin cảm ơn các thành viên đã giúp đỡ mình trong quá trình viết và test lỗi
winvista
kieumanh
ndu98061630
........
---------------------
Tham khảo một số code và ý tưởng
siwtom
ndu98061630
huuthang_bd
Nguyễn Duy Tuân
---------------------
 
Lần chỉnh sửa cuối:
Cũng có nhiều người muốn tham gia học, nhưng không có điều kiện để đi học. Mong anh mở thêm lớp học trực tuyến, để tạo điều kiện cho những bạn không có điều kiện như em

Có em nhé. Em vào website bên anh xem chi tiết nhé! :)
 
Upvote 0
1/ Hôm Mình coi Tivi Hắn Nói: Ở Trung Quốc tỷ phú càng ngày càng gia tăng về số lượng ...Có cả tỷ phú về công Nghệ nhưng Hoàn toàn không biết gì về công Nghệ ...mà đặc biệt hầu hết tỷ phú đó chưa Học Qua bậc Đại Học bao giờ ....

2/ Thực Tế Mình thấy hầu hết mấy tay học cao Đẳng, Đại Học và Sau đại Học Toàn là những tay đi làm thuê cả ....

Còn mấy tay học hết lớp 12 thậm chí chưa hết cấp 2 Toàn ông Chủ cả ...

Nhớ lại ngày trước Mạnh làm cho tập đoàn tôn Hoa Sen Chủ tịch tập đoàn có học Đại Hoc bao giờ đâu ...Keo một tiếng mấy tay 2 ,3 bằng Đại học & thạc sĩ mặt Xanh như tàu lá ..........$$$$@###@#!
 
Upvote 0
Khổ nỗi học trên lớp thì thường nhàm chán và không máu như giải quyết một bài toán thực tế mà người ta hỏi trên GPE.
Theo tôi học bằng cách nào không quan trọng lắm. Quan trọng là phải có đam mê.

Tôi cũng khuyên các bạn muốn học VBA khi áp dụng code của người khác thì phải đọc và hiểu rõ code rồi mới áp dụng, không nên bê nguyên xi vào dự án của mình. Vì mỗi trường hợp có một cách giải quyết khác nhau, mang code chỗ này áp dụng chỗ khác miễn cưỡng có thể có kết quả đúng nhưng chắc chắc sẽ không phải là cách tốt nhất. Hơn nữa sẽ chẳng giúp ích gì cho việc tích lũy kiến thức cả.
 
Upvote 0
1/ Hôm Mình coi Tivi Hắn Nói: Ở Trung Quốc tỷ phú càng ngày càng gia tăng về số lượng ...Có cả tỷ phú về công Nghệ nhưng Hoàn toàn không biết gì về công Nghệ ...mà đặc biệt hầu hết tỷ phú đó chưa Học Qua bậc Đại Học bao giờ ....

2/ Thực Tế Mình thấy hầu hết mấy tay học cao Đẳng, Đại Học và Sau đại Học Toàn là những tay đi làm thuê cả ....

Còn mấy tay học hết lớp 12 thậm chí chưa hết cấp 2 Toàn ông Chủ cả ...

Nhớ lại ngày trước Mạnh làm cho tập đoàn tôn Hoa Sen Chủ tịch tập đoàn có học Đại Hoc bao giờ đâu ...Keo một tiếng mấy tay 2 ,3 bằng Đại học & thạc sĩ mặt Xanh như tàu lá ..........$$$$@###@#!

Đó là câu chuyện của các ông chủ lớn rồi, năng lực mạnh của họ là nối kết sức mạnh chuyên môn của nhiều người chứ bản thân họ không phải là người làm chuyên môn. Mọi người biết đến họ khi họ đã là ông chủ lớn, khi họ còn cu li bị mấy tay xã hội cho gội đầu băng nước tiểu thì ai biết (Nói vui thôi :) ). Ở đâu đó người ta nói số lượng các tỷ phú loại này nhỏ lắm so với hàng triệu người làm doanh nhân, nhiều người bỏ bê học hành để "làm giàu không khó" cũng trả giá nhiều lắm... Xét cho cùng vẫn là hiện tượng hay bề nổi mà chúng ta nhìn thấy mà thôi.

Thôi mình không bàn luận về mấy cái vấn đề học hay không học trên GPE này nữa. Dành không gian cho các bạn góp ý tới nội dung chính của topic này.

Mình góp ý cho chủ topic là sản phẩm chạy trên máy mình thì không lỗi nhưng mang sang máy khác lại lỗi tung tóe. Một trong các nguyên nhân căn bản là các thiết lập trong Registry, Ocx, Dll , 32-bit, 64-bit, các phiên bản Office khác nhau. Máy của người dùng không có sẵn những thiết lập như máy người lập trình. Vậy trong lập trình phải luôn chú ý tới "Môi trường người dùng" bình thường, bẫy các lỗi thật kỹ. Bạn chú ý để các bản nâng cấp sau không mắc phải lỗi đó. Hiện nay file ngày 26-02 của bạn đang bị lỗi như vậy.
 
Upvote 0
1/ Hôm Mình coi Tivi Hắn Nói: Ở Trung Quốc tỷ phú càng ngày càng gia tăng về số lượng ...Có cả tỷ phú về công Nghệ nhưng Hoàn toàn không biết gì về công Nghệ ...mà đặc biệt hầu hết tỷ phú đó chưa Học Qua bậc Đại Học bao giờ ....

2/ Thực Tế Mình thấy hầu hết mấy tay học cao Đẳng, Đại Học và Sau đại Học Toàn là những tay đi làm thuê cả ....

Còn mấy tay học hết lớp 12 thậm chí chưa hết cấp 2 Toàn ông Chủ cả ...

Đại Học, hay nói chung cho tất cả các loại bằng cấp chỉ là một cái mốc người ta dùng để dễ định trình độ của một người mà thôi. Nó không phải là cái tieu chuẩn cứng nhắc và duy nhất.

Tỷ phú công nghệ không cần phải biết gì về công nghệ. Họ có những trợ lý chuyên về công nghệ để cố vấn. Đấy mới là cách làm việc hiệu quả.
Nếu bắt buộc sếp phải hiểu sâu về công nghệ thì chả nhẽ một TGĐ tập đoàn lớn phải biết tất cả kỹ thuật của tất cả mọi công nghệ mà tập đoàn dự vào? Cứ mỗi ngành học 1 vài năm thì bao giờ bạn mới đào tạo được 1 TGĐ?

Khổ nỗi học trên lớp thì thường nhàm chán và không máu như giải quyết một bài toán thực tế mà người ta hỏi trên GPE.
Theo tôi học bằng cách nào không quan trọng lắm. Quan trọng là phải có đam mê.

Tôi cũng khuyên các bạn muốn học VBA khi áp dụng code của người khác thì phải đọc và hiểu rõ code rồi mới áp dụng, không nên bê nguyên xi vào dự án của mình. Vì mỗi trường hợp có một cách giải quyết khác nhau, mang code chỗ này áp dụng chỗ khác miễn cưỡng có thể có kết quả đúng nhưng chắc chắc sẽ không phải là cách tốt nhất. Hơn nữa sẽ chẳng giúp ích gì cho việc tích lũy kiến thức cả.

Đó là 1 trong những lý do tôi khuyên các bạn mới học nên mua hẳn 1 quyển sách về học. Nếu bạn nào có can đảm và nhẫn nại để đọc không sót 1 từ, và không bỏ qua 1 bài tập cho đến khoảng 1/3 quyển sách thì bạn ấy đầy đủ cơ hội để thành công.

Đồng thời, khi nhận ra bạn nào học theo kiểu đốt giai đoạn, tôi cũng thẳng thừng bảo bạn ấy về học lại. Thực ra câu nhắn không hẳn giành cho bạn ấy (ngừoi ta đã nóng nảy học cho gấp thì còn khuyên ngăn thế nào nữa). Tôi chỉ dùng cơ hội để khuyến cáo các bạn khác chập chững bước vào, đừng noi theo vết xe đó thôi.
 
Upvote 0
Đa số học rừng là các người nổi ở GPE này, nhưng không đọc sách offline mà sách online thì cũng là cách học... Thực tế chứng minh là học trực tiếp VBA từ các lớp đa số là không thành công (1), thành công giúp người trên các forum thì lại càng hiếm (nếu không muốn nói là không có) (2). Nghe có vẻ vô lý nhưng thực tế đang diễn ra ở đời thực.

(1) Cái bạn gọi là "thực tế chứng minh" đối với tôi chỉ là hiện tượng "thiểu số to mồm"
Có những kẻ không chịu hiểu rằng học là do mình. Mình khong cố tâm học thì chả có trường có thầy nào dạy nổi. Bước vào học VBA mà muốn bước ra sẽ viết được những cái "giao diện" thật hoành tráng, cái gì cũng "tự động" chạy vèo vèo thì đương nhiên là thất vọng.
Cái số đông học được những gì họ cần thì cứ âm thầm tiến tới. La lối làm chi cho tổn hơi.

Lưu ý là ở hai câu trên, tôi cố tình tương phản hai từ "muốn" và "cần". Trích câu tiếng Anh "separating what you need from what you want is the first step..."

(2) nhận xét chủ quan (nếu khong muốn nói là thiển cận và thiên lệch).

Nếu nói chuyện học lớp thì hầu hết ngừoi học lớp là có việc cần. Học xong thì ngừoi ta mắc làm việc. Và nếu có vào pho rum này nọ thì người ta cũng chả nêu ra là mình học ở đâu. Làm sao bạn biết? Điển hình là bạn biết tôi học ở đâu không?

Nếu nói chuyện tự học thì điển hình là ở đây có thiếu chi kẻ "thành công mà giúp ngừoi". Gọi như vậy là "hiếm" thì tôi chịu thua
Hoặc là điều kiện để được gọi là "thành công" của bạn quá cao, ở đây chỉ có 1-2 người đạt.
Hoặc là điều kiện để được gọi là "giúp người" của bạn quá khắt khe, ở đây không có ai từng đạt được cả.

Lưu ý là tôi không tự biện hộ cho mình. Tôi là kẻ ngạo mạn, và có thể "khinh ngừoi" như nhiều thành viên ở đây đã phê bình.
 
Upvote 0
Tôi nói thực tế là thực tế tại đây, GPE này, đó là thực tế không chối cãi. Lớp học cũng nói vào thực luôn là lớp học VBA (hỏi những người người học từ lớp học đó sẽ hiểu (?)).

Còn nếu đã nói là
Lưu ý là tôi không tự biện hộ cho mình. Tôi là kẻ ngạo mạn, và có thể "khinh ngừoi" như nhiều thành viên ở đây đã phê bình.
thì không còn gì để bàn và nói nữa loãng topic

Chúng ta nên trở lại chuyên môn của topic này , giúp tác giả được phần nào thì giúp tránh chỉ chém gió các vấn đề to lớn quá.
 
Upvote 0
Chúng ta nên trở lại chuyên môn của topic này , giúp tác giả được phần nào thì giúp tránh chỉ chém gió các vấn đề to lớn quá.
Like cho bác 1 phát. em thấy ngày càng bàn ra xa vấn đề của topic. em chỉ muốn đưa lên chia sẻ cho những ai chưa biết để cùng học hỏi với nhau. sẵn em học hỏi thêm nếu có giải thuật nào khác. từ từ thấy càng ngày càng xa chủ đề. **~**
 
Upvote 0
Tôi nói thực tế là thực tế tại đây, GPE này, đó là thực tế không chối cãi. Lớp học cũng nói vào thực luôn là lớp học VBA (hỏi những người người học từ lớp học đó sẽ hiểu (?)).

Nhận định cá nhân là nhận định cá nhân. Muốn coi là thực tế thì phải đưa dữ liệu chứng minh. Còn đem 1 vài trường hợp ngang nhiên trở thành "không chối cãi" thì là quơ đũa cả nắm.
Cứ cụ thể đưa rõ ra. Đã là mắng người thì úp úp mở mở cũng vậy thôi.
 
Lần chỉnh sửa cuối:
Upvote 0
chỉnh sửa lại cách lọc duy nhất.
thêm tính năng dò tìm theo ngày tháng (list không hiển thị được dạng dd/mm/yyyy)
Link #1
 
Upvote 0
em biết là được nhưng làm sao kiểm tra được số nào nó là ngày để chuyển cho đúng. như số 1 thôi nó cũng chuyển được thành là 1/1/1900 mà bác.

+ Đúng bài bản thì bạn phải đẩy cái đó về phía người dùng, cho người dùng (người sử dụng chương trình) chọn kiểu FORMAT cho từng cột (ở cả list chọn , lẫn kết quả trên sheet (cái này có thể không có))
+ hoặc bạn cho code tự động nhận dạng từ dữ liệu DATA nguồn nhập vào để xác định đúng kiểu FORMAT
 
Upvote 0
+ Đúng bài bản thì bạn phải đẩy cái đó về phía người dùng, cho người dùng (người sử dụng chương trình) chọn kiểu FORMAT cho từng cột (ở cả list chọn , lẫn kết quả trên sheet (cái này có thể không có))
+ hoặc bạn cho code tự động nhận dạng từ dữ liệu DATA nguồn nhập vào để xác định đúng kiểu FORMAT
đã sửa List hiển thị đúng như vùng data hiển thị trên trang tính (có thể hiển thị và điền vào đúng định dạng ngày tháng)
vẫn chưa test sự chính xác. mong mọi người tìm lỗi giúp
 
Upvote 0
Lỗi: Khi nhập ngày tháng list nhập liệu không tìm được.
 
Upvote 0
Lỗi: Khi nhập ngày tháng list nhập liệu không tìm được.
bạn
tìm thế nào mà không được vậy bạn? nói rõ hơn đi.
mình đã thử, vẫn ngon lành cành đào mà
trường hợp bạn tìm không ra kết quả chắc là không có ngày trong list đó rồi
xem thử vide mình tìm cả 3 cách nhé
1/1/2016
1-1-2016
42370
kiểu nào cũng ra được cả, sẽ xuất kết quả theo như dữ liệu nguồn của bạn nhé. dữ liệu nguồn thế nào nó ra thế đó. chứ nó không thông minh để tự nhận dạng cái nào ngày mà tự chuyển cho bạn đâu. nếu bạn chơi ngày với số trộn lẫn thì thua, tôi chưa đủ trình độ để có thể viết cho nó có thể nhận dạng được nó là ngày hay số
[video=youtube;lkxYfDcGP9w]https://www.youtube.com/watch?v=lkxYfDcGP9w&feature=youtu.be[/video]
 
Upvote 0
Hii!mình download của bạn về không hiểu sao danh sách nhập liệu ở cột 4 thời gian nó không định dạng như trên youtube mà bạn đã đăng.
Vì không định dạng đúng nên mới phát sinh nhập không đúng ngày tháng bạn ah. Bản mình đăng lên youtube là bản ListSearch-V1.1-18h00 03-03-17
[video=youtube;NQ7z-s9nIxQ]https://www.youtube.com/watch?v=NQ7z-s9nIxQ&feature=youtu.be[/video]
 
Lần chỉnh sửa cuối:
Upvote 0
Hii!mình download của bạn về không hiểu sao danh sách nhập liệu ở cột 4 thời gian nó không định dạng như trên youtube mà bạn đã đăng.
Vì không định dạng đúng nên mới phát sinh nhập không đúng ngày tháng bạn ah. Bản mình đăng lên youtube là bản ListSearch-V1.1-18h00 03-03-17
video không xem được nhé bạn, vấn đề bạn nói chắc là cũ rồi hay sao ấy. lúc sau mình có sửa lại vài chỗ để tìm ngày chính xác hơn. chắc là do chưa up link lên. bạn xem file mới nhất #1 nhé
 
Upvote 0
Web KT

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

Back
Top Bottom