Nhờ giúp đỡ xây dựng kế hoạch bảo dưỡng thiết bị (1 người xem)

Liên hệ QC

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

nguyenmtuan

Thành viên chính thức
Tham gia
17/6/16
Bài viết
78
Được thích
4
Chào mọi người,
Mình có 1 vấn đề liên quan đến kế hoạch bảo dưỡng thiết bị bằng Excel mà đã đau đầu làm thủ công 3 năm nay rồi nhiều khi sai sót linh tinh và mất quá nhiều thời gian. Giờ mới mạo muội đăng lên đây nhờ mọi người giúp đỡ.
Chả là mình có 1 danh sách các thiết bị có yêu cầu bảo dưỡng định kỳ với các nhịp bảo dưỡng của từng thiết bị khác nhau như file gửi kèm.
Giờ mình cần ban hành kế hoạch bảo dưỡng tháng tới của thiết bị, và cập nhật ngày hoàn thành bảo dưỡng để trên cơ sở đó ra kế hoạch bảo dưỡng của tháng tới, năm tới. Cụ thể như sau:
Trong file đính kèm có 02 sheet:
Sheet “Master”:
  • Là sheet chứa danh mục các dụng cụ thiết bị có yêu cầu bảo dưỡng và hiển thị ngày tháng bảo dưỡng.
Sheet “Export”:
  • Là sheet sẽ lọc các danh mục cần bảo dưỡng trong 1 tháng với các tham số được lấy từ Sheet Master .
Mong mọi người giúp nội dung như sau:

1. Khi nhập tháng bảo dưỡng vào ô B2 sheet Export sẽ sổ ra danh mục của tháng đó mà được lấy từ tháng tương ứng của các dụng cụ cần bảo dưỡng của Sheet “Master”.
2. Cột G sheet Export là nơi để nhập ngày hoàn thành việc bảo dưỡng (ví dụ mục Maint. Duedate ghi ngày 14/06/2020 nhưng phải đến ngày 25/06 mới hoàn thành việc bảo dưỡng).
3. Sau khi nhập ngày hoàn thành bảo dưỡng tại cột G sheet Export thì thiết bị này sẽ được nhẩy ngày bảo dưỡng tiếp theo tại cột tháng tương ứng sheet Master với kiểu hiển thị: kiểu dạng bảo dưỡng – ngày bảo dưỡng (ví dụ:“6M - 10/06/2020”):
+ Ngày bảo dưỡng tiếp theo được tính trên cơ sở: lấy ngày hoàn thành bảo dưỡng tại cột G sheet Export cộng với dạng bảo dưỡng tối thiểu ở cột T sheet Master.
+ Dạng bảo dưỡng tiếp theo được tính trên cơ sở bội số của dạng bảo dưỡng tối thiểu ở cột T sheet Master (ví dụ thiết bị có các dạng bảo dưỡng 3, 12, 24, 48M thì 3 lần bảo dưỡng 3M sẽ là 1 lần bảo dưỡng 12M, 6 lần bảo dưỡng 3M sẽ là 1 lần 24M, 12 lần 3M sẽ là 48M)
4. Tại ô A1 Sheet Master sẽ là ô quản lý năm, khi điều chỉnh thành năm 2021 thì nội dung của Sheet Master sẽ thể hện kế hoạch năm 2021 mà đã tính ra tại bước 3.
5. Khi chọn tháng tại ô B2 sheet Export thì sheet này sẽ lọc ra danh sách các dụng cụ cần thực hiện bảo dưỡng đã được tính ra tháng tương ứng tại bước 3.
6. Khi chưa nhập ngày hoàn thành tại cột G sheet Export thì thiết bị này sẽ fill color màu đỏ tại sheet Master, kể cả khi mục B1 sheet Export chọn sang tháng khác (để quản lý đối với các thiết bị chưa hoàn thành bảo dưỡng trong tháng)

Cám ơn mọi người.
 

File đính kèm

Hướng thế này, khi nào rảnh anh thử xem được không nhé (phải làm mới toàn bộ :) ).
1. Danh mục thiết bị (danh mục này nhập 1 lần khi phát sinh) + các thuộc tính không đổi (khoản thời gian cần bảo dưỡng: 6 tháng-number )
2. Lịch sử bảo dưỡng: lưu lại lịch sử bảo dưỡng (ngày bắt đầu/ngày hoàn thành)
3. Kế hoạch bảo dưỡng: Dựa vào thuộc tính (1) và ngày hoàn thành (2) để tạo ra.
 
Upvote 0
Nếu file này của tôi thì:

Trong sheet "Master" :

Xóa 12 cột tháng

Thêm cột Ngày nhập

Tách cột "Các dạng bảo dưỡng" thành nhiều cột

và một số thay đổi khác...
 
Upvote 0
+ Dạng bảo dưỡng tiếp theo được tính trên cơ sở bội số của dạng bảo dưỡng tối thiểu ở cột T sheet Master (ví dụ thiết bị có các dạng bảo dưỡng 3, 12, 24, 48M thì 3 lần bảo dưỡng 3M sẽ là 1 lần bảo dưỡng 12M, 6 lần bảo dưỡng 3M sẽ là 1 lần 24M, 12 lần 3M sẽ là 48M)
Cái này là sao bạn, mình vẫn chưa hiểu lắm? Bạn có thể ví dụ cụ thể cho 1 thiết bị trong vòng 1 năm qua được không, chứ mình nhìn vào thấy file của bạn khó hiểu quá.
 
Upvote 0
Nếu file này của tôi thì:

Trong sheet "Master" :

Xóa 12 cột tháng

Thêm cột Ngày nhập

Tách cột "Các dạng bảo dưỡng" thành nhiều cột

và một số thay đổi khác...
Vâng, bạn có thể điều chỉnh cách trình bày thế nào cũng được để thuận tiện hơn, tại mình dùng file này lâu rồi nên ko đưa ra được ý tưởng tốt hơn.
Mong bạn giúp đỡ.
Bài đã được tự động gộp:

Cái này là sao bạn, mình vẫn chưa hiểu lắm? Bạn có thể ví dụ cụ thể cho 1 thiết bị trong vòng 1 năm qua được không, chứ mình nhìn vào thấy file của bạn khó hiểu quá.
Cái này nó như vậy:
Ví dụ có 1 thiết bị có các dạng bảo dưỡng là 3M (months), 12M, 24M và 48M mà ngày hoàn thành bảo dưỡng 3M đầu tiên là 15/05/2020 thì ngày bảo dưỡng tiếp theo là 15/08/2020 dạng bảo dưỡng là 3M, ngày 18/08/2020 (vì thời gian thực hiện bảo dưỡng mất mấy hôm nên sẽ ko thể là ngày 15/8/2020) hoàn thành bảo dưỡng (3M lần 2) thì ngày bảo dưỡng tiếp theo là 18/11/2020 và dạng bảo dưỡng là 3M, ngày 20/11/2020 hoàn thành bảo dưỡng (3M lần 3) thì ngày bảo dưỡng tiếp theo là 20/01/2021 với dạng bảo dưỡng là 12M.
Tức là sau 3 chu kỳ 3M sẽ là 1 chu kỳ 12M và tương tự như vậy đối với các dạng bảo dưỡng khác.

Mong nhận được sự giúp đỡ từ bạn.
Bài đã được tự động gộp:

Hướng thế này, khi nào rảnh anh thử xem được không nhé (phải làm mới toàn bộ :) ).
1. Danh mục thiết bị (danh mục này nhập 1 lần khi phát sinh) + các thuộc tính không đổi (khoản thời gian cần bảo dưỡng: 6 tháng-number )
2. Lịch sử bảo dưỡng: lưu lại lịch sử bảo dưỡng (ngày bắt đầu/ngày hoàn thành)
3. Kế hoạch bảo dưỡng: Dựa vào thuộc tính (1) và ngày hoàn thành (2) để tạo ra.
Làm như vậy thì mình có export kế hoạch tháng tới của từng end user và export được Kế hoạch cả năm ko bạn?
Với lại khoảng thời gian bảo dưỡng của mình có nhiều dạng khác nhau nhưng sẽ là vòng lặp. Ví dụ: 1month và 12months tưc là làm 11 lần bảo dưỡng 1 month sẽ đến 1 lần 12 months.

