Tôi có thể sử dụng công thức Excel nào để tính ngày thứ Hai thứ 2 của một tháng nhất định?


11

Tôi có thể sử dụng công thức Excel nào để tính ngày thứ hai thứ hai của một tháng nhất định?

Bạn có thể giả sử tôi có một ô chứa ngày đầu tiên của tháng để làm việc.

Vì lợi ích của những người dùng khác, bạn cũng có thể vui lòng giải thích cách thay đổi công thức để có được ngày thứ 1, thứ 3 hoặc thứ 4 của tháng và cả những ngày khác trong tuần nữa. ví dụ thứ sáu thứ ba của thứ hai ...


Tôi muốn một công thức để tính thứ tư thứ hai của tháng và năm hiện tại để sử dụng để tự động thêm ngày của cuộc họp vào một bảng đăng nhập cho một cuộc họp hàng tháng. Tôi đã tạo ra công thức dưới đây. =DATE(YEAR(NOW()),MONTH(NOW()),1+7*2)-WEEKDAY(DATE(YEAR(NOW()),MONTH(NOW()),8-4))

Câu trả lời:


18

Đây là một cái gì đó tôi tìm thấy với một tìm kiếm nhanh:

Nhìn chung, bạn có thể nhận được ngày thứ n của tháng với công thức này

=DATE(B2,A2,1+7*n)-WEEKDAY(DATE(B2,A2,8-xday)) 

trong đó năm ở B2 và tháng (như số 1 đến 12) ở A2 và trong đó xday là số đại diện cho ngày trong tuần (1 = CN đến 7 = Sat), vì vậy vào thứ Bảy đầu tiên sẽ trở thành

=DATE(B2,A2,1+7*1)-WEEKDAY(DATE(B2,A2,8-7)) 

hoặc cho thứ Năm thứ tư

=DATE(B2,A2,1+7*4)-WEEKDAY(DATE(B2,A2,8-5)) 

Vì vậy, nếu tôi đọc đúng thứ này, thứ Hai thứ 2 của tháng là

=DATE(B2,A2,1+7*2)-WEEKDAY(DATE(B2,A2,8-2)) 

( tín dụng khi tín dụng đáo hạn )


1
Nó hoạt động hoàn hảo, theo như tôi có thể nói! Cảm ơn rất nhiều
Rất bất thường

0

= IF ((TUẦN (A1)> 3), (A1 + (17 TUẦN (A1))), (A1 + (10 TUẦN (A1))))

A1 là ngày đầu tiên của tháng


Bạn có thể giải thích thêm?
yass

Không cần bất kỳ lời giải thích nào - nó hoàn toàn không hoạt động !
robinCTS

0

Tôi cũng không thể làm cho nó hoạt động chính xác. Tôi đã nghĩ ra một cách siêu phức tạp (thành ngữ của tôi) có vẻ như hoạt động.

A2 = Tháng
B2 = năm
C2 = Ngày trong tuần (1 - 7, 1 = Chủ nhật)
D2 = "số" (3 = ngày thứ 3, v.v.)

SO thứ hai thứ hai sẽ là A2 = tháng hiện tại, B2 = năm hiện tại, C2 = 2 (cho thứ hai) và D2 ​​= 2 (cho thứ hai thứ hai)

F2 = =IF(MONTH(IF((WEEKDAY(VALUE(($A2&"/01/"&$B2))))=$C2,(VALUE(($A2&"/01/"&$B2)))+(($D2*7)-7),IF((WEEKDAY(VALUE(($A2&"/01/"&$B2))))<$C2,((VALUE(($A2&"/01/"&$B2)))+($C2-(WEEKDAY(VALUE(($A2&"/01/"&$B2)))))+(($D2*7)-7)),(VALUE(($A2&"/01/"&$B2)))+($C2-(WEEKDAY(VALUE(($A2&"/01/"&$B2)))))+7+(($D2*7)-7))))=A2,IF((WEEKDAY(VALUE(($A2&"/01/"&$B2))))=$C2,(VALUE(($A2&"/01/"&$B2)))+(($D2*7)-7),IF((WEEKDAY(VALUE(($A2&"/01/"&$B2))))<$C2,((VALUE(($A2&"/01/"&$B2)))+($C2-(WEEKDAY(VALUE(($A2&"/01/"&$B2)))))+(($D2*7)-7)),(VALUE(($A2&"/01/"&$B2)))+($C2-(WEEKDAY(VALUE(($A2&"/01/"&$B2)))))+7+(($D2*7)-7))),"error")

Tôi chắc chắn có một cách sạch hơn để làm điều này (đã nhận thấy nếu tôi lật một trong số các IF của mình, tôi có thể loại bỏ một số sao chép) cộng với hầu hết các công thức lặp lại có thể được rút ra trong các ô riêng biệt để làm cho công thức cuối sạch hơn . Nhưng tôi chưa có cơ hội nghiên cứu những công thức nào khác có thể có sẵn nên hiện tại tôi vẫn để nó. Tôi cũng đã tạo ra một phiên bản thậm chí xấu hơn với kiểm tra lỗi và kết quả đẹp hơn một chút. Nhưng nó quá phức tạp để đăng ở đây.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.