Mừng GPE 20 tuổi – Em xin góp vui món quà “Nhập liệu thông minh cho Excel” (2 người xem)

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

Tôi tuân thủ nội quy khi đăng bài

Ngày mai trời lại sáng

Thành viên thường trực
Tham gia
4/7/21
Bài viết
359
Được thích
182
Xin chào, xin chào đại gia đình GPE!
Nhân dịp GPE tròn 20 tuổi, em cũng xin góp một món quà nho nhỏ để chung vui cùng đại gia đình GPE :D
Quà của em không có bánh kem, cũng chẳng có nến, mà là một ứng dụng em đang nghịch có cái tên hơi kêu một chút:
“Nhập liệu thông minh cho Excel”
Gọi là thông minh thế thôi, chứ thông minh đến đâu thì còn phải nhờ các anh chị em GPE kiểm chứng hộ ạ
Em xin gửi tặng mọi người cùng dùng thử. Ai thấy chỗ nào hay thì dùng, chỗ nào chưa hay thì cứ bắt lỗi, góp ý, mổ xẻ nhiệt tình để em nó có cơ hội… khôn thêm từng ngày :D
Cũng xem như một chút đóng góp nhỏ của em cho nơi mà suốt bao năm qua rất nhiều người đã cùng nhau chia sẻ kiến thức và kết nối niềm đam mê với Excel.
Chúc GPE tuổi 20 thật nhiều niềm vui, ngày càng phát triển và tiếp tục là nơi anh chị em chúng ta vào hỏi Excel rồi… tiện thể ở lại chơi với nhau thật lâu! ❤️
-----
Cập nhật phiên bản mới 1.3

1786876328323.png

1786876339998.png
 

File đính kèm

Lần chỉnh sửa cuối:
Giải pháp
@Tuanba1992 — ý chọn nhiều dòng của bác, giờ chọn kiểu gì cũng được:
  • Ctrl + tích từng dòng
  • Insert tích dòng đang đứng, tự nhảy xuống dòng kế
  • Shift + ↑↓ hoặc Shift + Click quét cả dải
  • Rê chuột bôi đen, kéo quá mép thì tự cuộn
Tích xong một Enter ghi cả loạt, một Ctrl+Z lui sạch.

@Nhattanktnn
"Add-in không nên tác động bất cứ gì lên sheet ngoài việc nhập liệu."
Nhận toa ạ. Quy tắc nhập nay cất trong hồ sơ Windows, không nằm trong file Excel nữa. Mở file, bấm loạn, đóng ra — không sinh sheet ẩn, không còn bị hỏi "Lưu thay đổi?" khi chẳng sửa gì. Muốn gửi file cho đồng nghiệp mở lên chạy ngay thì tích ô «Nhúng cấu hình vào tệp này» — tự bác...
Tìm kiếm nhanh, có highlight luôn từ cần tìm và thao tác nhập liệu mượt lắm đó bạn. Có thêm tên cột trong bảng dropdown nên dễ nhìn hơn. File này chuyển qua add-in thì nhẹ nhàng rồi, chỉ hơn 700kb (file của bạn @huuthang_bd còn nhẹ hơn 175kb).
Vibe coding quá dữ.
 
Lần chỉnh sửa cuối:
Upvote 0
Tìm kiếm nhanh, có highlight luôn từ cần tìm và thao tác nhập liệu mượt lắm đó bạn. Có thêm tên cột trong bảng dropdown nên dễ nhìn hơn. File này chuyển qua add-in thì nhẹ nhàng rồi, chỉ hơn 700kb (file của bạn @huuthang_bd còn nhẹ hơn 175kb).
Vibe coding quá dữ.
Được bác khen em khoái quá
Nhưng bác là cao cao thủ VBA/Form mà chỉ khen chưa thấy chém thì em chưa yên tâm đâu nha :D
Bác soi kỹ giúp em, có bệnh gì cứ kê đơn mạnh tay ạ
File còn nhẹ chắc tại em… chưa kịp nhét đủ bug vào
 
Upvote 0
Bác soi kỹ giúp em, có bệnh gì cứ kê đơn mạnh tay ạ
Tôi chỉ test thao tác cơ bản là tính năng nhập liệu nhanh thì thấy nó rất ổn và đối với tôi thì thấy là đủ rồi :) . Chưa thấy lỗi linh tinh như: không thoát được form dropdown khi người dùng bỏ ý định nhập liệu, bấm chọn ô khác.
À khi dùng phím Tab từ ô kế bên sang cột nhập liệu (cột tô màu vàng) thì nó hiện Form danh sách xổ xuống nhưng con trỏ chuột không còn nằm trong textbox tìm kiếm mà ở danh sách bên dưới, muốn tìm kiếm thì phải kích chuột lại vào textbox. Theo tôi thì thấy nó không tiện cho lắm khi phải di chuyển tay qua con chuột :D .
Có thể còn lỗi gì khác nữa thì để các bạn hay làm việc với Excel test thêm cho bạn mới biết được chứ tôi không còn làm việc dính tới máy tính lâu rồi, chỉ rảnh rỗi tự học code vọc vạch cho vui thôi..
 
Lần chỉnh sửa cuối:
Upvote 0
Tôi chỉ test thao tác cơ bản là tính năng nhập liệu nhanh thì thấy nó rất ổn và đối với tôi thì thấy là đủ rồi :) . Chưa thấy lỗi linh tinh như: không thoát được form dropdown khi người dùng bỏ ý định nhập liệu, bấm chọn ô khác.
Có thể còn lỗi gì khác nữa thì để các bạn hay làm việc với Excel test thêm cho bạn mới biết được.
Cảm ơn bác đã dành thời gian test giúp em
Chức năng tạo Add-in thì vẫn đang trong quá trình hoàn thiện. Hiện tại tạo file Add-in rồi add vào Excel xong vẫn còn thiếu một số chức năng để quản lý/thao tác cho tiện, nên em đang bổ sung thêm dần ạ.
Bác có thời gian thì nghịch và soi thêm giúp em nhé
Có gì chưa ổn hoặc nên thêm bớt, bác cứ chém thẳng tay để em còn cải tiến ạ :D
 
Upvote 0
Cảm ơn bác đã dành thời gian test giúp em
Chức năng tạo Add-in thì vẫn đang trong quá trình hoàn thiện. Hiện tại tạo file Add-in rồi add vào Excel xong vẫn còn thiếu một số chức năng để quản lý/thao tác cho tiện, nên em đang bổ sung thêm dần ạ.
Bác có thời gian thì nghịch và soi thêm giúp em nhé
Có gì chưa ổn hoặc nên thêm bớt, bác cứ chém thẳng tay để em còn cải tiến ạ :D
Trước e hay tạo nút và vẽ trực tiếp trên Useform căn chỉnh các kiểu. Giờ ko làm VBA nữa nhìn form Bác ko vẽ trực tiếp mà code cả UF cài đặt mầu mè đẹp đẽ, đỉnh quá.
Góp ý 1: Sự kiện click Đang thao tác như sau: Click vào ô, click tiếp vào vùng form tạo ra để gõ, chọn bằng click chuột sau mới trả về, như vậy để nhập liệu cần sử dụng cả bàn phím và cả chuột đặc biệt là 2 click đầu hơi tốn thời gian. có thể tối ưu hơn bằng setforcus nó ngay khi click đầu
Góp ý 2: Hơi ít sự kiện có thể thêm Double click vào ô hiện form hoặc xịn hơn nữa cho gõ ở ô xong enter để hiện form tìm hoặc chuột phải
Góp ý 3: Logic ở đây cũng đang chưa đúng đứng ở cột mã KH nhưng lại tìm kiếm tên khách hàng. Có thể làm theo kiểu ở cột nào, tìm kiếm cột đó. hoặc Nếu bỏ qua logic này thì có lẽ nên bổ sung tìm kiếm ở khớp từ ở nhiều cột
Góp y 4: Không nên set cứng tiêu đề vì sang bảng mới tiêu đề sẽ ko khớp nữa
Góp ý 5: thêm Công thức tự tính toán giống data ( cái này sẽ làm kiểu ghi công thức hoặc copy dòng)
Góp ý 6: Xem xét phát triển thêm bề rộng cột tương thích với vùng nhập liệu và tìm kiếm ko dấu
 
Upvote 0
Xin chào, xin chào
Báo cáo hai bác @ongke0711@Mr.hieudoanxd : sau một vòng được hai bác bắt bệnh và kê đơn, em InputInVBA đã xuất viện với phiên bản 1.3 rồi ạ

Mấy bệnh Tab/focus, bảng “bám đuôi”… đã xử; tiện thể em nhét thêm nháy đúp gọi bảng, tự điền công thức, lấy nguồn từ file Excel khác và vài món linh tinh nữa.

Em gửi lại cả .xlsm + .xlam. cập nhật phiên bản 1.3 ở bài 1 ạ.
Các bác rảnh khám tiếp giúp em nhé, còn bệnh là em còn chữa :D
 
Lần chỉnh sửa cuối:
Upvote 0
Upvote 0
Xin chào, xin chào đại gia đình GPE!
Nhân dịp GPE tròn 20 tuổi, em cũng xin góp một món quà nho nhỏ để chung vui cùng đại gia đình GPE :D
Quà của em không có bánh kem, cũng chẳng có nến, mà là một ứng dụng em đang nghịch có cái tên hơi kêu một chút:
“Nhập liệu thông minh cho Excel”
Gọi là thông minh thế thôi, chứ thông minh đến đâu thì còn phải nhờ các anh chị em GPE kiểm chứng hộ ạ
Em xin gửi tặng mọi người cùng dùng thử. Ai thấy chỗ nào hay thì dùng, chỗ nào chưa hay thì cứ bắt lỗi, góp ý, mổ xẻ nhiệt tình để em nó có cơ hội… khôn thêm từng ngày :D
Cũng xem như một chút đóng góp nhỏ của em cho nơi mà suốt bao năm qua rất nhiều người đã cùng nhau chia sẻ kiến thức và kết nối niềm đam mê với Excel.
Chúc GPE tuổi 20 thật nhiều niềm vui, ngày càng phát triển và tiếp tục là nơi anh chị em chúng ta vào hỏi Excel rồi… tiện thể ở lại chơi với nhau thật lâu! ❤️
-----
Cập nhật phiên bản mới 1.3

View attachment 312332

View attachment 312334

Xin chào, xin chào đại gia đình GPE!
Nhân dịp GPE tròn 20 tuổi, em cũng xin góp một món quà nho nhỏ để chung vui cùng đại gia đình GPE :D
Quà của em không có bánh kem, cũng chẳng có nến, mà là một ứng dụng em đang nghịch có cái tên hơi kêu một chút:
“Nhập liệu thông minh cho Excel”
Gọi là thông minh thế thôi, chứ thông minh đến đâu thì còn phải nhờ các anh chị em GPE kiểm chứng hộ ạ
Em xin gửi tặng mọi người cùng dùng thử. Ai thấy chỗ nào hay thì dùng, chỗ nào chưa hay thì cứ bắt lỗi, góp ý, mổ xẻ nhiệt tình để em nó có cơ hội… khôn thêm từng ngày :D
Cũng xem như một chút đóng góp nhỏ của em cho nơi mà suốt bao năm qua rất nhiều người đã cùng nhau chia sẻ kiến thức và kết nối niềm đam mê với Excel.
Chúc GPE tuổi 20 thật nhiều niềm vui, ngày càng phát triển và tiếp tục là nơi anh chị em chúng ta vào hỏi Excel rồi… tiện thể ở lại chơi với nhau thật lâu! ❤️
-----
Cập nhật phiên bản mới 1.3

View attachment 312332

View attachment 312334


Nếu tên mặt hàng là *** và ### thì code không tìm được
1786895541005.png
 
Upvote 0
1/ làm hai cột nhập liệu khó chịu lắm và ít ai ứng dụng như vậy

2/ viết làm sao chỉ sử dụng chuột lần đầu bấm vào vùng nhập liệu xong dùng mọi cái trên bàn phím nó mới nhanh còn chuột không bao giờ dùng nữa

3/ tham khảo cách của huuthang_bd làm đơn giản ok xong nâng cấp lên

4/ tham khảo thêm của tôi


Tóm lại viết gì thì viết mà người dùng cuối xem qua là biết sử dụng ngay và chỉ sử dụng chuột làm đầu chọn vùng nhập liệu còn sau đó có lẽ không cần nữa mà dùng bàn phím sử dụng mới nhanh và linh hoạt

thiết kế mà người dùng phổ thông xem mãi không biết áp dụng thì thiết kế đó mình viết mình dùng thôi
 
Upvote 0
Em chào đại ca @Kiều Mạnh , đội ơn anh ghé chấm bài ạ

Em nói lại từng ý xem hiểu có đúng không, sai đâu anh chỉnh giúp em:
1/ "Hai cột nhập liệu" — ý anh là sheet demo của em bày một dòng mà tới HAI cột phải tra (Mã KH lẫn Mã hàng) nhìn rối, thực tế ít ai nhập kiểu vậy, đúng không ạ? Công cụ thì không bắt buộc — khai một cột hay mấy cột là tuỳ mình ạ.

2/ Vụ bàn phím em xin khoe nhẹ: em cũng tôn thờ đúng đạo "chuột chỉ bấm phát đầu" đó anh Chọn ô xong là gõ vài ký tự không dấu → ↑↓ chọn → Enter ghi và tự nhảy ô kế tiếp → gõ tiếp, hết bảng không rờ chuột; Tab sang phải, Esc thoát, Ctrl+Z lui cả lượt. Nhưng nếu anh thử mà vẫn có chỗ phải với tay lấy chuột thì anh cho em xin đúng cái thao tác đó — đấy chính là con bug em đang săn ạ.
 
Upvote 0
này làm thêm kết nối đa csdl nữa là đẹp ko chỉ mình excel nhập được nhập từ csdl như mysql, sqlsever nữa là đẹp luôn
 
Upvote 0
Hehe :D
@Kiều Mạnh — nghe lời đại ca, em vác dao đi "mổ" bản của anh @huuthang_bd học lỏm được mấy chiêu, để bản sau em độ lại cho ngon
- Click phát ăn ngay, khỏi nháy đúp cho mỏi tay.​
- Tab… Tab… Enter cái vèo về đầu dòng dưới, tay không rời phím​
- Bảng thiết lập cho ăn kiêng bớt: để "Cơ bản" gọn gàng, ai máu thì bung "Nâng cao"​
Đúng ý đại ca luôn: chuột chỉ bấm phát mở màn, còn lại bàn phím "quẩy" hết.

@Tuanba1992 — ý lấy dữ liệu từ CSDL của bác hay đó, em cũng từng nghĩ tới, làm được ạ
Em tính đi hai bước:
- Trước mắt — bác dùng chức năng lấy dữ liệu sẵn có của Excel (Power Query) để kéo bảng từ MySQL/SQL Server về một sheet, rồi cho InputInVBA tìm trên sheet đó. Dùng được ngay, khỏi cài thêm gì.​
- Bản sau — em làm hẳn phần kết nối thẳng tới DB trong add-in: có ô khai địa chỉ máy chủ, chọn loại DB (SQL Server, MySQL…), và cách đăng nhập tùy loại — đăng nhập bằng tài khoản Windows (khỏi gõ gì) hoặc nhập tài khoản/mật khẩu. Xong là InputInVBA lấy danh mục thẳng từ DB để gõ tìm, khỏi qua sheet trung gian.​
Cảm ơn cả nhà, cứ chém thẳng tay để em nó khôn ra
 
Upvote 0
Hehe :D
@Kiều Mạnh — nghe lời đại ca, em vác dao đi "mổ" bản của anh @huuthang_bd học lỏm được mấy chiêu, để bản sau em độ lại cho ngon
- Click phát ăn ngay, khỏi nháy đúp cho mỏi tay.​
- Tab… Tab… Enter cái vèo về đầu dòng dưới, tay không rời phím​
- Bảng thiết lập cho ăn kiêng bớt: để "Cơ bản" gọn gàng, ai máu thì bung "Nâng cao"​
Đúng ý đại ca luôn: chuột chỉ bấm phát mở màn, còn lại bàn phím "quẩy" hết.

@Tuanba1992 — ý lấy dữ liệu từ CSDL của bác hay đó, em cũng từng nghĩ tới, làm được ạ
Em tính đi hai bước:
- Trước mắt — bác dùng chức năng lấy dữ liệu sẵn có của Excel (Power Query) để kéo bảng từ MySQL/SQL Server về một sheet, rồi cho InputInVBA tìm trên sheet đó. Dùng được ngay, khỏi cài thêm gì.​
- Bản sau — em làm hẳn phần kết nối thẳng tới DB trong add-in: có ô khai địa chỉ máy chủ, chọn loại DB (SQL Server, MySQL…), và cách đăng nhập tùy loại — đăng nhập bằng tài khoản Windows (khỏi gõ gì) hoặc nhập tài khoản/mật khẩu. Xong là InputInVBA lấy danh mục thẳng từ DB để gõ tìm, khỏi qua sheet trung gian.​
Cảm ơn cả nhà, cứ chém thẳng tay để em nó khôn ra
hình như vibe coding nhưng còn thêm vibe comment nữa phải không nhỉ , thấy na ná í :D
Nói chứ mình mở thử thấy giao diện rất đẹp, chưa test gì mấy nên cũng không biết có vấn đề gì không, nhưng mình thấy nó hơi rối về cách thiết lập hơn so với mấy bản của các anh.
 
Upvote 0
hình như vibe coding nhưng còn thêm vibe comment nữa phải không nhỉ , thấy na ná í :D
Nói chứ mình mở thử thấy giao diện rất đẹp, chưa test gì mấy nên cũng không biết có vấn đề gì không, nhưng mình thấy nó hơi rối về cách thiết lập hơn so với mấy bản của các anh.
Hehe, vibe coding rồi thì tiện thể vibe comment luôn bác
Na ná ChatGPT ấy bác. Thời buổi AI rồi, em cũng tranh thủ thuê nó làm phụ tá, chứ ngồi gõ từng dòng chắc tới sinh nhật GPE 25...30 tuổi mới xong :D
Ý tưởng, cách làm với logic em đưa, nó gợi ý code/comment, em chỉnh rồi test lại. Nói vui là AI cầm bàn phím, em cầm lái
 
Upvote 0
Hehe :D
@Kiều Mạnh — nghe lời đại ca, em vác dao đi "mổ" bản của anh @huuthang_bd học lỏm được mấy chiêu, để bản sau em độ lại cho ngon
- Click phát ăn ngay, khỏi nháy đúp cho mỏi tay.​
- Tab… Tab… Enter cái vèo về đầu dòng dưới, tay không rời phím​
- Bảng thiết lập cho ăn kiêng bớt: để "Cơ bản" gọn gàng, ai máu thì bung "Nâng cao"​
Đúng ý đại ca luôn: chuột chỉ bấm phát mở màn, còn lại bàn phím "quẩy" hết.

@Tuanba1992 — ý lấy dữ liệu từ CSDL của bác hay đó, em cũng từng nghĩ tới, làm được ạ
Em tính đi hai bước:
- Trước mắt — bác dùng chức năng lấy dữ liệu sẵn có của Excel (Power Query) để kéo bảng từ MySQL/SQL Server về một sheet, rồi cho InputInVBA tìm trên sheet đó. Dùng được ngay, khỏi cài thêm gì.​
- Bản sau — em làm hẳn phần kết nối thẳng tới DB trong add-in: có ô khai địa chỉ máy chủ, chọn loại DB (SQL Server, MySQL…), và cách đăng nhập tùy loại — đăng nhập bằng tài khoản Windows (khỏi gõ gì) hoặc nhập tài khoản/mật khẩu. Xong là InputInVBA lấy danh mục thẳng từ DB để gõ tìm, khỏi qua sheet trung gian.​
Cảm ơn cả nhà, cứ chém thẳng tay để em nó khôn ra
Cái này để dễ thực chất nó là lấy dữ liệu về rồi trả ra arr rồi và lọc array đó thôi., cái này viết thêm hàm sql kết nối đa csdl là xong.
Mình thì làm cách như thế này.
Liên kết: https://www.youtube.com/watch?v=s2gHA-VP54c
 
Upvote 0
Dạ cảm ơn bác @ongke0711 nhắc Em cũng sợ thành ông đẽo cày, nên vẫn dán cái “bản vẽ” trước mặt: gõ vài chữ → ra đúng thứ cần điền, mở lên là hiểu cách dùng. Góp ý nào giúp cái lõi đó ngon hơn thì em đẽo ngay, còn hay mà lệch hướng thì em cất sổ ngâm cứu sau ạ :D

Và đây là mẻ đẽo mới nhất: InputInVBA 1.6 xin xuất viện
  • @Kiều Mạnh + @Nhattanktnn: bảng Thiết lập đã giảm cân, cơ bản chỉ còn gõ ở đâu – lấy dữ liệu từ đâu; món khó giấu vào Nâng cao.
  • @Tuanba1992 : thêm Kết nối CSDL SQL Server/MySQL, chọn bảng/cột rồi dùng luôn, khỏi qua sheet trung gian.Mật khẩu CSDL không nằm trong file (cất ở kho đăng nhập của Windows), bản .xlam đóng gói cũng không mang theo thông tin kết nối — gửi file cho đồng nghiệp là yên tâm.
  • @Mr.hieudoanxd : click là gõ, Enter là xuống dòng, tay khỏi rời bàn phím.
  • @Đạt Lùn 99 : mấy em ***123, ####123 giờ hết trốn
  • @ongke0711 : quét nhầm hàng tiêu đề thì bị nhắc.
Khuyến mãi: em nó vừa đi du học về, giờ nói được Việt / English / 日本語
Bổ sung thêm chức năng tự kéo giãn các cột trong form tìm kiếm.
Cân nặng có tăng chút… chắc tại ăn sinh nhật GPE hơi nhiều :D

Bài #1 giờ em không sửa được nữa (vẫn đang treo bản 1.3 cũ), nên bản 1.6 em đính kèm ngay bài này, các bác tải ở đây giúp em ạ. Và nếu được, em xin phép nhờ BQT GPE ngó qua gộp/chuyển giúp file bản mới lên bài #1 — để bác nào ghé sau khỏi lỡ tay tải nhầm bản cũ ạ. Em cảm ơn nhiều!

Các bác rảnh lại khám giúp em nhé — còn bệnh thì em còn đẽo
Nếu vài hôm tới không có ca cấp cứu nào, chỉ còn các toa “nâng cấp”, thì em xin phép cho em nó chạy chơi vài ngày rồi quay lại đẽo tiếp ạ :D

Chúc cả nhà nghịch vui và có nhiều trải nghiệm hay với em nó!


1787002303346.png

1787001935303.png

1787002058237.png

1787002092435.png