Mong nhận được sự giúp đỡ từ bạn/anh/chị.
 
Lần chỉnh sửa cuối:
Upvote 0
Cái này nó như vậy:
Ví dụ có 1 thiết bị có các dạng bảo dưỡng là 3M (months), 12M, 24M và 48M mà ngày hoàn thành bảo dưỡng 3M đầu tiên là 15/05/2020 thì ngày bảo dưỡng tiếp theo là 15/08/2020 dạng bảo dưỡng là 3M, ngày 18/08/2020 (vì thời gian thực hiện bảo dưỡng mất mấy hôm nên sẽ ko thể là ngày 15/8/2020) hoàn thành bảo dưỡng (3M lần 2) thì ngày bảo dưỡng tiếp theo là 18/11/2020 và dạng bảo dưỡng là 3M, ngày 20/11/2020 hoàn thành bảo dưỡng (3M lần 3) thì ngày bảo dưỡng tiếp theo là 20/01/2021 với dạng bảo dưỡng là 12M.
Tức là sau 3 chu kỳ 3M sẽ là 1 chu kỳ 12M và tương tự như vậy đối với các dạng bảo dưỡng khác.
Ngày bảo dưỡng lần 3 mình nghĩ là 20/02/2021 mới đúng chứ. Vậy ngày bảo dưỡng lần 4 và lần 5 là ngày mấy vậy bạn? Nếu là 20/05/2021 và 20/08/2021 thì mình nghĩ nên tách thời gian bảo dưỡng định kỳ với bội số ra, thời gian bảo dưỡng định kỳ cho thiết bị là 3M, bội số = thời gian bảo dưỡng định kỳ nhân với số lần bảo dưỡng, còn bội số đó bạn dùng mục đích gì thì bạn quy định khi bội số đó đạt mốc 6,12,24,48, bạn có thể cho mình biết bạn sử dụng bội số đó để làm gì không?
 
Upvote 0
Ngày bảo dưỡng lần 3 mình nghĩ là 20/02/2021 mới đúng chứ. Vậy ngày bảo dưỡng lần 4 và lần 5 là ngày mấy vậy bạn? Nếu là 20/05/2021 và 20/08/2021 thì mình nghĩ nên tách thời gian bảo dưỡng định kỳ với bội số ra, thời gian bảo dưỡng định kỳ cho thiết bị là 3M, bội số = thời gian bảo dưỡng định kỳ nhân với số lần bảo dưỡng, còn bội số đó bạn dùng mục đích gì thì bạn quy định khi bội số đó đạt mốc 6,12,24,48, bạn có thể cho mình biết bạn sử dụng bội số đó để làm gì không?
Ngày bảo dưỡng lần 3 là 20/02/2021 nhé, mình typing nhầm.
Bội số đó chỉ để tính được ra dạng bảo dưỡng 12M hoặc 24M hoặc 48M. còn thực hiện cách nào thì ko nhất thiết phải theo cách của mình.
Bạn có idea nào hay hơn có thể điều chỉnh, mục đích của mình chỉ là để kiểm soát bảo dưỡng và export được theo như file thôi.
 
Upvote 0
Ngày bảo dưỡng lần 3 là 20/02/2021 nhé, mình typing nhầm.
Bội số đó chỉ để tính được ra dạng bảo dưỡng 12M hoặc 24M hoặc 48M. còn thực hiện cách nào thì ko nhất thiết phải theo cách của mình.
Bạn có idea nào hay hơn có thể điều chỉnh, mục đích của mình chỉ là để kiểm soát bảo dưỡng và export được theo như file thôi.
Trường hợp thiết bị mua mới mình nghĩ lần bảo dưỡng đầu tiên = ngày mua mới + thời gian bảo dưỡng định kỳ. Vậy nên mình nghĩ dữ liệu của bạn đang thiếu ngày nhập hàng của thiết bị, vì nếu không có ngày nhập hàng thì đâu có cột mốc nào để tính ra được ngày bảo dưỡng tiếp theo.
 
Upvote 0
Trường hợp thiết bị mua mới mình nghĩ lần bảo dưỡng đầu tiên = ngày mua mới + thời gian bảo dưỡng định kỳ. Vậy nên mình nghĩ dữ liệu của bạn đang thiếu ngày nhập hàng của thiết bị, vì nếu không có ngày nhập hàng thì đâu có cột mốc nào để tính ra được ngày bảo dưỡng tiếp theo.
Trường hợp đối với thiết bị mua mới thì mình đang để phương án là nhập bằng tay vào tháng bảo dưỡng định kỳ đầu tiên. Ví dụ dụng cụ mua ngày 15/05/2020 mà có các nhịp bảo dưỡng là 3M, 6M, 12M thì sẽ nhập ngày bảo dưỡng ở cột tháng 8 với định dạng 3M - 15/08/2020.
Nhờ bạn xem như vậy có được ko hay bạn có idea nào hay hơn ko có thể điều chỉnh giúp mình với.
 
Upvote 0
Từ thông tin 2 sheet của bạn mình đã chỉnh sửa các vấn đề sau.
1. Tạo thêm 3 sheet mới là: DanhMuc_ThietBi, DanhMuc_BaoDuong, NhatKy_BaoDuong để thiết kế lại cơ sở dữ liệu phù hợp cho việc code của mình.
2. Trong DanhMuc_ThietBi Mình bổ sung thêm cột MaThietBi để phòng trường hợp Tên Thiết Bị bị trùng, thêm 2 cột NgayBatDauBaoDuong và LoaiBaoDuong như đã trao đổi với bạn.
3. Các dữ liệu màu vàng mình tạo ra thêm để kiểm tra đối chiếu( mình mới test 1 mã thôi, bạn nên backtest để xem coi code chạy đúng không).

Thao tác: trong sheet Export, bạn thay đổi tháng và năm trong ô B1 và D1 thì dữ liệu sẽ tự động cập nhật cho bạn nhờ vào sự kiện Worksheet_Change, toàn bộ code mình để trong sheet đó, bạn có thể tham khảo để điều chỉnh theo ý bạn.

Trước tiên là xuất ra được ngày tháng cần bảo dưỡng tiếp theo đã, mình chưa động gì vào sheet Master của bạn, mình nghĩ sheet đó dùng để báo cáo? Bạn xem coi vậy ổn chưa, nếu ổn thì mình chuyển sang bước kế tiếp là lưu dữ liệu ngày hoàn thành bảo dưỡng vào sheet NhatKy_BaoDuong để làm mốc cho kì bảo dưỡng tiếp theo.
 

File đính kèm

Upvote 0
Từ thông tin 2 sheet của bạn mình đã chỉnh sửa các vấn đề sau.
1. Tạo thêm 3 sheet mới là: DanhMuc_ThietBi, DanhMuc_BaoDuong, NhatKy_BaoDuong để thiết kế lại cơ sở dữ liệu phù hợp cho việc code của mình.
2. Trong DanhMuc_ThietBi Mình bổ sung thêm cột MaThietBi để phòng trường hợp Tên Thiết Bị bị trùng, thêm 2 cột NgayBatDauBaoDuong và LoaiBaoDuong như đã trao đổi với bạn.
3. Các dữ liệu màu vàng mình tạo ra thêm để kiểm tra đối chiếu( mình mới test 1 mã thôi, bạn nên backtest để xem coi code chạy đúng không).

Thao tác: trong sheet Export, bạn thay đổi tháng và năm trong ô B1 và D1 thì dữ liệu sẽ tự động cập nhật cho bạn nhờ vào sự kiện Worksheet_Change, toàn bộ code mình để trong sheet đó, bạn có thể tham khảo để điều chỉnh theo ý bạn.

