Hỏi cách tính khoảng cách giữa 02 ngày

Liên hệ QC

ST-Lu!

Love Wingchun
Tham gia
19/8/08
Bài viết
730
Được thích
546
Nghề nghiệp
Xích lô một thời
File exel sau được retrieve từ phần mềm toàn cầu (của công ty)
Do định dạng trong file excel hơi khù khoằm nên em chưa biết cách tính như nào cho phù hợp
- Định dạng trong bài của em là (dd/mm/yyyy hh:mm:ss)
04/12/2008 11:57:00 PM
- Khi export file từ mạng xuống, họ đã tính sẵn khoảng cách giữa hai ngày rùi. Nhưng em không biết họ dùng công thức như nào để làm việc này

Hiện tại em mới sử dụng hàm Mid(),,để lấy ngày nhưng phần tiếng, phút không biết lấy như nào?

Ví dụ: Thời gian 1 là : 28/11/2008 8:30:00 PM
------ Thời gian 2 là : 04/12/2008 11:57:00 PM
Trong file họ tính được là: 4,48 (ngày)

Anh chị giúp em bài toán trên với
 

File đính kèm

  • Tinh ngay.7z
    36.3 KB · Đọc: 110
File exel sau được retrieve từ phần mềm toàn cầu (của công ty)
Do định dạng trong file excel hơi khù khoằm nên em chưa biết cách tính như nào cho phù hợp
- Định dạng trong bài của em là (dd/mm/yyyy hh:mm:ss)
04/12/2008 11:57:00 PM
- Khi export file từ mạng xuống, họ đã tính sẵn khoảng cách giữa hai ngày rùi. Nhưng em không biết họ dùng công thức như nào để làm việc này

Hiện tại em mới sử dụng hàm Mid(),,để lấy ngày nhưng phần tiếng, phút không biết lấy như nào?

Ví dụ: Thời gian 1 là : 28/11/2008 8:30:00 PM
------ Thời gian 2 là : 04/12/2008 11:57:00 PM
Trong file họ tính được là: 4,48 (ngày)

Anh chị giúp em bài toán trên với

Mình không biết cách tính ra sao, chứ như yêu cầu trừ 2 khoảng thời gian với nhau thì số trên không đúng. Bạn cứ lấy 2 khoảng thời gian trừ cho nhau và định dạng là General thì sẽ thấy được khoảng cách giữa hai khoảng thời gian.

Để tách giờ phút giây trong một biểu thức thời gian nào đó thì bạn làm như sau :

- Tách ngày ngày trong biểu thức thời gian : Rounddown("28/11/2008 8:30:00 PM",0)

- Tính giờ :
=HOUR(VALUE("28/11/2008 8:30:00 PM")-ROUNDDOWN("28/11/2008 8:30:00 PM",0))

- Tính phút :
=MINUTE(VALUE("28/11/2008 8:30:00 PM")-ROUNDDOWN("28/11/2008 8:30:00 PM",0))

- Tính giây :
=SECOND(VALUE("28/11/2008 8:30:00 PM")-ROUNDDOWN("28/11/2008 8:30:00 PM",0))
 
Không biết Hoangdanh có phức tạp hóa vấn đề không, chứ với tôi thì tôi dùng những công thức đơn giản hơn nhiều.

Ví dụ, trong ô A1 đang có biểu thức thời gian như sau: 24/02/2009 9:00:31 PM (lấy bằng hàm NOW()...)

Để tách ngày: =INT(A1) và định dạng ô theo kiểu ngày (dd/mm/yyyy)

Để tách phần thời gian: =A1-INT(A1) và định dạng ô theo kiểu thời gian (hh:mm:ss)

Và khi đó thì tính giờ, tính phút, tính giây, chỉ cần dùng những hàm căn bản như HOUR, MINUTE, SECOND cho cái kết quả thời gian đã có ở trên.

Nếu muốn tính số thời gian theo kiểu 1 giờ rưỡi, hay là 1,25 giờ... thì dùng cái này: =(A1-INT(A1))*24 và định dạng ô theo dạng Number.
 
Bài này có liên quan đến số giờ làm việc trong ngày, và số ngày làm việc trong tuần. Tương tự là topic tính thời gian (câu 2).
File dưới đây là code VBA để tính, với số giờ làm việc trong ngày và số ngày làm việc trong tuần cụ thể. Có thể thay đổi chút đỉnh là xài được.
 

File đính kèm

  • TimePtm3.xls
    59.5 KB · Đọc: 80
Hic
Chào các Anh, các chị
File hôm qua em up lên diễn đàn dùng công thức Value rất ổn.
Nhưng hôm nay em xin up lên một file khác.
Cùng trong một sheet. Tại cột AC em dùng công thưc Value(text) thì ok nhưng tại cột D
em dùng công thức Value(text) thì báo #value.
Dữ liệu em đã format về cùng định dạng

Xin các Anh, chị chỉ giúp cho

Em cám ơn
 

File đính kèm

  • Tinh ngay1.zip
    7.7 KB · Đọc: 45
Hic
Chào các Anh, các chị
File hôm qua em up lên diễn đàn dùng công thức Value rất ổn.
Nhưng hôm nay em xin up lên một file khác.
Cùng trong một sheet. Tại cột AC em dùng công thưc Value(text) thì ok nhưng tại cột D
em dùng công thức Value(text) thì báo #value.
Dữ liệu em đã format về cùng định dạng

Xin các Anh, chị chỉ giúp cho

Em cám ơn

Do dữ liệu ngày tháng dạng text trong cột B không chuẩn nên ta không chuyển đổi được. Trước hết phải chuyển nó về chuẩn đã. BẠn xem file nha.
Tại ô D2 :
=VALUE(MID(B2,FIND("/",B2)+1,FIND("/",B2,FIND("/",B2)+1)-FIND("/",B2)-1)&"/"&LEFT(B2,FIND("/",B2)-1)&"/"&MID(B2,FIND("/",B2,FIND("/",B2)+1)+1,20))
 

File đính kèm

  • Tinh ngay1.xls
    37.5 KB · Đọc: 61
=VALUE(MID(B2,FIND("/",B2)+1,FIND("/",B2,FIND("/",B2)+1)-FIND("/",B2)-1)&"/"&LEFT(B2,FIND("/",B2)-1)&"/"&MID(B2,FIND("/",B2,FIND("/",B2)+1)+1,20))

Cám ơn Anh Danh
Công thức của anh rất công phu...
Nhưng em thấy nhiều FIND quá, đọc mãi mới hiểu? có cách nào dễ nhìn hơn không ạh

Cám ơn Anh Danh nhé
 
Web KT
Back
Top Bottom