1787002352453.png
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Dạ cảm ơn bác @ongke0711 nhắc Em cũng sợ thành ông đẽo cày, nên vẫn dán cái “bản vẽ” trước mặt: gõ vài chữ → ra đúng thứ cần điền, mở lên là hiểu cách dùng. Góp ý nào giúp cái lõi đó ngon hơn thì em đẽo ngay, còn hay mà lệch hướng thì em cất sổ ngâm cứu sau ạ :D

Và đây là mẻ đẽo mới nhất: InputInVBA 1.6 xin xuất viện
  • @Kiều Mạnh + @Nhattanktnn: bảng Thiết lập đã giảm cân, cơ bản chỉ còn gõ ở đâu – lấy dữ liệu từ đâu; món khó giấu vào Nâng cao.
  • @Tuanba1992 : thêm Kết nối CSDL SQL Server/MySQL, chọn bảng/cột rồi dùng luôn, khỏi qua sheet trung gian.Mật khẩu CSDL không nằm trong file (cất ở kho đăng nhập của Windows), bản .xlam đóng gói cũng không mang theo thông tin kết nối — gửi file cho đồng nghiệp là yên tâm.
  • @Mr.hieudoanxd : click là gõ, Enter là xuống dòng, tay khỏi rời bàn phím.
  • @Đạt Lùn 99 : mấy em ***123, ####123 giờ hết trốn
  • @ongke0711 : quét nhầm hàng tiêu đề thì bị nhắc.
Khuyến mãi: em nó vừa đi du học về, giờ nói được Việt / English / 日本語
Bổ sung thêm chức năng tự kéo giãn các cột trong form tìm kiếm.
Cân nặng có tăng chút… chắc tại ăn sinh nhật GPE hơi nhiều :D

Bài #1 giờ em không sửa được nữa (vẫn đang treo bản 1.3 cũ), nên bản 1.6 em đính kèm ngay bài này, các bác tải ở đây giúp em ạ. Và nếu được, em xin phép nhờ BQT GPE ngó qua gộp/chuyển giúp file bản mới lên bài #1 — để bác nào ghé sau khỏi lỡ tay tải nhầm bản cũ ạ. Em cảm ơn nhiều!

Các bác rảnh lại khám giúp em nhé — còn bệnh thì em còn đẽo
Nếu vài hôm tới không có ca cấp cứu nào, chỉ còn các toa “nâng cấp”, thì em xin phép cho em nó chạy chơi vài ngày rồi quay lại đẽo tiếp ạ :D

Chúc cả nhà nghịch vui và có nhiều trải nghiệm hay với em nó!


View attachment 312376

View attachment 312373

View attachment 312374

View attachment 312375

View attachment 312377
Di chuyển đến 1 ô gõ đang bị lỗi ko khớp dữ liệu chữ mất khi gõ.
 
Upvote 0
InputInVBA 1.7 — GIẤY RA VIỆN

Bệnh nhân: ô tìm kiếm của InputInVBA
Người nhà đưa đến khám: bác @Tuanba1992
Triệu chứng: đi chuột thì khoẻ như voi, đi phím mũi tên thì á khẩu — gõ không bắt ký tự.
Chẩn đoán: không phải cảm vặt như bác sĩ tưởng — lệch khớp: con nháy nằm một nơi, bàn phím nghe một nẻo. Bác sĩ xin nhận khuyết điểm mấy lần đầu toàn kê... thuốc bổ
Điều trị: mổ tận gốc. Nay đi phím gõ liền tay như đi chuột, bấm giữ mũi tên chạy một mạch qua vùng nhập, gõ đè ô cũ là chữ mới thay chữ cũ, Esc hai nhịp đúng hẹn.

Quà xuất viện: bộ lọc CSDL ngay trong hộp thiết lập — chọn trường, chọn phép, gõ giá trị, mỗi dòng VÀ/HOẶC riêng, không phải viết chữ WHERE nào (lười nữa thì bấm thẳng một ô trong bảng xem thử, điều kiện tự điền). Kết nối lưu trên máy, không theo file; mật khẩu vẫn tuyệt đối không nằm trong file.

⚠️ Dặn dò khi ra viện: bác nào cài bản .xlam đời trước nhớ gỡ trước khi cài 1.7 (File → Options → Add-ins → Go… → bỏ tích bản cũ). Bản cũ còn nạp là bản mới nhường sân cho tiền bối, các bác lại mắng bác sĩ bán thuốc giả.

Bác nào kỹ tính: mã SHA-256 để đối chiếu nằm trong PHAT_HANH.txt đính kèm.
Phòng khám mở cửa miễn phí trọn đời nhân dịp GPE 20 tuổi — mời các bác cứ vặt lông tiếp!

1787061985698.png
 

File đính kèm

Upvote 0
Làm xong bằng vba rồi thích có thể đổi ngôn ngữ sang cái khác rồi đóng addins thử xem nó thế nào
Cảm ơn bác gợi ý ạ! Lúc chọn đồ nghề em cũng đắn đo lắm, nhưng chốt VBA thuần vì đúng chất quà quê GPE: không cài đặt, không cần admin, không .dll/.xll, máy công ty khoá Trust Center vẫn chạy — file chính là app, chép qua USB là xong. Sang C# hay JS thì mượt chỗ khác, nhưng bà con lại phải cài này tin cậy nọ, mà nhiều máy văn phòng mình còn Excel 32-bit đời cũ...

Vụ thử ngôn ngữ khác thì thật ra em có... ngoại tình sẵn rồi Ngoài giờ, phòng khám mới nhận một hợp đồng lạ: khám tuyển vận động viên cho sàn chứng khoán — con bot viết bằng Python, giao diện web mở ngay trên trình duyệt, tự chạy nền cùng Windows; ngày ngày nó soi cả nghìn mã, đo thể lực từng em, nhặt ra mấy gà nòi có tướng chạy đường dài trước khi thiên hạ kịp để ý. Em đính kèm một tấm «điện tâm đồ» chụp từ phòng lab cho vui mắt — mong không làm loãng thớt Excel của các bác Khi nào nó cứng tay nghề, em xin phép mang sang góp vui.