Trước tiên là xuất ra được ngày tháng cần bảo dưỡng tiếp theo đã, mình chưa động gì vào sheet Master của bạn, mình nghĩ sheet đó dùng để báo cáo? Bạn xem coi vậy ổn chưa, nếu ổn thì mình chuyển sang bước kế tiếp là lưu dữ liệu ngày hoàn thành bảo dưỡng vào sheet NhatKy_BaoDuong để làm mốc cho kì bảo dưỡng tiếp theo.
Cám ơn bạn rất nhiều.
Sau khi test qua mình thấy có vấn đề như sau:
1. Mình sẽ cập nhật ngày hoàn thành vào cột G sheet Export thì từ đây ngày hoàn thành có được xuất sang Sheet NhatKy_BaoDuong không hay là mình phải nhập ngày hoàn thành vào Sheet NhatKy_BaoDuong.
2. Tại Sheet export cột F vẫn chưa có được dạng bảo dưỡng tiếp theo của tháng đó (nhờ bạn có thể thêm dạng bảo dưỡng này vào cột J tương ứng được không?) Vì khi mình ban hành KHBD xuống đơn vị sử dụng họ cần phải biết dạng bảo dưỡng bao nhiêu M để in phiếu.
Rất mong bạn giúp đỡ.
 
Upvote 0
Cám ơn bạn rất nhiều.
Sau khi test qua mình thấy có vấn đề như sau:
1. Mình sẽ cập nhật ngày hoàn thành vào cột G sheet Export thì từ đây ngày hoàn thành có được xuất sang Sheet NhatKy_BaoDuong không hay là mình phải nhập ngày hoàn thành vào Sheet NhatKy_BaoDuong.
2. Tại Sheet export cột F vẫn chưa có được dạng bảo dưỡng tiếp theo của tháng đó (nhờ bạn có thể thêm dạng bảo dưỡng này vào cột J tương ứng được không?) Vì khi mình ban hành KHBD xuống đơn vị sử dụng họ cần phải biết dạng bảo dưỡng bao nhiêu M để in phiếu.
Rất mong bạn giúp đỡ.
File mới cập nhật:
1. Bạn cập nhật ngày hoàn thành vào cột H, sau đó nhấn nút "Cập nhật ngày hoàn thành bảo dưỡng", dữ liệu sẽ tự động cập nhật vào sheet NhatKy_BaoDuong và làm mới lại danh sách thiết bị cần bảo dưỡng trong tháng đó.
2. Mình đã điều chỉnh theo ý bạn, loại bảo dưỡng nằm trong cột G như file gốc của bạn.
3. Mình đã sửa và điều chỉnh lại một số thứ trong code do test trường hợp mảng chỉ có 1 dòng dữ liệu thì không hiển thị kết quả.
 

File đính kèm

Upvote 0
File mới cập nhật:
1. Bạn cập nhật ngày hoàn thành vào cột H, sau đó nhấn nút "Cập nhật ngày hoàn thành bảo dưỡng", dữ liệu sẽ tự động cập nhật vào sheet NhatKy_BaoDuong và làm mới lại danh sách thiết bị cần bảo dưỡng trong tháng đó.
2. Mình đã điều chỉnh theo ý bạn, loại bảo dưỡng nằm trong cột G như file gốc của bạn.
3. Mình đã sửa và điều chỉnh lại một số thứ trong code do test trường hợp mảng chỉ có 1 dòng dữ liệu thì không hiển thị kết quả.
File này thật tuyệt vời, tuy nhiên còn nội dung nữa mình mong bạn giúp đó là trong file bạn viết thì mỗi loại thiết bị chỉ có 1 dạng bảo dưỡng, trong đó thiết bị của mình thường có lớn hơn hoặc bằng 2 dạng bảo dưỡng.
Ví dụ thiết bị có cả dạng bảo dưỡng 3M và 6M, 12M. Thì ở đây sẽ là lần 3M thứ 2 sẽ là dạng bảo dưỡng 6M, lần 3M thứ 4 là bảo dưỡng 12M.
n x 3M trong đó nếu:
- n = 1, 3, 5, 7 (số lẻ)... sẽ là dạng bảo dưỡng 3M
- n/4 = số nguyên là dạng bảo dưỡng 12M,
- n/4 = số không nguyên là dạng bảo dưỡng 6M.
Tương tự như vậy đối thiết bị có nhiều dạng bảo dưỡng (tất cả các dạng bảo dưỡng dều có tháng là bội số của nhau.)
Hy vọng nhận được thêm sự giúp đỡ từ bạn.
Trân trọng.
 
Upvote 0
Ví dụ thiết bị có cả dạng bảo dưỡng 3M và 6M, 12M. Thì ở đây sẽ là lần 3M thứ 2 sẽ là dạng bảo dưỡng 6M, lần 3M thứ 4 là bảo dưỡng 12M.
n x 3M trong đó nếu:
- n = 1, 3, 5, 7 (số lẻ)... sẽ là dạng bảo dưỡng 3M
- n/4 = số nguyên là dạng bảo dưỡng 12M,
- n/4 = số không nguyên là dạng bảo dưỡng 6M.
Tương tự như vậy đối thiết bị có nhiều dạng bảo dưỡng (tất cả các dạng bảo dưỡng dều có tháng là bội số của nhau.)
Hy vọng nhận được thêm sự giúp đỡ từ bạn.
Trân trọng.
Mình vẫn chưa hiểu ý của bạn 1 thiết bị có nhiều dạng bảo dưỡng thì dùng để làm gì, như trao đổi ở phía trên thì mình gợi ý tách ra loại bảo dưỡng với số lần bảo dưỡng, trong sheet nhật ký bảo dưỡng bạn có thể đếm số lần bảo dưỡng để tính ra 6M,12M,24M,48M.
 
Upvote 0
Vì dạng bảo dưỡng lớn hơn sẽ có nội dung bảo dưỡng khác. Ý của mình là nếu mà mình sổ được dạng bảo dưỡng ở cột G sheet Export thì mình sẽ chuyển xuống đơn vị thực hiện bảo dưỡng họ sẽ thực hiện đúng dạng bảo dưỡng mình yêu cầu còn để như vậy thì lúc nào họ cũng chỉ thực hiện dạng bảo dưỡng tối thiểu.
Hoặc nhờ bạn bổ sung thêm một cột dạng bảo dưỡng ở sheet NhatKy_BaoDuong để mình có thể đếm thủ công được ko?
 
Upvote 0
Vì dạng bảo dưỡng lớn hơn sẽ có nội dung bảo dưỡng khác. Ý của mình là nếu mà mình sổ được dạng bảo dưỡng ở cột G sheet Export thì mình sẽ chuyển xuống đơn vị thực hiện bảo dưỡng họ sẽ thực hiện đúng dạng bảo dưỡng mình yêu cầu còn để như vậy thì lúc nào họ cũng chỉ thực hiện dạng bảo dưỡng tối thiểu.
Hoặc nhờ bạn bổ sung thêm một cột dạng bảo dưỡng ở sheet NhatKy_BaoDuong để mình có thể đếm thủ công được ko?
Ở bài 4 mình có hỏi về vấn đề này và bài 5 bạn trả lời cho mình với nội dung chỉ là bội số của loại bảo dưỡng tối thiểu chứ không nói là mỗi loại bảo dưỡng áp dụng cho từng thiết bị sẽ có nội dung bảo dưỡng khác nhau khi thỏa điều kiện loại bảo dưỡng đó nên mình đã thiết kế các sheet như vậy, nếu vậy bạn phải tạo thêm bảng dữ liệu với các cột MaThietBi,SoLanLapLai,LoaiBaoDuong,NoiDungBaoDuong để xử lý tiếp, khi nào đat mốc đó thì sẽ có nội dung bảo dưỡng tương ứng. Tạm thời bạn có thể dùng hàm countif ở cột C trong sheets NhatKy_BaoDuong để đếm số lần lặp lại Mã thiết bị đã hoàn thành bảo dưỡng.
 
