Tạo SheetForm để làm phiếu nhập lỗi hằng ngày (1 người xem)

Liên hệ QC

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

tamngominh

Thành viên mới
Tham gia
20/7/18
Bài viết
16
Được thích
4
Chào các BAC,
Hằng ngày em phải nhập lỗi theo Type và checking date có sẵn,
Các bác giúp em tạo form nhập lỗi theo Type và Checking date với
Số lượng Cột lỗi khá là nhiều trên 60 cột
Chân thành cảm ơn các bác nhé
 

File đính kèm

Bạn đang có 9 nhóm lỗi;
Trong đó nhóm lỗi cuối có nhiều dòng nhất (~20 dòng)
Mình đầ xuất nhập tuần tự theo nhóm lỗi; Như vậy bạn cần 1 ComboBox để chọn nhóm lỗi cần nhập
Sau khi chọn 1 từ 9 nhóm lỗi từ ComboBox này; sẽ hiện ra các lỗi trong nhóm lỗi đó
Các này cần ~20 TextBox & 20 nhãn ứng với từng TextBox đó của bạn.
Các nhãn (Label) của TextBox sẽ thay đổi nội dung khi ta thay đổi nhóm lỗi trong ComboBox
Sau khi bạn xong nội dung 1 nhóm lỗi ta bấm vô nút lệnh lưu để chỉ nhập nội dung cho nhóm lỗi đó trong dòng đang nhập liệu
& cứ như vậy cho đến hết 9 nhóm lỗi.
Như vậy là ngoài các Control như đã nêu, ta cần thêm 1 nút lệnh để lưu (từng số liệu cho 1 nhóm lỗi lần lượt)
& cuối cùng là 6 hay 7 TextBox để nhập fần chung cho 9 nhóm lỗi của dòng nhập liệu;

Đọc đến đây bạn sẽ thấy rằng, ta cần xác định dòng đang nhập liệu là chuyện hiễn nhiên trong mỗi lần bấm vô nút lệnh lưu (theo từng nhóm)
Nếu không có cái định vị dòng này, ta sẽ lưu theo kiểu râu ông nọ cắm cằm bà hàng xóm kia!

Nếu không chấp nhận kiểu nhập theo nhóm này, bạn sẽ fải hình thành ~100 Controls trên 1 Form để nhập 1 lần cho 1 dòng dữ liệu.
Quay lại cách mình đề xuất:
Để không lưu nhằm dòng dữ liệu sau mỗi lần nhập theo nhóm ta cần 1 cột (trường) thẻ hiện cái duy nhất của dòng dữ liệu đó.
Mình xin tạm gọi trường (cột) này là [Index], trường này ta fải căn cứ vô cột [Ngày], nhưng cần thêm 1 hai 2 căn cứ nữa để nó trở thành đúng vài trò nhận diện duy nhất của nó; 1 hay 2 căn cứ này bạn cần cho biết ta nên dựa vô đâu.

Chờ quyết định từ bạn.
(1) Có nhập theo nhóm (lỗi) hay không?
(2) Nếu theo (1) thì cho biết í bạn để tạo ra chỉ mục duy nhất của 1 dòng dữ liệu.

Rất vui nếu được trao đổi tiếp cùng bạn!
 
Upvote 0
Bạn đang có 9 nhóm lỗi;
Trong đó nhóm lỗi cuối có nhiều dòng nhất (~20 dòng)
.................................................................................................................
Chờ quyết định từ bạn.
(1) Có nhập theo nhóm (lỗi) hay không?
(2) Nếu theo (1) thì cho biết í bạn để tạo ra chỉ mục duy nhất của 1 dòng dữ liệu.
Rất vui nếu được trao đổi tiếp cùng bạn!
Theo em thì đề xuất như thế này:
1/ Làm sheetForm cho đỡ tốn công, tốn sức. Chỉ Copy cái tiêu đề qua rồi Transpose xong bố trí lại cho gọn.
2/ Nếu làm UserForm thì sử dụng MultiPage, mỗi nhóm lỗi là 1 Page và sử dụng 1 nút nhập liệu cho 9 nhóm lỗi.
 
Upvote 0
Rất hay bạn Be09 à nha!
Coi như tiến hành chọn fương án (2) đi!

Nhưng còn chuyện trường (cột) có tên là 'Type' đến hơn 600 dòng dữ liệu, làm sao đây ta?
Kéo chuột từ dòng đầu đến cuối chứa dữ liệu cũng fê & tê, nhỉ?
 
Upvote 0
Rất hay bạn Be09 à nha!
Coi như tiến hành chọn fương án (2) đi!

Nhưng còn chuyện trường (cột) có tên là 'Type' đến hơn 600 dòng dữ liệu, làm sao đây ta?
Kéo chuột từ dòng đầu đến cuối chứa dữ liệu cũng fê & tê, nhỉ?
Dear các bác,
Em cảm ơn,
Về trường (cột) có tên là 'Type", mỗi ngày em chỉ có khoảng 50 dòng
Mong dược chi dẫn thêm
 