Còn trong thớt này, bệnh nhân VBA vẫn là con cưng — bác cứ tiếp tục vặt lông ạ.

1787065161313.png
 
Upvote 0
InputInVBA 1.7 — GIẤY RA VIỆN

Bệnh nhân: ô tìm kiếm của InputInVBA
Người nhà đưa đến khám: bác @Tuanba1992
Triệu chứng: đi chuột thì khoẻ như voi, đi phím mũi tên thì á khẩu — gõ không bắt ký tự.
Chẩn đoán: không phải cảm vặt như bác sĩ tưởng — lệch khớp: con nháy nằm một nơi, bàn phím nghe một nẻo. Bác sĩ xin nhận khuyết điểm mấy lần đầu toàn kê... thuốc bổ
Điều trị: mổ tận gốc. Nay đi phím gõ liền tay như đi chuột, bấm giữ mũi tên chạy một mạch qua vùng nhập, gõ đè ô cũ là chữ mới thay chữ cũ, Esc hai nhịp đúng hẹn.

Quà xuất viện: bộ lọc CSDL ngay trong hộp thiết lập — chọn trường, chọn phép, gõ giá trị, mỗi dòng VÀ/HOẶC riêng, không phải viết chữ WHERE nào (lười nữa thì bấm thẳng một ô trong bảng xem thử, điều kiện tự điền). Kết nối lưu trên máy, không theo file; mật khẩu vẫn tuyệt đối không nằm trong file.

⚠️ Dặn dò khi ra viện: bác nào cài bản .xlam đời trước nhớ gỡ trước khi cài 1.7 (File → Options → Add-ins → Go… → bỏ tích bản cũ). Bản cũ còn nạp là bản mới nhường sân cho tiền bối, các bác lại mắng bác sĩ bán thuốc giả.

Bác nào kỹ tính: mã SHA-256 để đối chiếu nằm trong PHAT_HANH.txt đính kèm.
Phòng khám mở cửa miễn phí trọn đời nhân dịp GPE 20 tuổi — mời các bác cứ vặt lông tiếp!

View attachment 312394

Quét nó báo thế này lý do là gì nhỉ?

1787103943358.png
 
Upvote 0
Quét nó báo thế này lý do là gì nhỉ?

View attachment 312400

Cái này tôi nghĩ là báo nhầm, nhưng không dám nói chắc 100% thay cho máy quét.
Bác cứ tự kiểm cho yên tâm, thế chắc hơn:
Mã không khoá. Bấm Alt+F11 là đọc được từng dòng, không hỏi mật khẩu — cái này đáng tin hơn mọi lời tôi nói.

Mở ra bác sẽ thấy ngay một chỗ trông lạ: chuỗi tiếng Việt trong mã bị mã hoá dạng \1EC9 rồi ghép lại lúc chạy. Không phải giấu gì đâu — tệp .bas được VBE nạp theo bảng mã ANSI, gõ thẳng chữ có dấu vào mã nguồn là hỏng font khi mở trên máy khác. Nhưng đúng là kiểu mã hoá này giống cách virus macro hay giấu chuỗi, nên máy quét bằng AI dễ kêu.
Tương tự, add-in có gọi kho «Thông tin đăng nhập» của Windows — chính là để mật khẩu CSDL không nằm trong file — và có đọc registry để biết máy đã cài driver ODBC tên gì.

Với lại ngay phía trên cái nhãn đỏ đó, chính VirusTotal cũng tự mô tả đây là công cụ nhập liệu cho Excel, chứ không mô tả nó làm gì mờ ám.

Tôi vừa quét lại bằng Windows Defender với bộ mẫu mới nhất — cả bản .xlsm lẫn .xlam đều không phát hiện gì. Bác nào ngại thì cứ bấm chuột phải vào file → Scan with Microsoft Defender tự kiểm trên máy mình, khỏi cần tin tôi.

Bác nào chưa yên tâm thì đừng cài vội, cứ để người khác dùng trước xem sao. Tôi không dám ép ai cả.

-------------------------
Bổ sung sau khi kiểm tra lại

Con số cụ thể: 1/65 — một máy kêu, 64 máy còn lại im.

Đáng nói hơn là ngay phía trên cái nhãn đỏ đó, chính VirusTotal có mục Code insights tự đọc và phân tích mã. Tôi dịch nguyên văn ra đây, ảnh chụp bản gốc tiếng Anh đính kèm bên dưới:


Các macro trong tệp tạo thành một công cụ nhập liệu và bộ máy tự động hoàn thành cho Excel, được viết rất công phu, tên là "InputInVBA". Công cụ này giúp tìm kiếm, lọc và chèn dữ liệu vào trang tính một cách nhanh chóng, kèm khả năng tuỳ chọn truy vấn cơ sở dữ liệu bên ngoài (SQL Server, MySQL, ODBC).

Các chức năng lõi về mặt kỹ thuật:

1. Bộ máy tìm kiếm mờ và tự động hoàn thành: cài đặt trong modIIX_Match và modIIX_Core. Nó tách chuỗi tìm kiếm thành các thành phần, tính điểm mức độ khớp, xếp hạng các dòng khớp, và điền vào trang tính khi người dùng chọn.

2. Tích hợp cơ sở dữ liệu: cài đặt trong modIIX_DB, hỗ trợ kết nối ADODB liên kết muộn. Để bảo đảm mật khẩu cơ sở dữ liệu không bị lưu dưới dạng văn bản thuần bên trong tệp, module này đọc, ghi và xoá thông tin đăng nhập trong Windows Credential Manager một cách an toàn, bằng các API chính thức của Windows (CredReadW, CredWriteW, CredDeleteW, CredFree).

