Đếm ô được tô màu bởi CF

  • Thread starter Thread starter boyxin
  • Ngày gửi Ngày gửi
Liên hệ QC

boyxin

Members actively
Tham gia
10/3/08
Bài viết
1,664
Được thích
2,335
Chào các bác

- Em có 1 tờ lịch cố định từ tháng 9 của năm này đến hết tháng 5 của năm sau (1 năm học)
- Sheet Ghichu để ghi lại những thời điểm (mốc) của năm học
----------------------------
Làm phiền các bác giúp em 1 số việc như sau:
  1. Những ngày có sự kiện trên lịch được đổi màu nền, số in đậm hơn
  2. Em muốn: các ghi chú được hiện bên trang lịch theo đúng ngang hàng với TUẦN
  3. Nếu 1 tuần có 2 sự kiện thì hiện sự kiện có thời gian sớm hơn
  4. Xác định giúp em thời gian mồng 5 tết âm lịch
  5. Đếm trong 1 năm học xem mỗi thứ trong tuần có bao nhiêu sự kiện
----------------------------
T/B em làm mãi mà vẫn thấy chẳng vừa ý gì cả mà chẳng biết tại chỗ nào

___________________________
Vấn đề của em đã được các bác nhiệt tình giúp đỡ đặc biệt là bác anhtuan1066
Em xóa file đê giải phóng tài nguyên
 
Lần chỉnh sửa cuối:
Tôi kiểm tra sơ bộ thấy cái LICH của bạn nó.. kỳ cục quá... Ngày tháng trong LICH chẳng qua chỉ là con số 1,2,3,... 30... chứ nó hoàn toàn ko đúng là ngày tháng... Vậy thì thật là khó khăn cho sự so sánh đó...
Bạn cố gắng chuyển nó thành đúng NGÀY THÁNG thì mọi chuyện còn lại ko có vấn đề!
ANH TUẤN

Đây... tôi sửa cho bạn luôn đây... NGAY THANG NAM trong lịch này mới đúng là ngày tháng năm...
Bạn chỉ cần chú ý thêm 1 điểm nữa, đó là NGÀY THÁNG ÂM LỊCH của năm nay khác với các năm khác... Vậy bạn hãy dùng cách gì đó để LỊCH có thể phân biệt dc cái nào là tết nguyên đán của năm nay, cái nào là tết nguyên đán của năm sau.. vân vân...
Mến
ANH TUẤN
 

File đính kèm

Chỉnh sửa lần cuối bởi điều hành viên:
thank anhtuan1066

Tôi kiểm tra sơ bộ thấy cái LICH của bạn nó.. kỳ cục quá... Ngày tháng trong LICH chẳng qua chỉ là con số 1,2,3,... 30... chứ nó hoàn toàn ko đúng là ngày tháng... Vậy thì thật là khó khăn cho sự so sánh đó...
Bạn cố gắng chuyển nó thành đúng NGÀY THÁNG thì mọi chuyện còn lại ko có vấn đề!
ANH TUẤN

A- Ngày tháng trong lịch vẫn đúng đó chứ


B- Mình muốn ngày đầu tuần là thứ 2 nên chuyển như vậy, còn lịch của đồng chí là để ngày đầu tuần là chủ nhật
---------------------------
Rất mong các bác giúp thêm phần này
  1. Xác định giúp em thời gian mồng 5 tết âm lịch
  2. Đếm trong 1 năm học xem mỗi thứ trong tuần có bao nhiêu sự kiện
 
A- Ngày tháng trong lịch vẫn đúng đó chứ
Nhìn thì thấy đúng nhưng thật ra nó ko đúng.. Bạn copy 1 cell rồi paste Special\Value ra 1 cell khác sẽ biết liền (tôi đoán ko lầm thì năm của nó là năm 1900.. Quá kỳ cục luôn)
Việc sắp CN nằm đầu tiên mang ý nghĩa rất đặc biệt đối với thuật toán, lý do vì Weekday(ngày CN) = 1 , là số nhỏ nhất... tiếp theo sẽ xếp tăng dần đến thứ bảy... Nếu bạn xếp thứ 2 nằm đầu sẽ gây khó khăn thêm mà thôi... (tất nhiên vẫn làm dc, nhưng.. khó)
Về mùng 5 âm lịch thì bạn tự kiểm tra theo lịch chứ sao mà nhớ nổi
Phần đếm càng dể... Nhìn thấy công thức trong cột phụ của tôi ko? Bạn copy nó qua 1 cột khác, sửa MIN thành COUNT là xong!
ANH TUẤN
 