Upvote 0
Vấn đề là ở chỗ nhập 50 "Type" mỗi ngày nhưng lấy từ rỗ danh sách gồm 647 Type là không dễ với người nhập liệu.
Hướng dẫn tiếp:
Bạn biết tạo ra Form thô không? Nếu biết thì tạo 1 Form
Vẻ lên đó 5 TextBox & 1 ComboBox (dành cho 'Type' & 5 trang MutiPages; Trong đó 4 trang ta ghép 2 nhóm làm 1 & nhóm cuối, nhiều nhất ta để dành hẵn cho nó 1 Mutipage
Trong mỗi MutiPage ta vẻ số TextBox tương ứng cho nó

Sau khi xong bạn đưa lên diển đàn để ai đó chỉnh sửa lại cho bạn.
 
Upvote 0
Rất hay bạn Be09 à nha!
Coi như tiến hành chọn fương án (2) đi!
Em chỉ làm giúp như nội dung của Tiêu đề là SheetForm, còn UserForm thì tốn công quá nên đành gác lại.
..................................
Chào các BAC,
Hằng ngày em phải nhập lỗi theo Type và checking date có sẵn,
Các bác giúp em tạo form nhập lỗi theo Type và Checking date với
Số lượng Cột lỗi khá là nhiều trên 60 cột
Chân thành cảm ơn các bác nhé
Tôi chỉ làm giùm cho cái SheetForm, còn UserForm thì tốn công quá nên đành gác lại.
Lưu ý:
Do không có dữ liệu để thử nên ở sheet Nhap_Lieu tôi gán bằng số thứ tự từ 1 đến 93, bạn nhập nội dung tương ứng vào những chỗ những con số rồi nhấn nút nhập liệu (tại H1) và xem thử kết quả.

Góp ý:
Không nên tô viềng và định dạng cho cả bảng tính như vậy, sẽ làm tăng dung lượng File vô ích mà còn làm cho File bị ì ạch (tôi đã xử lý bỏ viềng và tất cả định dạng).
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Em chỉ làm giúp như nội dung của Tiêu đề là SheetForm, còn UserForm thì tốn công quá nên đành gác lại.
..................................

Tôi chỉ làm giùm cho cái SheetForm, còn UserForm thì tốn công quá nên đành gác lại.
Lưu ý:
Do không có dữ liệu để thử nên ở sheet Nhap_Lieu tôi gán bằng số thứ tự từ 1 đến 93, bạn nhập nội dung tương ứng vào những chỗ những con số rồi nhấn nút nhập liệu (tại H1) và xem thử kết quả.

Góp ý:
Không nên tô viềng và định dạng cho cả bảng tính như vậy, sẽ làm tăng dung lượng File vô ích mà còn làm cho File bị ì ạch (tôi đã xử lý bỏ viềng và tất cả định dạng).
Cảm ơn Bác "be09" nhiều,
Em mỗi ngày nhập thêm vào dữ liệu đã có những ngày trước, và ngày mới em nhập đã có sẵn thông tin
No.,TYPE,DATE,NEW,CHECKING ,DATE,QTY trước rùi. Em chỉ nhập lỗi (1,2 .. thui) và ghi chú thêm vào cột Note
Nhờ giúp đỡ
Em cám ơn!
 
Upvote 0
Vấn đề là ở chỗ nhập 50 "Type" mỗi ngày nhưng lấy từ rỗ danh sách gồm 647 Type là không dễ với người nhập liệu.
Hướng dẫn tiếp:
Bạn biết tạo ra Form thô không? Nếu biết thì tạo 1 Form
Vẻ lên đó 5 TextBox & 1 ComboBox (dành cho 'Type' & 5 trang MutiPages; Trong đó 4 trang ta ghép 2 nhóm làm 1 & nhóm cuối, nhiều nhất ta để dành hẵn cho nó 1 Mutipage
Trong mỗi MutiPage ta vẻ số TextBox tương ứng cho nó

Sau khi xong bạn đưa lên diển đàn để ai đó chỉnh sửa lại cho bạn.

Dear các Bác,
Em đã cập nhật như Bác " SA_DQ" hướng dẫn,
Nhờ các Bác giúp chỉnh sửa lại, và hướng dẫn thêm
Em cảm ơn!
 

File đính kèm

Upvote 0
(1) Em mỗi ngày nhập thêm vào dữ liệu đã có những ngày trước, và (2) ngày mới em nhập đã có sẵn thông tin
No.,TYPE,DATE,NEW,CHECKING ,DATE,QTY trước rùi. Em chỉ nhập lỗi (1,2 .. thui) và ghi chú thêm vào cột Note
(1) Đúng như mình đã dự đoán; Hàng ngày bạn sẽ fải nhập thêm dữ liệu vô 1 dòng nào đó; Để vậy bạn cần tìm hay định ra mã duy nhất của dòng đó
Mã này theo mình sẽ gắn với ngày tháng năm của dòng & 'Type' của dòng đó.
Mà danh sách 'Type' của bạn đến hơn năm sáu trăm thì mệt đây!

Cho nên ta f ải thảo luận thông suốt chuyện này mới tính đến chuyện làm thứ gì khác trên trang tính dữ liệu của bạn
Hình như trang danh sách các 'Type' của bạn ta có thể chia ra theo các nhóm; Có nghĩa là ta tìm cách chia để trị chuyện này mới xong!

(2) Khi muốn nhập mà mình gọi là fần chung này ta nhất thiết fải tạo mã duy nhất của dòng; Nếu không làm vậy sẽ có chuyện thông số của ngày này sẽ nhập cho ngày khác & CSDL của bạn nhanh chóng thành đống rác thúi mà thôi!

Nếu bạn không quan tâm đến chuyện này thì ta nên tạm biệt nhau tại đây thì hơn!

Chúc ngày cuối tuần vui vẻ!
 
Upvote 0
Dear các Bác,
Em đã cập nhật như Bác " SA_DQ" hướng dẫn,
Nhờ các Bác giúp chỉnh sửa lại, và hướng dẫn thêm
Em cảm ơn!
Bài 7 tôi góp ý thế này:
Không nên tô viềng và định dạng cho cả bảng tính như vậy, sẽ làm tăng dung lượng File vô ích mà còn làm cho File bị ì ạch (tôi đã xử lý bỏ viềng và tất cả định dạng).
1/ Sao bạn không chú ý đến nội dung góp ý, bạn xem File của tôi thì sẽ rõ dung lượng chỉ có 28KB, còn File bạn chưa có dữ liệu đã lên đến 2MB rồi, khi mở File bạn không thấy nó rất chậm à. Qua thời gian sử dụng thì bạn sẽ thấy khổ tâm vì nó, mỗi lần lưu chờ uống xong ly Coffee rồi nhập tiếp.
2/ Bạn chờ Bác " SA_DQ" hay thành viên khác trợ giúp cái UserForm, tôi bận quá nên chưa thể giúp được.
 
Lần chỉnh sửa cuối:
Upvote 0
Mình vừa xem file có Form của bạn; Ta nên gán tên các TextBox hay nhãn 1 cách khoa học hơn để dễ bề trong khi viết Code sau này;

Mình đưa file này lân bạn tham khảo & thống nhất nhau cách làm.

[Xin xem file tại bài #19)
 
Lần chỉnh sửa cuối:
Upvote 0
Bài 7 tôi góp ý thế này:

1/ Sao bạn không chú ý đến nội dung góp ý, bạn xem File của tôi thì sẽ rõ tôi dung lượng chỉ có 28KB, còn File bạn chưa có dữ liệu đã lên đến 2MB rồi, khi mở File bạn không thấy nó rất chậm à. Qua thời gian sử dụng thì bạn sẽ thấy khổ tâm vì nó, mỗi lần lưu chờ uống xong ly Coffee rồi nhập tiếp.
2/ Bạn chờ Bác " SA_DQ" hay thành viên khác trợ giúp cái UserForm, tôi bận quá nên chưa thể giúp được.
Em xin lỗi vì không để ý tới lời góp ý,
Em cảm ơn!
 
Upvote 0
Em xin lỗi vì không để ý tới lời góp ý,
Em cảm ơn!
Dear Bác "SA_DQ",
Em gửi file đã cập nhật thêm,
Phần dữ liệu của em có cột "Type" khác nhau, nhưng đôi lúc cũng giống nhau
Thường em nhập tay, sử dụng Ctr F rùi tìm theo cột "Checking date", vì cột này sẽ khác nhau
Mong được chỉ dẫn thêm!
 

File đính kèm

Upvote 0
Vậy là coi như Form đã có các TextBox cần thiết
1./ Còn chưa có là các nút lệnh để vận hành; Nhưng chúng ta đến đây cần quan tâm đến chuyện xác lập mã duy nhất của từng dòng dữ liệu.
Theo như mình hiểu thì mã duy nhất sẽ có dạng: YMD_Type
Y là chữ cái biểu thị cho năm, như 2018 là H, năm tới là I
M kí số hay kí tự biểu thị cho tháng; Như tháng 9 sẽ là '9' & tháng 10 là 'A'
D kí tự số hay chữ biểu thị ngày, như ngày 9 là '9'; ngày 17 sẽ là 'Q' & ngày 19 sẽ là 'S', . . .
[Bạn chớ lo rằng sẽ fức tạp vì có hàm tự tạo hỗ trợ cho việc qui đổi này.]
2./ Vấn đề còn lại là gắn các 'Type' vôĐể thực hiện dễ việc này, mình xin đề xuất các 'type' chia thành các nhóm như sau:
Nhóm:
AV
IV
NV-D
NV-Y
NC-Z
V
Trong mỗi nhóm ta có các 'fân loại' khác nhau như
AV06GH-P
AV06JA-P
AV18AFA-P
AVP-6051
AVP-6059
AVP-6100
AVP-6286
AVP-6604
AVP-6609
AVP-6610
AVP-6617
AVP-7040
AVP-8014HF
AVP-8032
AVP-8235
AVP-8282
AVP-9008
AVP-9041
AVP-9086
Như vậy ta xài 2 ComboBox fụ thuộc nhau để xác lập 1 'Type'
Sáng mai mình sẽ đưa file lên, (tại bài đăng này luôn) bạn vận hành thử 2 cái ComboBox này & cho í kiến
3./ Ở cột (trường 'Date' bạn đang nhập 6 kí số gồm 2 kí số đầu chỉ năm, 2 kế tiếp chỉ tháng & 2 cuối chỉ ngày.
Điều này cũng được, nhưng bạn sẽ khó xài trường này khi fải thống kê hay báo cáo theo thời gian (tuần, tháng, quí, nữa năm,. . . )
Nếu nói rằng bạn không cần thiết những thống kê như vậy sau này, thì ta cứ tiếp tục như bạn đã làm; Bằng ngược lại thì nên nhập theo kiếu 'MM/dd/yyyy' cho nó lành về sau.
Vì điều này sẽ quyết định đến chuyện tạo mã duy nhất cho từng dòng dữ liệu, nên ta cần thống nhất ngay bây giờ.

Thân!
 
Upvote 0
Vậy là coi như Form đã có các TextBox cần thiết
1./ Còn chưa có là các nút lệnh để vận hành; Nhưng chúng ta đến đây cần quan tâm đến chuyện xác lập mã duy nhất của từng dòng dữ liệu.
Theo như mình hiểu thì mã duy nhất sẽ có dạng: YMD_Type
Y là chữ cái biểu thị cho năm, như 2018 là H, năm tới là I
M kí số hay kí tự biểu thị cho tháng; Như tháng 9 sẽ là '9' & tháng 10 là 'A'
D kí tự số hay chữ biểu thị ngày, như ngày 9 là '9'; ngày 17 sẽ là 'Q' & ngày 19 sẽ là 'S', . . .
[Bạn chớ lo rằng sẽ fức tạp vì có hàm tự tạo hỗ trợ cho việc qui đổi này.]
2./ Vấn đề còn lại là gắn các 'Type' vôĐể thực hiện dễ việc này, mình xin đề xuất các 'type' chia thành các nhóm như sau:
Nhóm:
AV
IV
NV-D
NV-Y
NC-Z
V
Trong mỗi nhóm ta có các 'fân loại' khác nhau như
AV06GH-P
AV06JA-P
AV18AFA-P
AVP-6051
AVP-6059
AVP-6100
AVP-6286
AVP-6604
AVP-6609
AVP-6610
AVP-6617
AVP-7040
AVP-8014HF
AVP-8032
AVP-8235
AVP-8282
AVP-9008
AVP-9041
AVP-9086
Như vậy ta xài 2 ComboBox fụ thuộc nhau để xác lập 1 'Type'
Sáng mai mình sẽ đưa file lên, (tại bài đăng này luôn) bạn vận hành thử 2 cái ComboBox này & cho í kiến
3./ Ở cột (trường 'Date' bạn đang nhập 6 kí số gồm 2 kí số đầu chỉ năm, 2 kế tiếp chỉ tháng & 2 cuối chỉ ngày.
Điều này cũng được, nhưng bạn sẽ khó xài trường này khi fải thống kê hay báo cáo theo thời gian (tuần, tháng, quí, nữa năm,. . . )
Nếu nói rằng bạn không cần thiết những thống kê như vậy sau này, thì ta cứ tiếp tục như bạn đã làm; Bằng ngược lại thì nên nhập theo kiếu 'MM/dd/yyyy' cho nó lành về sau.
Vì điều này sẽ quyết định đến chuyện tạo mã duy nhất cho từng dòng dữ liệu, nên ta cần thống nhất ngay bây giờ.

Thân!
Dear Bac,
Về vấn đề để xác lập 1 'Type', có ngày em có 2 Type giống nhau ( mỗi Type khác nhau chỉ ở Checking date), em thí dụ
ngày 180722 có 2 type là: AVP-9086 ( checking date là :C5) và AVP-9086 ( checking date là :C3)
Như vậy có khó để nhận dạng 1 type không Bác,
Còn vấn đề ngày tháng do công ty em quy định thế rùi, chắc không đổi được
Nhờ hướng dẫn thêm

Em cảm ơn!
 
Upvote 0
(1) Nói như bạn như vậy thì fải đưa dữ liệu cột 'Checking date' vô mã duy nhất rồi.
& tốt nhất sẽ fải là YMDCType; Ở đây Y là kí tự chỉ ra năm; M chỉ tháng & D chỉ ngày; C là 'checking date' & cuối là các từ để chỉ ra 'Type' của dữ liệu đó.

(2) Bài bên trên nào đó bạn có nói là thường nhập trước dữ liệu của 7 cột đầu sẵn vô CSDL;
Khi nào có số liệu 'lỗi' trong tay, bạn mới tìm & nhập những lỗi từ bảng kết quả nhận được vô cột lỗi tương ứng của dòng dữ liệu đó..
Như vậy nên CSDL của bạn sẽ có rất nhiều dòng trống (không có dữ liệu từ cột thứ 8 trở về sau)
Vô hình chung bạn làm vậy là tạo sự nặng nề cho file. Chuyện này là không cần thiết; Bạn có thể bỏ khâu nhập khống này không?
Có nghĩa là khi & chỉ khi có danh sách lỗi của 1 ngày nào đó, với 1 'type' & 1 'checking date' cụ thể ta mới tiến hành nhập dòng dữ liệu đó vô.

Rất vui được tiếp tục trao đổi cùng bạn.
 
Upvote 0
Vậy là coi như Form đã có các TextBox cần thiết
...............................
2./ Vấn đề còn lại là gắn các 'Type' vôĐể thực hiện dễ việc này, mình xin đề xuất các 'type' chia thành các nhóm như sau:
..........................
Như vậy ta xài 2 ComboBox fụ thuộc nhau để xác lập 1 'Type'
..............................
Thân!
Em nhất trí dùng ComboBox Phụ thuộc.
1/ Em thiết kế lại theo hướng này để cho dễ sử dụng ComboBox Phụ thuộc nhau nhập liệu búa sua theo chiều dọc.
2/ Muốn làm theo biểu quy định thì dùng PivotTable xoay nó lại.
Có như vậy thì việc nhập liệu sẽ nhanh chóng, đỡ mất thời gian và việc tổng hợp lỗi theo nhóm là quá dễ dàng.
 

File đính kèm

Upvote 0
Theo hướng nhập liệu từ Form thì file đã đến bước này: Tìm xem mã duy nhất nào đó đã có chưa?

(Xin fép được tháo file bài trên, thu hồi tài nguyên)
 

File đính kèm

Upvote 0
Theo hướng nhập liệu từ Form thì file đã đến bước này: Tìm xem mã duy nhất nào đó đã có chưa?

(Xin fép được tháo file bài trên, thu hồi tài nguyên)
Chào các Bác,
Về vấn đề dòng trống, do dữ liệu em lấy từ bộ phận khác,
Nếu bỏ ra khi nhập liệu có rất nhiều mã không có lỗi, mình nhập vậy em nghi lâu hơn
Phần "mã duy nhất" và "New" em chưa hiểu có ý nghĩa thế nào
Chân thành cảm ơn
Mong được giúp đỡ thêm
Thân
Bài đã được tự động gộp:

Em nhất trí dùng ComboBox Phụ thuộc.
1/ Em thiết kế lại theo hướng này để cho dễ sử dụng ComboBox Phụ thuộc nhau nhập liệu búa sua theo chiều dọc.
2/ Muốn làm theo biểu quy định thì dùng PivotTable xoay nó lại.
Có như vậy thì việc nhập liệu sẽ nhanh chóng, đỡ mất thời gian và việc tổng hợp lỗi theo nhóm là quá dễ dàng.
Em cảm ơn Bác,
Nhưng file này em vẫn chưa hiểu lắm,
Về chỗ nhập lỗi, và cách thức nhập như thế nào
Nhờ hướng dẫn thêm
Thân
 
Lần chỉnh sửa cuối:
Upvote 0
(2) Về vấn đề dòng trống, do dữ liệu em lấy từ bộ phận khác,
Nếu bỏ ra khi nhập liệu có rất nhiều mã không có lỗi, mình nhập vậy em nghi lâu hơn
(1) Phần "mã duy nhất" và "New" em chưa hiểu có ý nghĩa thế nào
(1.0) Trước nhất, 'New' là 1 cột (trường) dữ liệu (hiện đang trống trơn) của bạn; Nếu bạn không biết nó như thế nào thì xin hỏi đến ông trời dùm nha!
(1.1) Nếu không có mã duy nhất của dòng thì làm sao bạn tìm ra dòng đó trong ~ 50 dòng (như bạn nói) là số lượng dòng nhập trong 1 ngày của bạn. Chả lẽ dùng chuột tr6n thanh cuộn đứng để tìm?
Mà bạn thao tác tìm thử 1 dòng dữ liệu nào đó hay chưa?
Mình mường tượng công việc của bạn hằng ngày như sau:

(*) Ngày ngày, bạn nhập khống 7 cột dữ liệu đầu của dòng ([STT], [Type]. . . . ,[QTy]) ([QTy] này bạn có nhập ngay số liệu hay sau mấy ngày mới có?)
(*) Những ngày sau đó các bộ fận thống kê gởi cho bạn (lần lượt hay cùng lúc (? xin bạn cho biết)) các nhóm có chứa lỗi;
(*) Bạn tiến hành nhập theo từng nhóm lỗi; Nhóm nào có lỗi thì nhập.

Tóm lại bạn mô tả dùm qui trình sản xuất & thống kê nơi bạn dùm 1 cái; Điều này quyết định đến việc nhập liệu chính xác & quan trọng là dữ liệu nhập trước bọi chép đè bỡi những con số không tròn trịa.

(2) Nếu do lấy dữ liệu từ bộ fận khác về thì ta có thể xóa những dòng hoàn toàn trống dữ liệu (sau cột [QTy]) sau vài ngày đi, được không?
Tất nhiên sẽ tiến hành xóa bỡi macro, bạn chớ lăng tăng về thời gian để làm việc này. Mà bạn có thể chưa kịp nhâm nhi li cà fê trong khi macro thực hiện nữa kia
 
Upvote 0
Chào các Bác,
Về vấn đề dòng trống, do dữ liệu em lấy từ bộ phận khác,
Nếu bỏ ra khi nhập liệu có rất nhiều mã không có lỗi, mình nhập vậy em nghi lâu hơn
Phần "mã duy nhất" và "New" em chưa hiểu có ý nghĩa thế nào
Chân thành cảm ơn
Mong được giúp đỡ thêm
Thân
Bài đã được tự động gộp:


Em cảm ơn Bác,
Nhưng file này em vẫn chưa hiểu lắm,
Về chỗ nhập lỗi, và cách thức nhập như thế nào
Nhờ hướng dẫn thêm
Thân
(1.0) Trước nhất, 'New' là 1 cột (trường) dữ liệu (hiện đang trống trơn) của bạn; Nếu bạn không biết nó như thế nào thì xin hỏi đến ông trời dùm nha!
(1.1) Nếu không có mã duy nhất của dòng thì làm sao bạn tìm ra dòng đó trong ~ 50 dòng (như bạn nói) là số lượng dòng nhập trong 1 ngày của bạn. Chả lẽ dùng chuột tr6n thanh cuộn đứng để tìm?
Mà bạn thao tác tìm thử 1 dòng dữ liệu nào đó hay chưa?
Mình mường tượng công việc của bạn hằng ngày như sau:

(*) Ngày ngày, bạn nhập khống 7 cột dữ liệu đầu của dòng ([STT], [Type]. . . . ,[QTy]) ([QTy] này bạn có nhập ngay số liệu hay sau mấy ngày mới có?)
(*) Những ngày sau đó các bộ fận thống kê gởi cho bạn (lần lượt hay cùng lúc (? xin bạn cho biết)) các nhóm có chứa lỗi;
(*) Bạn tiến hành nhập theo từng nhóm lỗi; Nhóm nào có lỗi thì nhập.

Tóm lại bạn mô tả dùm qui trình sản xuất & thống kê nơi bạn dùm 1 cái; Điều này quyết định đến việc nhập liệu chính xác & quan trọng là dữ liệu nhập trước bọi chép đè bỡi những con số không tròn trịa.

(2) Nếu do lấy dữ liệu từ bộ fận khác về thì ta có thể xóa những dòng hoàn toàn trống dữ liệu (sau cột [QTy]) sau vài ngày đi, được không?
Tất nhiên sẽ tiến hành xóa bỡi macro, bạn chớ lăng tăng về thời gian để làm việc này. Mà bạn có thể chưa kịp nhâm nhi li cà fê trong khi macro thực hiện nữa kia
Dear Bac "SA_DQ",
(1.1) Em đã thao tác theo file Bác gửi nhưng tìm chưa được, nhờ Bác hướng dẫn thêm cách thực hiện
(*) Về 7 cột dữ liệu đầu dòng ([STT],[Type],..) và cột [Qty] có sẵn từ trước, em copy từ file excel của bộ phận kế hoạch sản xuất
(*) 2 ngày sau các bộ phận thống kê gửi cùng các nhóm lỗi (ở trên file giấy, có sẵn thông tin của 8 dòng đầu và lỗi từng nhóm trên file)
(*) Em tiến hành nhập từng nhóm (nhóm nào có thì nhập vào), đồng thời gõ vào cột [Note] ghi chú lại thông tin của lỗi lạ
(2) Dữ liệu dòng trống sau [Qty] không xóa được Bác ơi, em phải chạy Macro làm báo cáo tháng nữa, qua tháng mới em xóa hết và nhập lại từ đầu

Mong được hướng dẫn thêm
Thân
 
Upvote 0
(1) Tại trang 'GPE' của file cuối mình đưa lên có vùng [A18:C26] là các số liệu trích ra từ vùng cột [C:E] của trang kia;
Dữ liệu cột [C] là mã duy nhất của dòng dữ liệu nào dó bên 'BTL
Lấy ví dụ tại {c20] ta có H3KBBNV-Y627PỞ đây 3 kí tự đầu ứng với số 180320 của dòng này cột [A]
(Thêm nữa 'H' ứng với con 18; 'K' ứng với con 20)
Các kí tự sau 'BB' là 'Type' của dòng đó còn chính nó là 'Checking Date'

Vậy muốn thử tìm dòng dữ liệu này, bạn cần thực hiện 4 động tách sau:
Tại Control 'Nhóm' ta cần chọn hàng 'NV-Y'; Tại Control ngay dưới ta chọn 'Type';
Tại Control 'Ngày' ta nhập 6 con số chỉ ngày;
& cuối cùng là nhập 'BB' vô Control 'Checking Date'

(Sau khi {ENTER} ta sẽ thấy trong Control mớ có mã duy nhất của dòng)
Bạn bấm nút lệnh 'Tìm' ta sẽ biết nó đang ở dòng bao nhiêu của CSDL

Nút lệnh hiện nay chỉ là "Tìm", sau này ta sẽ thêm tính năng khác thích hợp cho nó.

(2) Vấn đề nhập liệu bạn nêu như mình đã mường tượng từ trước;
Ở đây chúng ta cần làm 1 ComboBox để chọn nhóm cần nhập liệu;
Có nghĩa là muốn nhập nhóm lỗi nào, ta chọn trước từ ComboBox này nhóm lỗi đó; Sau khi nhập số liệu vố các Controls của nhóm đó, ta sẽ bấm nút lệnh 'Luu' & số liệu toàn bộ trong nhóm sẽ được lưu đúng dòng mà ta đã tìm ra (như ở (1) đã nêu)
Nhập hết số liệu nhóm này ta sang nhập số liệu nhóm khác.

(3) Như vậy sau 1 vài ngày ta đã xác định được 1 số dòng mãi mãi sẽ 'Trống số liệu'; Các dòng này có xóa đi cho nhẹ CSDL được không;
Nếu 'Không' thì vì sao?

Chúc bạn ngày vui & thành công!
Rất vui được giúp bạn đến hoàn thành tác fẩm này!

[Sáng nay mình sẽ đưa file khác tại bài này đã được cập nhật]
 
Upvote 0
(1) Tại trang 'GPE' của file cuối mình đưa lên có vùng [A18:C26] là các số liệu trích ra từ vùng cột [C:E] của trang kia;
Dữ liệu cột [C] là mã duy nhất của dòng dữ liệu nào dó bên 'BTL
Lấy ví dụ tại {c20] ta có H3KBBNV-Y627PỞ đây 3 kí tự đầu ứng với số 180320 của dòng này cột [A]
(Thêm nữa 'H' ứng với con 18; 'K' ứng với con 20)
Các kí tự sau 'BB' là 'Type' của dòng đó còn chính nó là 'Checking Date'

Vậy muốn thử tìm dòng dữ liệu này, bạn cần thực hiện 4 động tách sau:
Tại Control 'Nhóm' ta cần chọn hàng 'NV-Y'; Tại Control ngay dưới ta chọn 'Type';
Tại Control 'Ngày' ta nhập 6 con số chỉ ngày;
& cuối cùng là nhập 'BB' vô Control 'Checking Date'

(Sau khi {ENTER} ta sẽ thấy trong Control mớ có mã duy nhất của dòng)
Bạn bấm nút lệnh 'Tìm' ta sẽ biết nó đang ở dòng bao nhiêu của CSDL

Nút lệnh hiện nay chỉ là "Tìm", sau này ta sẽ thêm tính năng khác thích hợp cho nó.

(2) Vấn đề nhập liệu bạn nêu như mình đã mường tượng từ trước;
Ở đây chúng ta cần làm 1 ComboBox để chọn nhóm cần nhập liệu;
Có nghĩa là muốn nhập nhóm lỗi nào, ta chọn trước từ ComboBox này nhóm lỗi đó; Sau khi nhập số liệu vố các Controls của nhóm đó, ta sẽ bấm nút lệnh 'Luu' & số liệu toàn bộ trong nhóm sẽ được lưu đúng dòng mà ta đã tìm ra (như ở (1) đã nêu)
Nhập hết số liệu nhóm này ta sang nhập số liệu nhóm khác.

(3) Như vậy sau 1 vài ngày ta đã xác định được 1 số dòng mãi mãi sẽ 'Trống số liệu'; Các dòng này có xóa đi cho nhẹ CSDL được không;
Nếu 'Không' thì vì sao?

Chúc bạn ngày vui & thành công!
Rất vui được giúp bạn đến hoàn thành tác fẩm này!

[Sáng nay mình sẽ đưa file khác tại bài này đã được cập nhật]
(1) Tại trang 'GPE' của file cuối mình đưa lên có vùng [A18:C26] là các số liệu trích ra từ vùng cột [C:E] của trang kia;
Dữ liệu cột [C] là mã duy nhất của dòng dữ liệu nào dó bên 'BTL
Lấy ví dụ tại {c20] ta có H3KBBNV-Y627PỞ đây 3 kí tự đầu ứng với số 180320 của dòng này cột [A]
(Thêm nữa 'H' ứng với con 18; 'K' ứng với con 20)
Các kí tự sau 'BB' là 'Type' của dòng đó còn chính nó là 'Checking Date'

Vậy muốn thử tìm dòng dữ liệu này, bạn cần thực hiện 4 động tách sau:
Tại Control 'Nhóm' ta cần chọn hàng 'NV-Y'; Tại Control ngay dưới ta chọn 'Type';
Tại Control 'Ngày' ta nhập 6 con số chỉ ngày;
& cuối cùng là nhập 'BB' vô Control 'Checking Date'

(Sau khi {ENTER} ta sẽ thấy trong Control mớ có mã duy nhất của dòng)
Bạn bấm nút lệnh 'Tìm' ta sẽ biết nó đang ở dòng bao nhiêu của CSDL

Nút lệnh hiện nay chỉ là "Tìm", sau này ta sẽ thêm tính năng khác thích hợp cho nó.

(2) Vấn đề nhập liệu bạn nêu như mình đã mường tượng từ trước;
Ở đây chúng ta cần làm 1 ComboBox để chọn nhóm cần nhập liệu;
Có nghĩa là muốn nhập nhóm lỗi nào, ta chọn trước từ ComboBox này nhóm lỗi đó; Sau khi nhập số liệu vố các Controls của nhóm đó, ta sẽ bấm nút lệnh 'Luu' & số liệu toàn bộ trong nhóm sẽ được lưu đúng dòng mà ta đã tìm ra (như ở (1) đã nêu)
Nhập hết số liệu nhóm này ta sang nhập số liệu nhóm khác.

(3) Như vậy sau 1 vài ngày ta đã xác định được 1 số dòng mãi mãi sẽ 'Trống số liệu'; Các dòng này có xóa đi cho nhẹ CSDL được không;
Nếu 'Không' thì vì sao?

Chúc bạn ngày vui & thành công!
Rất vui được giúp bạn đến hoàn thành tác fẩm này!

[Sáng nay mình sẽ đưa file khác tại bài này đã được cập nhật]
Dear Bac "SA_DQ",
(1) Tại trang 'GPE' của file cuối mình đưa lên có vùng [A18:C26] là các số liệu trích ra từ vùng cột [C:E] của trang kia;
Dữ liệu cột [C] là mã duy nhất của dòng dữ liệu nào dó bên 'BTL
Lấy ví dụ tại {c20] ta có H3KBBNV-Y627PỞ đây 3 kí tự đầu ứng với số 180320 của dòng này cột [A]
(Thêm nữa 'H' ứng với con 18; 'K' ứng với con 20)
Các kí tự sau 'BB' là 'Type' của dòng đó còn chính nó là 'Checking Date'

Vậy muốn thử tìm dòng dữ liệu này, bạn cần thực hiện 4 động tách sau:
Tại Control 'Nhóm' ta cần chọn hàng 'NV-Y'; Tại Control ngay dưới ta chọn 'Type';
Tại Control 'Ngày' ta nhập 6 con số chỉ ngày;
& cuối cùng là nhập 'BB' vô Control 'Checking Date'

(Sau khi {ENTER} ta sẽ thấy trong Control mớ có mã duy nhất của dòng)
Bạn bấm nút lệnh 'Tìm' ta sẽ biết nó đang ở dòng bao nhiêu của CSDL

Nút lệnh hiện nay chỉ là "Tìm", sau này ta sẽ thêm tính năng khác thích hợp cho nó.

(2) Vấn đề nhập liệu bạn nêu như mình đã mường tượng từ trước;
Ở đây chúng ta cần làm 1 ComboBox để chọn nhóm cần nhập liệu;
Có nghĩa là muốn nhập nhóm lỗi nào, ta chọn trước từ ComboBox này nhóm lỗi đó; Sau khi nhập số liệu vố các Controls của nhóm đó, ta sẽ bấm nút lệnh 'Luu' & số liệu toàn bộ trong nhóm sẽ được lưu đúng dòng mà ta đã tìm ra (như ở (1) đã nêu)
Nhập hết số liệu nhóm này ta sang nhập số liệu nhóm khác.

(3) Như vậy sau 1 vài ngày ta đã xác định được 1 số dòng mãi mãi sẽ 'Trống số liệu'; Các dòng này có xóa đi cho nhẹ CSDL được không;
Nếu 'Không' thì vì sao?

Chúc bạn ngày vui & thành công!
Rất vui được giúp bạn đến hoàn thành tác fẩm này!

[Sáng nay mình sẽ đưa file khác tại bài này đã được cập nhật]
Dear Bac "SA_DQ",
(3) số dòng trống chắc không xóa được Bác ơi,
Vì sau khi nhập liệu em sẽ chạy 1 File macro khác thống kê lại lỗi để vẽ chart
Nếu xóa thì em không biết nên chỉnh lại file đó như thế nào


Cám ơn Bác nhiều
Mong nhận được giúp đỡ
Thân
 
Upvote 0
Không xóa thì sẽ không xóa; Bạn xem file này tối nay;
Mai mình sẽ tiếp tục

Dear BAC; Em chan thanh cam on Bac
File rất là hữu ích; Thân!
Mình xin tháo file bài này; Xin các bạn xem file bài kế dưới & cảm ơn!
 
Lần chỉnh sửa cuối:
Upvote 0
Đây là file cuối cùng của mình trong đề tài này;
Bạn xem & bổ sung 1 số chuyện còn dang dỡ (như thiếu 1 số TextBox & các dòng lệnh để lưu dữ liệu 1 số nhóm lỗi.)
 

File đính kèm

Upvote 0
Sau ~ 3 buổi suy nghĩ & nổ lực, mình đã giảm bớt 120 Controls (nhãn & TextBox )
Xin mời xem file
 

File đính kèm

Upvote 0

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

Back
Top Bottom