Upvote 0
Ở bài 4 mình có hỏi về vấn đề này và bài 5 bạn trả lời cho mình với nội dung chỉ là bội số của loại bảo dưỡng tối thiểu chứ không nói là mỗi loại bảo dưỡng áp dụng cho từng thiết bị sẽ có nội dung bảo dưỡng khác nhau khi thỏa điều kiện loại bảo dưỡng đó nên mình đã thiết kế các sheet như vậy, nếu vậy bạn phải tạo thêm bảng dữ liệu với các cột MaThietBi,SoLanLapLai,LoaiBaoDuong,NoiDungBaoDuong để xử lý tiếp, khi nào đat mốc đó thì sẽ có nội dung bảo dưỡng tương ứng. Tạm thời bạn có thể dùng hàm countif ở cột C trong sheets NhatKy_BaoDuong để đếm số lần lặp lại Mã thiết bị đã hoàn thành bảo dưỡng.
Chắc đoạn đấy mình nhầm lẫn.
Ở đây mình chỉ cần phân biệt loại bảo dưỡng thôi chứ không cần nội dung bảo dưỡng.
Cám ơn bạn rất nhiều.
 
Upvote 0
Đây là một yêu cầu khá thú vị.

Ví dư Thiết bị A nhập ngày 1/12/2019, có bảo dưỡng định kỳ là 1,3

Ngày bảo dưỡng 1M là 1/1/2020 nhưng đến 3/1/2020 mới hoàn thành

Vậy lần thứ 2, ngày bảo dưỡng 1M là ngày 3/2/2020 nên không thể dùng EDATE(Ngày nhập,2) được, tính theo kỳ bảo dưỡng thực tế gần nhất trước đó.

Ví dụ tiếp lần 2 hoàn thành ngày 6/2/2020, nên ngày bảo dưỡng tiếp theo là 3M-6/3/2020.

Thời gian bảo dưỡng theo kiểu cuốn chiếu. Hahaha ...
 
Upvote 0
Đây là một yêu cầu khá thú vị.

Ví dư Thiết bị A nhập ngày 1/12/2019, có bảo dưỡng định kỳ là 1,3

Ngày bảo dưỡng 1M là 1/1/2020 nhưng đến 3/1/2020 mới hoàn thành

Vậy lần thứ 2, ngày bảo dưỡng 1M là ngày 3/2/2020 nên không thể dùng EDATE(Ngày nhập,2) được, tính theo kỳ bảo dưỡng thực tế gần nhất trước đó.

Ví dụ tiếp lần 2 hoàn thành ngày 6/2/2020, nên ngày bảo dưỡng tiếp theo là 3M-6/3/2020.

Thời gian bảo dưỡng theo kiểu cuốn chiếu. Hahaha ...
Hiện tại file mình viết tính theo tùy chỉnh số ngày lặp lại dựa theo loại bảo dưỡng, không phải theo tháng(30,31,28,29 ngày), phòng trường hợp sau:
- Dành cho những bạn sau vào dùng file có thể bảo dưỡng theo tuần,10 ngày hoặc nữa tháng nếu có nhu cầu.
- Như trường hợp dịch covid vừa qua, thì dựa vào lịch bảo dưỡng sẽ xuất hiện ngày hoàn thành bảo dưỡng cách xa cả tháng tùy vào tình hình cho nhân viên nghỉ dịch tạm thời ở mỗi công ty, nên căn cứ vào mốc ngày hoàn thành bảo dưỡng để tính tiếp ngày bảo dưỡng tiếp theo sẽ tốt hơn.

Nếu đi sâu vào kế hoạch bảo dưỡng này thì có nhiều thứ để làm lắm.
 
Upvote 0
Hiện tại file mình viết tính theo tùy chỉnh số ngày lặp lại dựa theo loại bảo dưỡng, không phải theo tháng(30,31,28,29 ngày), phòng trường hợp sau:
- Dành cho những bạn sau vào dùng file có thể bảo dưỡng theo tuần,10 ngày hoặc nữa tháng nếu có nhu cầu.
- Như trường hợp dịch covid vừa qua, thì dựa vào lịch bảo dưỡng sẽ xuất hiện ngày hoàn thành bảo dưỡng cách xa cả tháng tùy vào tình hình cho nhân viên nghỉ dịch tạm thời ở mỗi công ty, nên căn cứ vào mốc ngày hoàn thành bảo dưỡng để tính tiếp ngày bảo dưỡng tiếp theo sẽ tốt hơn.

Nếu đi sâu vào kế hoạch bảo dưỡng này thì có nhiều thứ để làm lắm.
Cái này khó khăn đây, tác giả "đã đau đầu làm thủ công 3 năm nay rồi ", hahaha ...
 
Upvote 0
Cái này khó khăn đây, tác giả "đã đau đầu làm thủ công 3 năm nay rồi ", hahaha ...
Vậy thì bạn hỗ trợ tác giả bớt đau đầu đi :D. Tác giả tới đoạn này rồi:
Ví dụ thiết bị có cả dạng bảo dưỡng 3M và 6M, 12M. Thì ở đây sẽ là lần 3M thứ 2 sẽ là dạng bảo dưỡng 6M, lần 3M thứ 4 là bảo dưỡng 12M.
n x 3M trong đó nếu:
- n = 1, 3, 5, 7 (số lẻ)... sẽ là dạng bảo dưỡng 3M
- n/4 = số nguyên là dạng bảo dưỡng 12M,
- n/4 = số không nguyên là dạng bảo dưỡng 6M.
Tương tự như vậy đối thiết bị có nhiều dạng bảo dưỡng (tất cả các dạng bảo dưỡng dều có tháng là bội số của nhau.)

Mình thì chưa biết phải làm tiếp thế nào, bạn có gợi ý hay giải pháp nào tốt hơn không?
 
Upvote 0
Vậy thì bạn hỗ trợ tác giả bớt đau đầu đi :D. Tác giả tới đoạn này rồi:


Mình thì chưa biết phải làm tiếp thế nào, bạn có gợi ý hay giải pháp nào tốt hơn không?
Hy vọng các bạn có giải pháp cho trường hợp này.
Hiện mình đang dùng file của bạn gttrongvn với phương pháp bán thủ công. 1 nửa tính bằng tay 1 nửa tự động hóa.
 
Upvote 0
Hy vọng các bạn có giải pháp cho trường hợp này.
Hiện mình đang dùng file của bạn gttrongvn với phương pháp bán thủ công. 1 nửa tính bằng tay 1 nửa tự động hóa.
Bạn có thể cho mình xem cách bạn đang làm được không?
 
Upvote 0
Mình đang làm dạng export kế hoạch bảo dưỡng tháng tới theo sheet Export mà bạn viết cho mình để lấy danh sách các thiết bị có bảo dưỡng tháng tới, còn với các dạng bảo dưỡng của thể của từng thiết bị thì mình lại filter ở sheet Master trong file đầu tiên mình gửi và copy vào, tất nhiên sẽ có thể có nhầm lẫn. Nói chung là hơi bị NÔNG DÂN nhưng... Hic, chả biết làm thế nào đc.
 
Upvote 0
Dạng 1 máy có nhiều dạng bảo dưỡng mình thường xuyên gặp mà. Sao anh chị lại ngạc nhiên nhỉ?
Như máy xúc lật, máy xúc đào chỗ công ty tôi có 2 loại bảo dưỡng là 5000h, và 10000h.
5000h: thì hạng mục bảo dưỡng là : Thay lọc gió, lọc dầu, thay 1 thùng dầu, bổ xung dầu thủy lực.
10000h: Thì ngoài các thiết bị 5000h còn có thêm nhiều vật tư khác.

Tôi chưa xem file của bạn chủ topic. Nhưng nếu mà các dạng bảo dưỡng lần lượt và lặp đi lặp lại thì chắc sẽ có biện pháp xử lý.
 
Upvote 0
Dạng 1 máy có nhiều dạng bảo dưỡng mình thường xuyên gặp mà. Sao anh chị lại ngạc nhiên nhỉ?
Như máy xúc lật, máy xúc đào chỗ công ty tôi có 2 loại bảo dưỡng là 5000h, và 10000h.
5000h: thì hạng mục bảo dưỡng là : Thay lọc gió, lọc dầu, thay 1 thùng dầu, bổ xung dầu thủy lực.
10000h: Thì ngoài các thiết bị 5000h còn có thêm nhiều vật tư khác.