3. Truy vấn Registry: tự dò ra các driver ODBC đã cài bằng cách đọc khoá SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers thông qua nhà cung cấp WMI StdRegProv.

4. Tự vẽ và điều khiển giao diện: dùng một số hàm API User32 (FindWindow, SetWindowLong, SetWindowPos, GetClientRect, SetTimer, KillTimer, PostMessageW) để điều khiển UserForm, gỡ viền cửa sổ, quản lý tiêu điểm bàn phím/chuột, và tạo các điều khiển tự dựng từ Label.

5. Hỗ trợ đa ngôn ngữ: dùng một hàm giải mã riêng (VN) trong modIIX_Txt để chuyển các dãy thoát Unicode thành chuỗi tiếng Việt, tiếng Anh và tiếng Nhật ngay lúc chạy. Đây là cách làm phổ biến và vô hại, nhằm tránh hỏng bảng mã khi xuất hoặc nhập mã macro giữa các máy có thiết lập ngôn ngữ khác nhau.

Không có dấu hiệu nào của ý đồ hay hành vi độc hại
chẳng hạn sửa registry trái phép, thu thập thông tin đăng nhập trái phép, chạy lệnh hệ thống, tải tệp về, hay cơ chế cắm rễ để tự khởi động. Mã nguồn tuân theo các thông lệ lập trình tiện ích thông thường.
1787107877674.png
 
Lần chỉnh sửa cuối:
Upvote 0
Mới cài thử addin có vài điểm không ưng:
* Sheet cấu hình ghi vào file nhập liệu, điều này là không nên, addin không nên tác động bất cứ gì lên sheet ngoài việc nhập liệu
* Mặc dù hiển thị bảng để cấu hình, nhưng cột ghi (1-2-3) lại phải mở sheet cấu hình để cài, hiện tại trên UF không thấy thiết lập phần này.
* Cài addin xong thì sheet đang zoom nhỏ tự nhiên to lên (cái này chưa hiểu rõ lý do nhưng chắc chắn có liên quan addin)
Mới tới đó nên thôi mình chưa nhập liệu thử, bạn kiểm lại xem có đúng không
 
Upvote 0
Mới cài thử addin có vài điểm không ưng:
* Sheet cấu hình ghi vào file nhập liệu, điều này là không nên, addin không nên tác động bất cứ gì lên sheet ngoài việc nhập liệu
* Mặc dù hiển thị bảng để cấu hình, nhưng cột ghi (1-2-3) lại phải mở sheet cấu hình để cài, hiện tại trên UF không thấy thiết lập phần này.
* Cài addin xong thì sheet đang zoom nhỏ tự nhiên to lên (cái này chưa hiểu rõ lý do nhưng chắc chắn có liên quan addin)
Mới tới đó nên thôi mình chưa nhập liệu thử, bạn kiểm lại xem có đúng không
Đã thêm thì có vài ý tưởng cho bạn thêm chọn nhiều dòng để nhập, nhập có hình ảnh....
Dạ, mấy góp ý của hai bác em cơ bản đã hiểu và cũng có hướng xử lý rồi.

Mấy hôm nay công việc hơi dí nên em chưa muốn cập nhật bản mới vội. Em đang tranh thủ thử thêm vụ chọn/nhập nhiều dòng cho nó ra ngô ra khoai đã — hiện lại đang mắc ngay cái… thanh cuộn . Làm một dòng thì ngoan, nhiều dòng lên là bắt đầu sinh chuyện.
Cũng thú thật là tới đoạn này em lại nhớ lời bác @ongke0711: coi chừng Đẽo cày giữa đường
1787208019183.png
 
Lần chỉnh sửa cuối:
Upvote 0
@Tuanba1992 — ý chọn nhiều dòng của bác, giờ chọn kiểu gì cũng được:
  • Ctrl + tích từng dòng
  • Insert tích dòng đang đứng, tự nhảy xuống dòng kế
  • Shift + ↑↓ hoặc Shift + Click quét cả dải
  • Rê chuột bôi đen, kéo quá mép thì tự cuộn
Tích xong một Enter ghi cả loạt, một Ctrl+Z lui sạch.

@Nhattanktnn
"Add-in không nên tác động bất cứ gì lên sheet ngoài việc nhập liệu."
Nhận toa ạ. Quy tắc nhập nay cất trong hồ sơ Windows, không nằm trong file Excel nữa. Mở file, bấm loạn, đóng ra — không sinh sheet ẩn, không còn bị hỏi "Lưu thay đổi?" khi chẳng sửa gì. Muốn gửi file cho đồng nghiệp mở lên chạy ngay thì tích ô «Nhúng cấu hình vào tệp này» — tự bác chọn. File cũ lỡ có sheet ẩn: Thiết lập → Công cụ → «Dọn sheet kỹ thuật».

"Cột ghi lại phải mở sheet cấu hình để cài, trên hộp thoại không thấy."
Đúng là nó trốn thật. Nút cũ ghi "Tùy chọn nâng cao" — hộp kín không nói bên trong có gì. Nay ghi thẳng: «Cột ghi · Cột tìm · Lọc ▾».

Tiện thể em gắn luôn cái bánh răng ⚙ ở góc phải bảng tìm kiếm: đang gõ dở thấy cần sửa gì thì bấm một cái là mở thẳng Thiết lập, nhảy đúng vào quy tắc của ô đang đứng — khỏi đóng bảng, khỏi dò menu, khỏi nhớ ô này ăn theo quy tắc nào.

"Cài addin xong thì sheet đang zoom nhỏ tự nhiên to lên."
Cái này em soi mà chưa bắt được bệnh, thứ có thật là màn hình nhấp nháy lúc cài, cái đó đã tắt. Bác gặp lại thì kêu em kèm cách tái hiện, em mổ tiếp.

Vụ nhập kèm hình ảnh thì em xin khất bản sau — em vẫn nhớ lời bác @ongke0711 về cái vụ "đẽo cày giữa đường" ạ.

