thangbithu
Thành viên thường trực




- Tham gia
- 13/10/08
- Bài viết
- 387
- Được thích
- 485
- Nghề nghiệp
- Nhân sự
Thân gởi các Anh Chị Em,
Bài toán dưới đây mình đã làm được bằng những hàm có sẵn trong excel nhưng công thức quá dài, chỉ chạy được trong excel 2007 trở lên và hay bị báo lỗi (file đính kèm)
Anh em giúp mình tạo hàm để tính toán cho gọn, chạy được trên excel 2003 và không bị báo lỗi.
Bài toán xin mô tả như sau:
Là bảng tính giờ công của công nhân, giờ công mỗi công nhân được ghi trên 1 hàng gồm 31 cell (tương ứng với 31 cột mà tiêu đề từng cột là ngày trong tháng (1, 2, 3, ...., 31). Dữ liệu trong từng cell :
- có thể là rỗng,
- có thể là số (số nguyên hoặc số thập phân, ký hiệu số thập phân là dấu ","),
- có thể là chuỗi: gồm 3 loại dữ liệu kết hợp với nhau
+ Số: có cấu tạo giống như phần số nêu trên
+ ký tự : tối đa 2 ký tự, ví dụ: P, T, CO, TS, RO, H1, H2, H3 ...
+ dấu "/".
+ cách kết hợp: 8P; 12,5CO ; 10,5H2 ; 4/4P; 11,5/2,5H3 ; 8P/4X ; 3/4P/1X ; 10,5/0,5X/3H2; 10,5CT/4P/1,5H2 (không có khoảng trắng ở giữa)

Vấn đề đặt ra:
Trong từng cell phải tách được phần số và phần ký tự ra riêng để :
1/ lấy sum phần số, tuy nhiên những số đứng trước một số ký tự được chỉ định không lất sum, ví dụ: số đứng trước chữ CO và P không lấy sum.

2/ chỉ lấy sum các số đứng trước chữ P, CO (là những chữ mà hàm ở trên không lấy sum) (như ví dụ trên là 12,5CO + 4P + 8P + 4P + 4P = 32,5)
3/ lấy sum các con số chỉ đứng 1 mình, không đi kèm với chữ nào, ví dụ: Sum(4,5 ; 4/4H2; 10/4P/4X) = 18,5 ?
Sau đó cộng tất cả các cell lại để có giờ công trong tháng
Mỗi loại sum là 1 hàm
Xin cảm ơn anh em trước.
Bài toán dưới đây mình đã làm được bằng những hàm có sẵn trong excel nhưng công thức quá dài, chỉ chạy được trong excel 2007 trở lên và hay bị báo lỗi (file đính kèm)
Anh em giúp mình tạo hàm để tính toán cho gọn, chạy được trên excel 2003 và không bị báo lỗi.
Bài toán xin mô tả như sau:
Là bảng tính giờ công của công nhân, giờ công mỗi công nhân được ghi trên 1 hàng gồm 31 cell (tương ứng với 31 cột mà tiêu đề từng cột là ngày trong tháng (1, 2, 3, ...., 31). Dữ liệu trong từng cell :
- có thể là rỗng,
- có thể là số (số nguyên hoặc số thập phân, ký hiệu số thập phân là dấu ","),
- có thể là chuỗi: gồm 3 loại dữ liệu kết hợp với nhau
+ Số: có cấu tạo giống như phần số nêu trên
+ ký tự : tối đa 2 ký tự, ví dụ: P, T, CO, TS, RO, H1, H2, H3 ...
+ dấu "/".
+ cách kết hợp: 8P; 12,5CO ; 10,5H2 ; 4/4P; 11,5/2,5H3 ; 8P/4X ; 3/4P/1X ; 10,5/0,5X/3H2; 10,5CT/4P/1,5H2 (không có khoảng trắng ở giữa)

Vấn đề đặt ra:
Trong từng cell phải tách được phần số và phần ký tự ra riêng để :
1/ lấy sum phần số, tuy nhiên những số đứng trước một số ký tự được chỉ định không lất sum, ví dụ: số đứng trước chữ CO và P không lấy sum.

2/ chỉ lấy sum các số đứng trước chữ P, CO (là những chữ mà hàm ở trên không lấy sum) (như ví dụ trên là 12,5CO + 4P + 8P + 4P + 4P = 32,5)
3/ lấy sum các con số chỉ đứng 1 mình, không đi kèm với chữ nào, ví dụ: Sum(4,5 ; 4/4H2; 10/4P/4X) = 18,5 ?
Sau đó cộng tất cả các cell lại để có giờ công trong tháng
Mỗi loại sum là 1 hàm
Xin cảm ơn anh em trước.