Tôi chưa xem file của bạn chủ topic. Nhưng nếu mà các dạng bảo dưỡng lần lượt và lặp đi lặp lại thì chắc sẽ có biện pháp xử lý.
Thì bác kia chưa gặp thôi.

Còn tác giả thì để quản lý được phải định nghĩa các dạng bảo dưỡng và phương pháp xử lý;

Ví dụ:
Công ty có các dạng bảo dưỡng: 1M, 3M, 6M, 12M, Thì sẽ có bao nhiêu trường hợp (có thể ) sẽ phải kiểm soát.
Một thiết bị khi ghi nhận vào cơ sở dữ liệu, nó sẽ có bao nhiêu cách ghi

1. 1M
2. 1M, 3M
3. 1M, 6M
4. 1M, 12M
m.....
hình như là toán tổ hợp thì phải, kaka
(có n dạng bảo dưỡng thì có m? cách "bảo dưỡng" cho một thiết bị)?
 
Upvote 0
Về cách tính thời gian kết quả có thể lêch ngày.

Ví dụ Thiết bị A nhập ngày 31/12/2019 và bảo dưỡng theo 1M, giả sử bảo dưỡng xong trong ngày.

1. Dùng EDATE tính theo ngày gốc, kết quả bảo dưỡng các lần tiếp theo là:

31/1/2020, 29/2/2020, 31/3/2020

2. Dùng EDATE tính theo bảo hành trước, kết quả bảo dưỡng các lần tiếp theo là:

31/1/2020, 29/2/2020, 29/3/2020

Không biết bạn @nguyenmtuan đang tính theo cách nào?
 
Upvote 0
Dạng 1 máy có nhiều dạng bảo dưỡng mình thường xuyên gặp mà. Sao anh chị lại ngạc nhiên nhỉ?
Như máy xúc lật, máy xúc đào chỗ công ty tôi có 2 loại bảo dưỡng là 5000h, và 10000h.
5000h: thì hạng mục bảo dưỡng là : Thay lọc gió, lọc dầu, thay 1 thùng dầu, bổ xung dầu thủy lực.
10000h: Thì ngoài các thiết bị 5000h còn có thêm nhiều vật tư khác.

Tôi chưa xem file của bạn chủ topic. Nhưng nếu mà các dạng bảo dưỡng lần lượt và lặp đi lặp lại thì chắc sẽ có biện pháp xử lý.
Bạn nói đúng nhỉ, trường hợp của bạn thì loại bảo dưỡng tính tới "h" luôn, từ ví dụ của bạn nếu bảo dưỡng xe máy thì có một số trường hợp quy đổi ra loại bảo dưỡng là "km" nữa, như 1000km thì thay nhớt, 8000km thì thay lọc gió, 25000km thì thay dây curoa... Sau 1000 km thì thay nhớt, 8000km vừa thay nhớt vừa thay lọc gió,25000km thì thay dây curoa với thay nhớt, riêng trường hợp 16000km thì vừa thay lọc gió vừa thay nhớt thì tính sao nhỉ, vì nó không nằm trong các loại bảo dưỡng mình đã thiết lập, bạn có kinh nghiệm thì trường hợp này giải pháp của bạn ntn?

Còn tác giả thì để quản lý được phải định nghĩa các dạng bảo dưỡng và phương pháp xử lý;
Ví dụ:
Công ty có các dạng bảo dưỡng: 1M, 3M, 6M, 12M, Thì sẽ có bao nhiêu trường hợp (có thể ) sẽ phải kiểm soát.
Một thiết bị khi ghi nhận vào cơ sở dữ liệu, nó sẽ có bao nhiêu cách ghi
1. 1M
2. 1M, 3M
3. 1M, 6M
4. 1M, 12M
m.....
hình như là toán tổ hợp thì phải, kaka
(có n dạng bảo dưỡng thì có m? cách "bảo dưỡng" cho một thiết bị)?
Tác giả cung cấp thông tin ít quá, nên khó giúp được nhiều, về bảo dưỡng thiết bị thì mình nghĩ quan trọng nhất là lịch bảo dưỡng với nội dung bảo dưỡng, đến giờ mình vẫn chưa hiểu hiển thị như thế nào, nếu nó như ví dụ của bạn n0thing1988 thì các thiết bị có loại bảo dưỡng 1M, 3M, 6M, 12M thì phải bảo dưỡng tất cả các nội dung nếu đạt mốc sau thì hiển thị như thế nào?
3M: hiển thị 3M hay 1M,3M ?
6M: hiển thị 6M hay 1M,3M,6M ?
12M: hiển thị 12M hay 1M,3M,6M,12M ?
 
Upvote 0
Về cách tính thời gian kết quả có thể lêch ngày.

Ví dụ Thiết bị A nhập ngày 31/12/2019 và bảo dưỡng theo 1M, giả sử bảo dưỡng xong trong ngày.

1. Dùng EDATE tính theo ngày gốc, kết quả bảo dưỡng các lần tiếp theo là:

31/1/2020, 29/2/2020, 31/3/2020

2. Dùng EDATE tính theo bảo hành trước, kết quả bảo dưỡng các lần tiếp theo là:

31/1/2020, 29/2/2020, 29/3/2020

Không biết bạn @nguyenmtuan đang tính theo cách nào?
Hiện mình đang tính theo ngày bảo dưỡng cộng thêm tháng.
Ví dụ thiết bị có dạng bảo dưỡng 6M hoàn thành bảo dưỡng ngày 16/06/2020 thì ngày bảo dưỡng tiếp theo bằng 16/12/2020 (lấy tháng + 6M)
 
Upvote 0
Tác giả cung cấp thông tin ít quá, nên khó giúp được nhiều, về bảo dưỡng thiết bị thì mình nghĩ quan trọng nhất là lịch bảo dưỡng với nội dung bảo dưỡng, đến giờ mình vẫn chưa hiểu hiển thị như thế nào, nếu nó như ví dụ của bạn n0thing1988 thì các thiết bị có loại bảo dưỡng 1M, 3M, 6M, 12M thì phải bảo dưỡng tất cả các nội dung nếu đạt mốc sau thì hiển thị như thế nào?
3M: hiển thị 3M hay 1M,3M ?
6M: hiển thị 6M hay 1M,3M,6M ?
12M: hiển thị 12M hay 1M,3M,6M,12M ?

Cái khó là công ty tác giả dùng "bội số"

Ví dụ thiết bị A, có 2 dạng bảo dưỡng 1M; 3M (cả hai) thì tháng 1,2 thì bảo dưỡng loại 1M; tới tháng thứ 3 thì bảo dưỡng 3M, tháng thứ 4,5 là 1M
thứ 6 là loại 3M (nếu có thêm loại 6M, thì lúc này dùng loại 6M).

Về hiển thị là tổ hợp.
 
Upvote 0
Bạn nói đúng nhỉ, trường hợp của bạn thì loại bảo dưỡng tính tới "h" luôn, từ ví dụ của bạn nếu bảo dưỡng xe máy thì có một số trường hợp quy đổi ra loại bảo dưỡng là "km" nữa, như 1000km thì thay nhớt, 8000km thì thay lọc gió, 25000km thì thay dây curoa... Sau 1000 km thì thay nhớt, 8000km vừa thay nhớt vừa thay lọc gió,25000km thì thay dây curoa với thay nhớt, riêng trường hợp 16000km thì vừa thay lọc gió vừa thay nhớt thì tính sao nhỉ, vì nó không nằm trong các loại bảo dưỡng mình đã thiết lập, bạn có kinh nghiệm thì trường hợp này giải pháp của bạn ntn?


