minhsondaklak
Thành viên mới

- Tham gia
- 21/11/07
- Bài viết
- 29
- Được thích
- 41
Công thức này hơi bị hay đó, anh Ndu à.Riêng với công thức tính thứ thì bạn làm hơi bị dư, cần gì bảng phụ!
Vầy nè:
=IF(WEEKDAY(E5)=1,"Chủ nhật","Thứ "&WEEKDAY(E5))
Đúng vậy ---> Làm theo kết quả của tác giã màCông thức này hơi bị hay đó, anh Ndu à.
Nhưng theo em, nếu dùng để tự động điền vào một cái biểu mẫu gì đó thì ... e rằng hỏng được.
Có bao giờ, anh ghi rằng: "Hôm nay là thứ 2, ngày 16 tháng 2..." hông?
Em nghĩ là không, mà anh sẽ ghi như vầy: "Hôm nay là thứ Hai, ngày 16 tháng 2..."
Có phải không ạ?
Không thích WEEKDAY thì có cái này:Rất vui khi nhận được nhiều ý kiến chia sẽ của các bạn.
Để mình kiểm tra lại xem nhé, sao mà ngắn gọn được thế nhỉ !
Riêng công thức xác định thứ của mình là tính trực tiếp, không dựa vào hàm WEEKDAY() đâu nhé, nên có cái hay của nó đấy, dành cho "lính mới" tham khảo mà !
Bên sheet Can_Chi, công thức của bạn cũng dài ---> Đã lở rồi cho dài luôn:Rất hay, thank !
Cứ phải đưa lên GPE mới thấy cái hay cái dở, chứ không cứ tưởng thế là nhất rồi ... he he
Còn Protect sheet là để khỏi lỡ tay xoá thôi chứ có gì đâu bạn?
=CHOOSE(MOD((G4-4),10)+1,"Giáp ","Ất ","Bính ","Đinh","Mậu","Kỷ","Canh","Tân","Nhâm","Quý")&" "&CHOOSE(MOD((G4-4),12)+1,"Tí ","Sữu","Dần","Mẹo","Thìn","Tỵ","Ngọ","Mùi","Thân","Dậu","Tuất","Hợi")
Bạn qua đây nè: http://www.giaiphapexcel.com/forum/showthread.php?t=18963Cái này hay quá, cảm ơn bạn
Nhưng bạn có thể gắn thêm mạng vào nữa được không?
ví dụ: Năm 1970; can chi: Canh Tuất; Mạng: Thủy
...
Nếu muốn ngắn, ta đặt name
Can ={"Tí ","Sữu","Dần","Mẹo","Thìn","Tỵ","Ngọ","Mùi","Thân","Dậu","Tuất","Hợi"}
Chi={"Giáp ","Ất ","Bính ","Đinh","Mậu","Kỷ","Canh","Tân","Nhâm","Quý"}
Và cuối cùng là công thức:
=INDEX(Chi,,MOD((G4-4),10)+1)&" "&INDEX(Can,,MOD((G4-4),12)+1)
Vẫn không cần cột phụ luôn ---> GỌN GÀNG
Bạn vào menu Insert > Name > Define... Tụi nó trốn ở trong đó đó.À mà cái vùng name can - chi trong file của bạn ẩn đi đâu mà không thấy nhỉ ?
Sao bạn không dùng Choose cho code ngắn lại:Bạn thử xem cách này nhé: Hãy viết Modul sau:
Function thu(ByVal ngay As Date) As String
Dim kq
Select Case Weekday(ngay)
Case 1
kq = "Chñ nhËt"
Case 2
.......
End Select
thu = kq
End Function
Roi bạn dùng Hàm là "=thu(ô ngày)" là được mà
Có 2 chiện:Sao bạn không dùng Choose cho code ngắn lại:
[highlight=vb]
Function Thu(ByVal Ngay As Date) As String
Thu = Choose(Weekday(Ngay),"Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ bảy")
End Function
[/highlight]