Lần chỉnh sửa cuối:
Việc sắp CN nằm đầu tiên mang ý nghĩa rất đặc biệt đối với thuật toán, lý do vì Weekday(ngày CN) = 1 , là số nhỏ nhất... tiếp theo sẽ xếp tăng dần đến thứ bảy... Nếu bạn xếp thứ 2 nằm đầu sẽ gây khó khăn thêm mà thôi... (tất nhiên vẫn làm dc, nhưng.. khó)
Anh Tuấn ơi, hàm WEEKDAY() vẫn trả thứ hai về 1 nếu được viết dưới dạng =WEEKDAY(ngày cần tìm,2) đấy.
 
Anh Tuấn ơi, hàm WEEKDAY() vẫn trả thứ hai về 1 nếu được viết dưới dạng =WEEKDAY(ngày cần tìm,2) đấy.
Vâng ạ! Cái này tôi biết... nhưng đang nói chung chung dành cho tất cả những ai chưa biết về điều này... hi.. hi...
Bạn Boyxin chú ý thêm 1 chuyện quan trọng nữa:
1> Ngày ghi nhớ dương lịch thì cố định rồi nên ta có thể nhập theo dạng text (dd-mm).. nhưng bạn cũng nên thống nhất cách nhập: DAY 2 ký tự và MONTH 2 ký tự (sẽ dể dàng cho bạn thiết lập hàm)
2> Ngày tháng Âm lịch khác nhau theo từng năm nên tôi nghĩ bạn phải nhập đầy đủ (dd-mm-yyyy)
3> Cột D trong sheet GHICHU bạn sẽ xem xét, nếu ngày nhập có dạng dd-mm thì sẽ ráp lại theo kiểu dd-mm- năm theo Calendar .. Bằng ngược lại thì lấy đúng dd-mm-yyyy của cell trong cột A luôn
ANH TUẤN
 
Lần chỉnh sửa cuối:
.......
3> Cột D trong sheet GHICHU bạn sẽ xem xét, nếu ngày nhập có dạng dd-mm thì sẽ ráp lại theo kiểu dd-mm- năm theo Calendar .. Bằng ngược lại thì lấy đúng dd-mm-yyyy của cell trong cột A luôn
ANH TUẤN

Phần này khó quá, mong được anhtuan1066 và các bác chỉ giáo thêm

___________________________
Vấn đề của em đã được các bác nhiệt tình giúp đỡ đặc biệt là bác anhtuan1066
Em xóa file đê giải phóng tài nguyên
 