Bác nào đang cài bản .xlam đời trước thì gỡ trước khi cài 1.9 (File → Options → Add-ins → Go... → bỏ tích bản cũ).

Các bác rảnh lại khám giúp em nhé.
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Giải pháp
@Tuanba1992 — ý chọn nhiều dòng của bác, giờ chọn kiểu gì cũng được:
  • Ctrl + tích từng dòng
  • Insert tích dòng đang đứng, tự nhảy xuống dòng kế
  • Shift + ↑↓ hoặc Shift + Click quét cả dải
  • Rê chuột bôi đen, kéo quá mép thì tự cuộn
Tích xong một Enter ghi cả loạt, một Ctrl+Z lui sạch.

@Nhattanktnn
"Add-in không nên tác động bất cứ gì lên sheet ngoài việc nhập liệu."
Nhận toa ạ. Quy tắc nhập nay cất trong hồ sơ Windows, không nằm trong file Excel nữa. Mở file, bấm loạn, đóng ra — không sinh sheet ẩn, không còn bị hỏi "Lưu thay đổi?" khi chẳng sửa gì. Muốn gửi file cho đồng nghiệp mở lên chạy ngay thì tích ô «Nhúng cấu hình vào tệp này» — tự bác chọn. File cũ lỡ có sheet ẩn: Thiết lập → Công cụ → «Dọn sheet kỹ thuật».

"Cột ghi lại phải mở sheet cấu hình để cài, trên hộp thoại không thấy."
Đúng là nó trốn thật. Nút cũ ghi "Tùy chọn nâng cao" — hộp kín không nói bên trong có gì. Nay ghi thẳng: «Cột ghi · Cột tìm · Lọc ▾».

Tiện thể em gắn luôn cái bánh răng ⚙ ở góc phải bảng tìm kiếm: đang gõ dở thấy cần sửa gì thì bấm một cái là mở thẳng Thiết lập, nhảy đúng vào quy tắc của ô đang đứng — khỏi đóng bảng, khỏi dò menu, khỏi nhớ ô này ăn theo quy tắc nào.

"Cài addin xong thì sheet đang zoom nhỏ tự nhiên to lên."
Cái này em soi mà chưa bắt được bệnh, thứ có thật là màn hình nhấp nháy lúc cài, cái đó đã tắt. Bác gặp lại thì kêu em kèm cách tái hiện, em mổ tiếp.

Vụ nhập kèm hình ảnh thì em xin khất bản sau — em vẫn nhớ lời bác @ongke0711 về cái vụ "đẽo cày giữa đường" ạ.

Bác nào đang cài bản .xlam đời trước thì gỡ trước khi cài 1.9 (File → Options → Add-ins → Go... → bỏ tích bản cũ).

Các bác rảnh lại khám giúp em nhé.
Cảm ơn tác giả với món quà tuyệt vời. Trên phương diện trải nghiệm người dùng sử dụng tùy vào mục đích khác nhau xin góp ý các vấn đề như sau:
1/ Cần lầm một phím tắt để hiển thị nhanh cửa sổ Thiết lập
2/ Sẽ có 3 vùng trên cửa sổ thiết lập: Đỏ, Dương, Lá. Có thể thiết lập kiểu Group row trong excel, để người dùng có thể ấn để hide lại (ấn thêm cái để xổ ra) không chiếm diện tích cho phần màu Lá (Thử ngay)
3/ Chỗ mục Gõ thử nếu được thiết lập Double-click để xóa nội dung trong đó.





1787276387138.png
 
Upvote 0
Cảm ơn tác giả với món quà tuyệt vời. Trên phương diện trải nghiệm người dùng sử dụng tùy vào mục đích khác nhau xin góp ý các vấn đề như sau:
1/ Cần lầm một phím tắt để hiển thị nhanh cửa sổ Thiết lập
2/ Sẽ có 3 vùng trên cửa sổ thiết lập: Đỏ, Dương, Lá. Có thể thiết lập kiểu Group row trong excel, để người dùng có thể ấn để hide lại (ấn thêm cái để xổ ra) không chiếm diện tích cho phần màu Lá (Thử ngay)
3/ Chỗ mục Gõ thử nếu được thiết lập Double-click để xóa nội dung trong đó.





View attachment 312427

Cảm ơn bác @hamhochoi66 . Ba ý của bác em đã xử lý, và trả luôn cái nợ hình ảnh.
Bản 1.10:
  • Ảnh: trong Thiết lập điền ô "Cột ảnh" = số cột chứa đường dẫn ảnh trong danh mục. Chọn dòng nào, ảnh dòng đó hiện bên phải. Dùng JPG, BMP, GIF — PNG thì VBA không mở được.
  • Alt + mũi tên lên mở Thiết lập (ý 1).
  • Đầu mỗi khối trong Thiết lập có ô vuông −/+ để gập, giống nhóm dòng Excel. Gập khối trên thì khung Thử ngay xem được 12 dòng thay vì 4 (ý 2).
  • Ô Gõ thử có nút để xoá (ý 3).
  • Nháy đúp một dòng trong Danh sách quy tắc là xoá dòng đó, có hỏi lại.
  • Sửa lỗi cũ từ bản 1.6: gõ "nguyen" thì cột Tên khách hàng bị trắng.
Nhớ giải nén IIX_AnhDemo.zip cạnh file .xlsm thì mới thấy ảnh.
Bác nào đang dùng bản cũ nhớ gỡ trước khi cài.
Hi vọng có ích cho bác nào cần ạ.
-------------------
Và nếu có thể, em xin phép nhờ BQT GPE ngó qua gộp/chuyển giúp file bản mới lên bài #1 — để bác nào ghé sau khỏi lỡ tay tải nhầm bản cũ ạ.
Em cảm ơn nhiều!


1787607730222.png

1787607783544.png
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0

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

Back
Top Bottom