Tác giả cung cấp thông tin ít quá, nên khó giúp được nhiều, về bảo dưỡng thiết bị thì mình nghĩ quan trọng nhất là lịch bảo dưỡng với nội dung bảo dưỡng, đến giờ mình vẫn chưa hiểu hiển thị như thế nào, nếu nó như ví dụ của bạn n0thing1988 thì các thiết bị có loại bảo dưỡng 1M, 3M, 6M, 12M thì phải bảo dưỡng tất cả các nội dung nếu đạt mốc sau thì hiển thị như thế nào?
3M: hiển thị 3M hay 1M,3M ?
6M: hiển thị 6M hay 1M,3M,6M ?
12M: hiển thị 12M hay 1M,3M,6M,12M ?
Nó như thế này bạn ạ,
Nếu 1 thiết bị có các dạng bảo dưỡng 1M, 3M, 6M, 12M, thì khi đến đủ 12 tháng nó sẽ hiển thị mỗi dạng bảo dưỡng 12M thôi (vì nội dung bảo dưỡng 12M đã bao gồm tất cả các nội dụng của bảo dưỡng nhỏ hơn) tương tự như vậy thi đến 3 tháng sẽ hiển thị 3M, khi đến 6 tháng sẽ hiển thị 6M.
Bài đã được tự động gộp:

Cái khó là công ty tác giả dùng "bội số"

Ví dụ thiết bị A, có 2 dạng bảo dưỡng 1M; 3M (cả hai) thì tháng 1,2 thì bảo dưỡng loại 1M; tới tháng thứ 3 thì bảo dưỡng 3M, tháng thứ 4,5 là 1M
thứ 6 là loại 3M (nếu có thêm loại 6M, thì lúc này dùng loại 6M).

Về hiển thị là tổ hợp.
Đúng là như vậy rồi.
Tuy nhiên hiển thị có thể tách thành 2 cột khác cũng được, ví dụ có thể để dạng bảo dưỡng 1 cột còn ngày bảo dưỡng 1 cột khác.
 
Upvote 0
Đơn giản là tạo thuộc tính "baoduong" cho từng thiết bị.
 
Upvote 0
Đơn giản là tạo thuộc tính "baoduong" cho từng thiết bị.
Công ty mình tất cả các thiết bị có các dạng bảo dưỡng nhu sau:
1. 6M,
2. 12M,
3. 6M, 12M,
4. 3M, 12M
5. 1M, 12M
6. 1M, 6M, 12M
7. 6/36/72M
8. 1/6M
9. 12/120M
10. 1/6/12/36M
11. 6/12/36M
12. 12/60M
13. 1M,
14. 3M,
15. 06/12/24M
16. 12/24M
17. 10Y (year)
18. 3/6/24M
19. 24M
20. 4M
21. 1/12/24M
22. 3M/6Y
23. 1M /6M/12M/5Y
24. 3/6M
25. 6/12/36/72M
26. 12M/4Y.

Hic kể ra đến đây mình mới biết là có nhiều dạng quá.
 
Upvote 0
Công ty mình tất cả các thiết bị có các dạng bảo dưỡng nhu sau:
1. 6M,
2. 12M,
3. 6M, 12M,
4. 3M, 12M
5. 1M, 12M
6. 1M, 6M, 12M
7. 6/36/72M
8. 1/6M
9. 12/120M
10. 1/6/12/36M
11. 6/12/36M
12. 12/60M
13. 1M,
14. 3M,
15. 06/12/24M
16. 12/24M
17. 10Y (year)
18. 3/6/24M
19. 24M
20. 4M
21. 1/12/24M
22. 3M/6Y
23. 1M /6M/12M/5Y
24. 3/6M
25. 6/12/36/72M
26. 12M/4Y.

Hic kể ra đến đây mình mới biết là có nhiều dạng quá.
Như trên mình hiểu bạn có 26 loại máy móc tương ứng với 26 loại bảo dưỡng.
VD: như loại máy thứ 6: Sau khi bảo dưỡng 1M xong thì tự động hiển thị thời gian lần bảo dưỡng tiếp theo
Nhưng phải làm rõ 1 điều đó là sau khi bảo dưỡng 5 lần 1M thì đến lần 6M sẽ ko có 1M và lần 12M sẽ ko có 1M và 6M
Ko biết tôi hiểu như vậy có đúng ko?
 
Upvote 0
Như trên mình hiểu bạn có 26 loại máy móc tương ứng với 26 loại bảo dưỡng.
VD: như loại máy thứ 6: Sau khi bảo dưỡng 1M xong thì tự động hiển thị thời gian lần bảo dưỡng tiếp theo
Nhưng phải làm rõ 1 điều đó là sau khi bảo dưỡng 5 lần 1M thì đến lần 6M sẽ ko có 1M và lần 12M sẽ ko có 1M và 6M
Ko biết tôi hiểu như vậy có đúng ko?
Sau khi bảo dưỡng 5 lần 1M thì lần thứ 6 sẽ chỉ là 6M, tương tự như vậy lần 12M sẽ không có 1M và 6M.
Đúng như bạn hiểu.
 
Upvote 0
Bạn cho mình ví dụ cụ thể của 1 chu kì bảo dưỡng của thiết bị bên trên đi, từ 1M->6M->12M->?->5Y->?
Mình cần số liệu trong 2 dấu "?" đó
Thiết bị có dạng bảo dưỡng 1M /6M/12M/5Y thì sẽ có vòng lặp như file đính kèm bạn nhé.
Cứ sau 5Y thì thiết bị lại bắt đầu vòng bảo dưỡng lại từ đầu.
Những thiết bị khác có nhịp bảo dưỡng khác cũng tính như vậy.
Cám ơn bạn nhiều.
 

File đính kèm

Upvote 0
Thiết bị có dạng bảo dưỡng 1M /6M/12M/5Y thì sẽ có vòng lặp như file đính kèm bạn nhé.
Cứ sau 5Y thì thiết bị lại bắt đầu vòng bảo dưỡng lại từ đầu.
Những thiết bị khác có nhịp bảo dưỡng khác cũng tính như vậy.
Cám ơn bạn nhiều.
1. Để tiện việc tính bảo dưỡng, trong file có hàm KyBaoDuong có các đối số:

- startDate - > Ngày nhập thiết bị, mốc tính bảo dưỡng

- EndDate -> Ngày tính bảo dưỡng, nếu tháng này không có kỳ bảo dưỡng nào thì kết quả của hàm là rỗng

- Maintenance - > Chứa các loại bảo dưỡng, như "1,12M,24M", hoặc "1,12,2Y" => kết quả của hàm là giống nhau

2. Hai cột: Các loại bảo dưỡng và Code bảo dưỡng được dời về phía trước, để dễ dàng mở rộng các tháng bảo dưỡng về phía sau

3. Thêm cột Ngày nhập thiết bị, làm cột mốc để tính kỳ bảo dưỡng

Muốn được như yêu cầu bài 1, cần phải trao đổi làm rõ một số điểm. Việc này tốn nhiều thời gian nên tạm dừng tại đây.
 

File đính kèm

Upvote 0
Thiết bị có dạng bảo dưỡng 1M /6M/12M/5Y thì sẽ có vòng lặp như file đính kèm bạn nhé.
Cứ sau 5Y thì thiết bị lại bắt đầu vòng bảo dưỡng lại từ đầu.
Những thiết bị khác có nhịp bảo dưỡng khác cũng tính như vậy.
Cám ơn bạn nhiều.
File mới cập nhật:
Mình tạo thêm cột MocBaoDuong trong sheet DanhMuc_ThietBi, là bội số của các lần bảo dưỡng nếu đạt mốc thì sẽ tự động chuyển đổi sang mốc tương ứng (= loại bảo dưỡng* mốc bảo dưỡng), với điều kiện khi nhập liệu mốc bảo dưỡng đó thì bạn làm theo cấu trúc mốc tăng dần và ngăn cách bởi dấu "," (mình đã làm ví dụ mẫu), nếu bạn có thể đọc hiểu thì có thể chỉnh sửa theo ý bạn. Đối với ký tự bằng M (month) hoặc Y(year) khi tính bội số thì sẽ nhân lên chứ không quy đổi từ M sang Y, mình không hỗ trợ viết cái này.

Do không thiết kế form nhập liệu để viết code thiết lập ràng buộc các thao tác nhập liệu từ người dùng nên đòi hỏi độ chính xác từ nhập liệu của bạn, nếu sai thì code sẽ không chạy được.

Mình đã tạo thêm bảng DanhMuc_MocBaoDuong để làm thêm nội dung bảo dưỡng, mình viết cho những bạn khác có thể cần, và được tách riêng ra thêm file NhipBaoDuong_NoiDungBaoDuong.

Mình mới test một vài lần nên không biết còn phát sinh lỗi nào nữa không. Bạn test thử giúp mình nha.
 

File đính kèm

Upvote 0
File mới cập nhật:
Mình tạo thêm cột MocBaoDuong trong sheet DanhMuc_ThietBi, là bội số của các lần bảo dưỡng nếu đạt mốc thì sẽ tự động chuyển đổi sang mốc tương ứng (= loại bảo dưỡng* mốc bảo dưỡng), với điều kiện khi nhập liệu mốc bảo dưỡng đó thì bạn làm theo cấu trúc mốc tăng dần và ngăn cách bởi dấu "," (mình đã làm ví dụ mẫu), nếu bạn có thể đọc hiểu thì có thể chỉnh sửa theo ý bạn. Đối với ký tự bằng M (month) hoặc Y(year) khi tính bội số thì sẽ nhân lên chứ không quy đổi từ M sang Y, mình không hỗ trợ viết cái này.

Do không thiết kế form nhập liệu để viết code thiết lập ràng buộc các thao tác nhập liệu từ người dùng nên đòi hỏi độ chính xác từ nhập liệu của bạn, nếu sai thì code sẽ không chạy được.

Mình đã tạo thêm bảng DanhMuc_MocBaoDuong để làm thêm nội dung bảo dưỡng, mình viết cho những bạn khác có thể cần, và được tách riêng ra thêm file NhipBaoDuong_NoiDungBaoDuong.

Mình mới test một vài lần nên không biết còn phát sinh lỗi nào nữa không. Bạn test thử giúp mình nha.
Cám ơn bạn rất nhiều,
File của bạn sau khi sử dụng mình mong bạn edit giúp mình những nội dung sau:
1. Sau khi đổ dữ liệu vào mình không thấy nó chạy nhỉ? Nhờ bạn xem giúp lỗi gì giúp mình với.
2. Đối với nhịp bảo dưỡng tiếp theo (đang hiện tại cột J sheet EXPORT) cần phải điều chỉnh lại. Ví dụ thiết bị có các dạng bảo dưỡng 3,6 thì khi thực hiện lần bảo dưỡng thứ 2 tại cột này sẽ hiện là 9M chứ ko phải là 6M (mà tại cột MocBaoduong sheet danh mục thiết bị chỉ có dạng 3,6).
3. Nhờ bạn hiển thị giúp cột Maintenance Code tại cột I sheet EXPORT đối với các thiết bị tương ứng đã để ở sheet danh mục thiết bị.
4. Giả sử mình có thêm 1 loại bảo dưỡng mới là 9M thì mình có tự định nghĩa được dạng này vào sheet DanhMuc_Baoduong ko?

Hy vọng tiếp tục nhận được sự giúp đỡ từ bạn.
 

File đính kèm

Upvote 0
File của bạn sau khi sử dụng mình mong bạn edit giúp mình những nội dung sau:
1. Sau khi đổ dữ liệu vào mình không thấy nó chạy nhỉ? Nhờ bạn xem giúp lỗi gì giúp mình với.
Hy vọng tiếp tục nhận được sự giúp đỡ từ bạn.
Bạn cập nhật loại bảo dưỡng tối thiểu với mốc bảo dưỡng là bội số cho các thiết bị như đã trao đổi trong các bài viết phía trên trước đi, chứ mình tải file bạn về không thấy dữ liệu 2 cột đấy thì sao chạy được.
 
Upvote 0
Bạn cập nhật loại bảo dưỡng tối thiểu với mốc bảo dưỡng là bội số cho các thiết bị như đã trao đổi trong các bài viết phía trên trước đi, chứ mình tải file bạn về không thấy dữ liệu 2 cột đấy thì sao chạy được.
Ok rồi chắc tại mình nhập sai định dạng.
Nhờ bạn giúp mục 2 và 4 nhé.
 
Upvote 0
File mới cập nhật:
Mình tạo thêm cột MocBaoDuong trong sheet DanhMuc_ThietBi, là bội số của các lần bảo dưỡng nếu đạt mốc thì sẽ tự động chuyển đổi sang mốc tương ứng (= loại bảo dưỡng* mốc bảo dưỡng), với điều kiện khi nhập liệu mốc bảo dưỡng đó thì bạn làm theo cấu trúc mốc tăng dần và ngăn cách bởi dấu "," (mình đã làm ví dụ mẫu), nếu bạn có thể đọc hiểu thì có thể chỉnh sửa theo ý bạn. Đối với ký tự bằng M (month) hoặc Y(year) khi tính bội số thì sẽ nhân lên chứ không quy đổi từ M sang Y, mình không hỗ trợ viết cái này.

Do không thiết kế form nhập liệu để viết code thiết lập ràng buộc các thao tác nhập liệu từ người dùng nên đòi hỏi độ chính xác từ nhập liệu của bạn, nếu sai thì code sẽ không chạy được.

Mình đã tạo thêm bảng DanhMuc_MocBaoDuong để làm thêm nội dung bảo dưỡng, mình viết cho những bạn khác có thể cần, và được tách riêng ra thêm file NhipBaoDuong_NoiDungBaoDuong.

Mình mới test một vài lần nên không biết còn phát sinh lỗi nào nữa không. Bạn test thử giúp mình nha.
Sao mình thêm dạng bảo dưỡng 120M vào không thấy xuất ra được nhỉ?
 
Upvote 0
Bạn gửi file có dữ liệu bị lỗi cho mình xem đi.
Đây bạn, thiết bị có mã TB1302 và 1303, tiện nhờ bạn thêm P/N và S/N ở sheet NhatKy_BaoDuong được ko? (Cột đứng sau Ngày hoàn thành cũng được).
Cám ơn bạn nhiều.
 

File đính kèm

Upvote 0
Đây bạn, thiết bị có mã TB1302 và 1303, tiện nhờ bạn thêm P/N và S/N ở sheet NhatKy_BaoDuong được ko? (Cột đứng sau Ngày hoàn thành cũng được).
Cám ơn bạn nhiều.
P/N và S/N là thông tin của thiết bị, nằm trong danh mục thiết bị, nhật ký bảo dưỡng đâu liên quan tới thông tin thiết bị đâu bạn. ở bảng tính mốc bảo dưỡng bạn làm chưa đúng, nó là bội số của loại bảo dưỡng, loại bảo dưỡng là mốc tối thiểu. Ví dụ thiết bị có bảo dưỡng là 3M,6M,9M,24M thì loại bảo dưỡng là 3M, mốc bảo dưỡng là 1,2,3,8 (tương ứng với 3M/3M,6M/3M,9M/3M,24M/3M)
 
Upvote 0
P/N và S/N là thông tin của thiết bị, nằm trong danh mục thiết bị, nhật ký bảo dưỡng đâu liên quan tới thông tin thiết bị đâu bạn. ở bảng tính mốc bảo dưỡng bạn làm chưa đúng, nó là bội số của loại bảo dưỡng, loại bảo dưỡng là mốc tối thiểu. Ví dụ thiết bị có bảo dưỡng là 3M,6M,9M,24M thì loại bảo dưỡng là 3M, mốc bảo dưỡng là 1,2,3,8 (tương ứng với 3M/3M,6M/3M,9M/3M,24M/3M)
Mình cần P/N và S/N của thiết bị ở sheet Nhatkybaoduong là vì để traceback lại cho tiện khi có nhà chức trách đến kiểm tra. Chứ nếu ko để thì mình lại mất thêm 1 lần Ctrl+F ở sheet kia.
Đối với thiết bị TB1302 và TB1303 thì chỉ có mỗi duy nhật dạng 120M, không liên quan đến bội số của số nào nhưng vẫn không thấy xuất ra được nhỉ? Với lại mình cũng đã đổi thành bội số như của bạn rồi vẫn ko thấy có kết quả.
Cám ơn bạn nhiều.
 
Upvote 0
Mình cần P/N và S/N của thiết bị ở sheet Nhatkybaoduong là vì để traceback lại cho tiện khi có nhà chức trách đến kiểm tra. Chứ nếu ko để thì mình lại mất thêm 1 lần Ctrl+F ở sheet kia.
Bạn có thể xài hàm vlookup để lấy P/N và S/N bên danh sách thiết bị.

Đối với thiết bị TB1302 và TB1303 thì chỉ có mỗi duy nhật dạng 120M, không liên quan đến bội số của số nào nhưng vẫn không thấy xuất ra được nhỉ? Với lại mình cũng đã đổi thành bội số như của bạn rồi vẫn ko thấy có kết quả.
Nếu chỉ có mỗi duy nhất dạng 120M thì cột loại bảo dưỡng là 120M, mốc bảo dưỡng là 1,
 
Upvote 0
Bạn có thể xài hàm vlookup để lấy P/N và S/N bên danh sách thiết bị.


Nếu chỉ có mỗi duy nhất dạng 120M thì cột loại bảo dưỡng là 120M, mốc bảo dưỡng là 1,
Mình chưa hiểu, mình để cả 2 kiểu: cột loại bảo dưỡng là 120M, mốc bảo dưỡng là 1 và cột loại bảo dưỡng là 120M, mốc bảo dưỡng là 120 đều ko xuất ra được ngày tương ứng.
 
Upvote 0
Mình chưa hiểu, mình để cả 2 kiểu: cột loại bảo dưỡng là 120M, mốc bảo dưỡng là 1 và cột loại bảo dưỡng là 120M, mốc bảo dưỡng là 120 đều ko xuất ra được ngày tương ứng.
Bạn up file chỉ mỗi thiết bị đó bị lỗi để mìn xem.
 
Upvote 0
Bạn xem giúp mình với nhé.
Cột mốc bảo dưỡng I2,I3 phải là 1 chứ không phải 120 nha bạn, bạn định nghĩa 120M là 4380 ngày tương đương 146 tháng thì ngày bắt đầu bảo dưỡng phải rơi vào tầm tháng 3/2015, mình chỉnh lại các ngày trong tháng 3/2015 thì chạy được.
 

File đính kèm

Upvote 0
Cột mốc bảo dưỡng I2,I3 phải là 1 chứ không phải 120 nha bạn, bạn định nghĩa 120M là 4380 ngày tương đương 146 tháng thì ngày bắt đầu bảo dưỡng phải rơi vào tầm tháng 3/2015, mình chỉnh lại các ngày trong tháng 3/2015 thì chạy được.
À như vậy dụng cụ có dạng bảo dưỡng 3M, 6M, 12M, 24M thì mình sẽ phải để ở cột Mốc bảo dưỡng là: 1, 2, 4, 8 à?
Tại mình chưa rõ định nghĩa này.
 
Upvote 0
À như vậy dụng cụ có dạng bảo dưỡng 3M, 6M, 12M, 24M thì mình sẽ phải để ở cột Mốc bảo dưỡng là: 1, 2, 4, 8 à?
Tại mình chưa rõ định nghĩa này.
Mình đang test thấy rất chuẩn, phải công nhận bạn giỏi thật, mấy cách tính bội như vậy mà viết thành rất đơn giản.
Thực sự cám ơn bạn rất nhiều.
 
Upvote 0
Mình đang test thấy rất chuẩn, phải công nhận bạn giỏi thật, mấy cách tính bội như vậy mà viết thành rất đơn giản.
Thực sự cám ơn bạn rất nhiều.
Vậy là ổn rồi nha bạn. Mình gửi lại file cập nhật thêm cột J của bạn.
 

File đính kèm

Upvote 0
Vậy là ổn rồi nha bạn. Mình gửi lại file cập nhật thêm cột J của bạn.
Cám ơn bạn, cột J này mình đã mày mò thêm được vào trong file mình đổ dữ liệu rồi.
Giờ còn 1 vấn đề thật sự cần nữa là nhờ bạn thêm 1 cột C tại Sheet NhatKy_BaoDuong mà tại cột này cập nhật dạng bảo dưỡng ở cột J sheet Export, để khi mình báo cáo thì sẽ hiện là thiết bị A đã làm bảo dưỡng ngày xx/xx/xxxx với dạng bảo dưỡng là xM.
Cái này mình ko mày mò được, và cũng không dùng hàm Vlookup được do khi cập nhật ngày hoàn thành bảo dưỡng là nó sẽ ẩn đi.
Rất mong bạn giúp đỡ.
 
Upvote 0
Cám ơn bạn, cột J này mình đã mày mò thêm được vào trong file mình đổ dữ liệu rồi.
Giờ còn 1 vấn đề thật sự cần nữa là nhờ bạn thêm 1 cột C tại Sheet NhatKy_BaoDuong mà tại cột này cập nhật dạng bảo dưỡng ở cột J sheet Export, để khi mình báo cáo thì sẽ hiện là thiết bị A đã làm bảo dưỡng ngày xx/xx/xxxx với dạng bảo dưỡng là xM.
Cái này mình ko mày mò được, và cũng không dùng hàm Vlookup được do khi cập nhật ngày hoàn thành bảo dưỡng là nó sẽ ẩn đi.
Rất mong bạn giúp đỡ.
Đây bạn
 

File đính kèm

Upvote 0
Mình có thêm 1 vấn đề nữa nhờ bạn viết thêm giúp mình với.
Các thiết bị công ty mình có 2 loại bảo dưỡng là bảo dưỡng theo tháng và bảo dưỡng theo giờ hoạt động của thiết bị.
Khoảng 90% thiết bị của công ty mình là bảo dưỡng theo tháng, còn lại 10% là bảo dưỡng theo giờ.
Vừa rồi bạn đã giải quyết giúp mình vấn đề bảo dưỡng theo tháng, giờ mình nhờ bạn viết thêm vào file vừa rồi dạng bảo dưỡng theo giờ được không?
Cụ thể cũng không khác gì theo tháng, các dạng bảo dưỡng cũng là bội số (ví dụ 50h, 100h, 200h, 250h, 500h, 1000h...) và ký hiệu là H.
Do mình không là đơn vị quản lý trực tiếp nên tháng nào mình cũng sẽ export ra danh sánh các thiết bị có yêu cầu bảo dưỡng theo giờ, nên đối với những thiết bị này tháng nào mình cũng sẽ export ra để chuyển xuống đơn vị. Và tại cột H sheet Export sẽ là ngày nhập ngày hoàn thành (có thể 2 hoặc 3 tháng mới nhập, vì lúc đó thiết bị mới đến hạn) dạng xxxH. Trên cơ sở lưu lại tại Sheet NhatKy_BaoDuong và tính bội số để ra dạng bảo dưỡng tiếp theo ở các tháng tiếp.
Rất mong lại nhận được sự giúp đỡ từ bạn.
Trân trọng.
 
Upvote 0
Đọc bài của bạn Phuocam mới thấy đây cũng là vấn đề đau đầu của mình. Mình là nhân viên quản lý thiết bị công việc lập kế hoạch bảo dưỡng cũng đang thực hiện thủ công. Nhân đây mình up file lên mong các cao thủ viết code để lập ra kế hoạch bảo dưỡng năm theo tần suất bảo dưỡng của từng loại thiết bị. từ kế hoạch năm lại tách ra các tháng của năm. Mình xin cảm ơn các bạn rất nhiều.
 

File đính kèm

Upvote 0
Nhờ mọi người tính giúp: Tìm giá trị tổng ở cột II khi cột III và cột IV có giá trị >0
 

File đính kèm

Upvote 0

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

Back
Top Bottom