Lần chỉnh sửa cuối:
Tôi làm sơ qua cho bạn đây!
Góp ý: Tôi chưa hiểu lắm về các công thức trong lịch nhưng theo tôi thì bạn nên cố gắng bằng cách nào đó để cho mọi công thức trong lịch đều giống nhau... Làm dc như vậy thì bạn chỉ cần làm công thức trong 1 tháng, copy và paste qua 11 tháng còn lại, thế mới thuận tiện khi ta có việc phải chỉnh sửa (giống như tôi đã làm ở bài số #2)
Mến
ANH TUẤN
 

File đính kèm

Tôi làm sơ qua cho bạn đây!
Góp ý: Tôi chưa hiểu lắm về các công thức trong lịch nhưng theo tôi thì bạn nên cố gắng bằng cách nào đó để cho mọi công thức trong lịch đều giống nhau... Làm dc như vậy thì bạn chỉ cần làm công thức trong 1 tháng, copy và paste qua 11 tháng còn lại, thế mới thuận tiện khi ta có việc phải chỉnh sửa (giống như tôi đã làm ở bài số #2)
Mến
ANH TUẤN
Hiiiiii cảm ơn anhtuan1066 nhiều lắm

Tạo tờ lịch này:
PHP:
1-  C4=IF(WEEKDAY(DATE(IF($B4>7,$J$2,$J$2+1),$B4,1))=C$2,DATE(IF($B4>7,$J$2,$J$2+1),$B4,1),"")
2-  D4=IF($A4=MAX($C4:C4),"",IF(C4<A4,C4+1,IF(C4="",IF(WEEKDAY(DATE(IF($B4>7,$J$2,$J$2+1),$B4,1))=D$2,DATE(IF($B4>7,$J$2,$J$2+1),$B4,1),""),C4+1)))
     + chọn D4 kéo fill đến I4
     + chọn D4:I4 kéo fill xuống D5:I5
3-  C5=IF($B5=6,"",IF(I4<A4,I4+1,IF(WEEKDAY(DATE(IF($B5>7,$J$2,$J$2+1),$B5,1))=C$2,DATE(IF($B5>7,$J$2,$J$2+1),$B5,1),"")))
4-  B5=IF(MAX(C4:I4)>=A4,IF(B4+1>12,MOD((B4+1),12),B4+1),B4)

Chỉ cần chọn B5:I5 rồi kéo fill xuống thế là xong (còn có thêm lựa chọn ngày đầu tuần là Chủ nhật hoặc là Thứ 2)
 
Tôi thử đưa lên 1 file khác đã chỉnh sửa... 1 công thức duy nhất ko có cột phụ A... Bạn tham khảo xem thế nào nhé...
Bạn chú ý công thức:
Mã:
DATE($A$1,A4,1)-WEEKDAY(DATE($A$1,A4,1),$A$2+1)+DONG*7+COT
Đây chính là công thức ngắn gọn nhất để làm 1 tờ lịch
(Tham số $A$2+1 nằm trong Weekday chẳng qua để thỏa mãn nhu cầu bạn muốn thay đổi thứ 2 hoặc CN là ngày đầu tuần)
ANH TUẤN
 

File đính kèm

Quyển lịch và chúng ta đang làm cũng hay, nhưng có 1 hạn chế đáng tiếc là: Nếu trong 1 tuần mà có từ 2 ngày ghi nhớ trở lên thì nó ko thể hiển thị dc hết
Vậy tôi gữi bạn 1 kiểu lịch khác nữa có thể giãi quyết dc hạn chế này mà công thức lại ngắn gọn hơn!.. bạn hãy chế biến thêm nếu thích...
Mến
ANH TUẤN
 

File đính kèm

Help: Tạo tờ lịch (âm lịch)

Liệu có thể tạo 1 tờ lịch (âm lich) không nhỉ? Làm phiền các cao thủ tạo lịch (âm lịch) trợ giúp
 
Liệu có thể tạo 1 tờ lịch (âm lich) không nhỉ? Làm phiền các cao thủ tạo lịch (âm lịch) trợ giúp
Lịch Âm công thức rắc rối lắm...
Bạn có thể làm đơn giản hơn là tìm 1 cái lịch nào đó, copy phần âm lịch vào file của mình (khoảng độ 3 năm là xài mệt nghĩ rồi), sau đó bạn dùng VLOOKUP để dò tìm từ dương lịch sang âm lịch!
Nhớ ko lầm thì trong tờ lịch mà ThuNghi thiết kế có nguyên cột âm lịch, bạn nghiên cứu thử xem....
------------------------
Ai chà chà... vừa mới tìm lại topic của Thunghi thì thấy hình như ThuNghi đã xóa lịch ấy rồi...
May mắn tôi có lưu trong máy, giờ post lại cho bạn tham khảo nha!
ANH TUẤN

Với file trên, có tiếp 1 bài toán cho bạn nghiên cứu đây!
Làm thế nào để phần tháng biến đổi tuần hoàn từ 9,10,11,12,1,2,3,4,5... rồi lại 9,10,11,12,1,2,3,4,5... (bỏ qua 6,7,8)... và đương nhiên 9,10,11,12 là tháng của năm này thì 1,2,3,4,5 là tháng của năm sau...
Làm cách nào cũng dc, miển ko dc.. IF.. he.. he... thế mới hay.. (càng ngắn gọn càng tốt)
Tiếp nhé!
ANH TUẤN
 

File đính kèm

Chỉnh sửa lần cuối bởi điều hành viên:
Với file trên, có tiếp 1 bài toán cho bạn nghiên cứu đây!
Làm thế nào để phần tháng biến đổi tuần hoàn từ 9,10,11,12,1,2,3,4,5... rồi lại 9,10,11,12,1,2,3,4,5... (bỏ qua 6,7,8)... và đương nhiên 9,10,11,12 là tháng của năm này thì 1,2,3,4,5 là tháng của năm sau...
Làm cách nào cũng dc, miển ko dc.. IF.. he.. he... thế mới hay.. (càng ngắn gọn càng tốt)
Tiếp nhé!
ANH TUẤN

TO anhtuan1066: với bài làm thế này thì được mấy điểm?
 

File đính kèm

Tôi phát hiện ra 1 điểm vô lý trong quyển lịch này... Giờ ta giã định tình huống thế này nhé:
Có 1 anh bạn nhìn thấy file LICH hay quá nên xin về xài... Mục đích của anh ta chỉ là ghi lại những ngày kỹ niệm... Vào ngày 01/05 năm nay anh ta vừa mới sinh dc đứa con trai, thế là anh ta điền vào ghi chú: 01-05 Sinh nhật con trai
Thế thì điêu gì sẽ xãy ra khi anh ta tình cờ lật quyển lịch trở về năm 2000 ? Ha... ha... Năm 2000 vào ngày 01-05 trên quyển lịch cũng ghi chú là : Sinh nhật con trai ---> VÔ LÝ
Hay ta chọn năm là 1974, có thật là ngày 30/4 là ngày GIÃI PHÓNG MIỀN NAM ko?
Vậy bạn nghĩ sao? Sửa lại cái gì trong quyển lịch này đây?
ANH TUẤN
 
1- Vào ngày 01-05 năm nay anh ta vừa mới sinh dc đứa con trai, thế là anh ta điền vào ghi chú: 01-05 Sinh nhật con trai thì cần có cách nào đó (dùng format hoặc hiện thông báo) để anh ta phải ghi là 01-05-năm nay)
PHP:
Ô GHICHÚ =IF(OR(TEXT(F4,"dd-mm-yyyy")=Data),INDEX(SK,MATCH(TEXT(F4,"dd-mm-yyyy"),Data,0),1),IF(OR(F4=Date),INDEX(SK,MATCH(F4,Date,0),1),""))
Thì khi anh ta tình cờ lật quyển lịch trở về năm 2000 ? Ha... ha... Năm 2000 vào ngày 01-05 trên quyển lịch không thể có ghi chú là : Sinh nhật con trai màvẫn là quốc tế lao động---> KHÔNG HỀ VÔ LÝ
2- Không cho chọn được năm là 1974 hoặc thêm điều kiện năm >=1975 thì mới hiện ghi chú ngày 30-04
 
Lần chỉnh sửa cuối:
1- Vào ngày 01-05 năm nay anh ta vừa mới sinh dc đứa con trai, thế là anh ta điền vào ghi chú: 01-05 Sinh nhật con trai thì cần có cách nào đó (dùng format hoặc hiện thông báo) để anh ta phải ghi là 01-05-năm nay)
PHP:
Ô GHICHÚ =IF(OR(TEXT(F4,"dd-mm-yyyy")=Data),INDEX(SK,MATCH(TEXT(F4,"dd-mm-yyyy"),Data,0),1),IF(OR(F4=Date),INDEX(SK,MATCH(F4,Date,0),1),""))
Thì khi anh ta tình cờ lật quyển lịch trở về năm 2000 ? Ha... ha... Năm 2000 vào ngày 01-05 trên quyển lịch không thể có ghi chú là : Sinh nhật con trai màvẫn là quốc tế lao động---> KHÔNG HỀ VÔ LÝ
2- Không cho chọn được năm là 1974 hoặc thêm điều kiện năm >=1975 thì mới hiện ghi chú ngày 30-04
Bạn thử đưa file lên xem nào! Tôi nghĩ ko đơn giãn thế, vì khi ta nhập vào 01-05 (dạng text) thì có cái gì xác định rằng ta đang muốn nói đến 01-05-2008.. hoặc như ta nhập 30-04 (dạng text) thì có cái gì xác định rằng đây là năm 1975?
Bạn nghĩ xem! Tôi e rằng phải thay đổi phần nhập liệu, nhập đầy đủ ngày tháng năm theo dạng DATE (dd/mm/yyyy).. thêm 1 cột nữa ghi chú nó là ÂM LỊCH hay DƯƠNG LỊCH...
 
Tôi gữi lên thử file tôi vừa làm xong... Tuy có đặt thêm điều kiện nhưng lại gọn gàng hơn file củ rất nhiều...
Mọi người có thể dùng nó để làm ghi nhớ riêng cho mình... Lịch tính từ năm 1900 đến 2050
Chú ý: trong sheet Ghinho, nếu ngày ghi nhớ là âm lịch thì hãy gõ vào cột ghi chú chử AL nhé
Mến
ANH TUẤN
 

File đính kèm

Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom