Masu1991
Thành viên hoạt động



- Tham gia
- 21/3/20
- Bài viết
- 110
- Được thích
- 14
đúng rồi á anh ơi.Kết quả là dòng bôi xanh ấy ạ
Chào anh, theo dữ liệu trong file thì ngày âm sẽ là:Sao kết quả khác mẫu thế nhỉ?View attachment 280177
Ồ. Thế này thì phải có thêm 1 dòng ngày âm nữa.Chào anh, theo dữ liệu trong file thì ngày âm sẽ là:
View attachment 280178
Ngày 07/26 là ngày mặn chứ không phải chay á anh.
Âm lịch của tháng 7 sẽ không có ngày 30 nên ngày ăn chay sẽ được lùi lại là ngày 27. Anh xem lại giúp em
ngày đó có thể không cần hiển thị đâu anh, vì em giải thích thêm á.Ồ. Thế này thì phải có thêm 1 dòng ngày âm nữa.
Bạn chờ thành viên khác hỗ trợ vậy. Tại cho ngày dương mà bắt tính theo ngày âm. Mình không biết phải làm thế nào để đối chiếu cảngày đó có thể không cần hiển thị đâu anh, vì em giải thích thêm á.
Công thức tại B5 (Năm 2022 chưa sai nhưng năm khác có thể có vài ngày sai):Chào anh chị, Em có một ví dụ nhỏ như này, là dựa vào ngày dương lịch để tìm ra ngày âm lịch và xem ngày đó có phải là ngày ăn CHAY hay không, nếu ngày đó là ngày CHAY thì trả về kết quả CHAY, ngược lại thì MẶN
Em cảm ơn.
=IF(ISERROR(MATCH(--TEXT(B3,"[$-00110000]d"),CHOOSE(MAX(INDEX(--TEXT(ROW(INDIRECT(B3&":"&(B3+29))),"[$-00110000]d"),))-28,{1,8,14,15,18,23,24,27,28,29},{1,8,14,15,18,23,24,28,29,30}),0)),"MAN","CHAY")
cảm ơn anh rất nhiều, em kiểm tra xem thế nào ạ.Công thức tại B5 (Năm 2022 chưa sai nhưng năm khác có thể có vài ngày sai):
Mã:=IF(ISERROR(MATCH(--TEXT(B3,"[$-00110000]d"),CHOOSE(MAX(INDEX(--TEXT(ROW(INDIRECT(B3&":"&(B3+29))),"[$-00110000]d"),))-28,{1,8,14,15,18,23,24,27,28,29},{1,8,14,15,18,23,24,28,29,30}),0)),"MAN","CHAY")
Nhưng thế này thì không cần phải tra lịch mà bác. Khổ thằng viết thôiBà con tiện lợi nhỉ.
Tôi thì làm thủ công tuốt. Lấy quyển lịch năm, gõ bảng tra mấy ngày cần thiết. Hết.
Tôi không kiểm tra công thức cho B5, nhưng với B3 = 19.05.2023 - 31.05.2023 công thức TEXT(B3;"[$-00110000]yyyy-mm-dd") trả về 30/04/2023, 01/05/2023-12/05/2023Công thức tại B5 (Năm 2022 chưa sai nhưng năm khác có thể có vài ngày sai):
Mã:=IF(ISERROR(MATCH(--TEXT(B3,"[$-00110000]d"),CHOOSE(MAX(INDEX(--TEXT(ROW(INDIRECT(B3&":"&(B3+29))),"[$-00110000]d"),))-28,{1,8,14,15,18,23,24,27,28,29},{1,8,14,15,18,23,24,28,29,30}),0)),"MAN","CHAY")
Vâng em cũng nói rõ từ đầu là có sai với các năm khác vì em biết hàm này không đúng chuẩn 100% so với âm lịch. Số liệu bác đưa em cũng chưa kiểm tra nhưng em cũng không lấy làm ngạc nhiên vì em biết chắc sẽ có ngày sai . Chẳng qua em góp vui, nếu bạn ấy dùng ngắn hạn trong 2022 thì hình như vẫn đúngTôi không kiểm tra công thức cho B5, nhưng với B3 = 19.05.2023 - 31.05.2023 công thức TEXT(B3;"[$-00110000]yyyy-mm-dd") trả về 30/04/2023, 01/05/2023-12/05/2023
Kết quả đúng phải là: 01/04/2023-13/04/2023
Công thức --TEXT(B3;"[$-00110000]d") cũng sai vì trả về 30 cho ngày dương 19.05.2023, trong khi mong đợi là 1, còn với các ngày khác trả về kết quả nhỏ hơn mong đợi 1 đơn vị.
Các ngày dương đầu tháng 6 cũng thế. Tức với 01.06.2023-17.06.2023 sai về số ngày trả về. Còn nếu tính cả tháng thì sai nhiều lắm. Vd. ngày dương 30.06.2023 là ngày âm 13.05.2023 nhưng công thức TEXT(B3;"[$-00110000]yyyy-mm-dd") trả về ngày âm 13.06.2023
Tôi có thể nhầm lẫn (khả năng thấp) khi kiểm tra, nhưng ai muốn có thể tự kiểm tra lại. Tôi không khăng khăng là kết quả của tôi là chính xác.
Tuy nhiên kết quả sẽ có vấn đề khi năm âm lịch là năm nhuận. Tôi đoán mò thôi.
Anh tra ngày chay để ăn chay à? Tôi lấy lịch tháng, đánh dấu từng tháng thôi. Nhưng không phải để ăn chay, mà để tụng kinh Địa Tạng. Giờ cũng ngưng rồi.Bà con tiện lợi nhỉ.
Tôi thì làm thủ công tuốt. Lấy quyển lịch năm, gõ bảng tra mấy ngày cần thiết. Hết.
Tôi biết chứ. Tôi cố tình trích và tô đỏ một đoạn để chứng tỏ là bạn biết. Tôi chỉ đưa ra ví dụ cụ thể thôi. Mà nhìn ví dụ thì riêng về ngày sai 13 ngày liên tiếp (gần nửa tháng) còn nếu nói về date thì sai gần 1 tháng.Vâng em cũng nói rõ từ đầu là có sai
Không có chương trình thì phải. Chỉ có lịch âm hoàn chỉnh. Và có bài viết hướng dẫn tạo lịch âm mà trong đó có nhiều công thức, có công thức tính ngày âm từ ngày dương, rôi tính can, chi gì đó. Tóm lại là tất cả mọi công thức cần có để làm lịch âm.Hình như tác già Hồ Ngọc Đức có chương trình chuyển từ dương lịch sang âm & ngược lại ở mọi thời đại.
Nếu tôi ăn chay thì là tại tôi cần (lý do sức khỏe) hoặc thích (tôi biết có nhiều người, tự dưng đến một tuổi nào đó không thích ăn thịt cá nữa)Anh tra ngày chay để ăn chay à? Tôi lấy lịch tháng, đánh dấu từng tháng thôi. Nhưng không phải để ăn chay, mà để tụng kinh Địa Tạng. Giờ cũng ngưng rồi.
...
Các bạn có thể tham khảo thêm ở đây:Không có chương trình thì phải. Chỉ có lịch âm hoàn chỉnh. Và có bài viết hướng dẫn tạo lịch âm mà trong đó có nhiều công thức, có công thức tính ngày âm từ ngày dương, rôi tính can, chi gì đó. Tóm lại là tất cả mọi công thức cần có để làm lịch âm.
Truy tìm thông tin mất gần 30 phút mới giải quyết được đó. thuật toán bài trước đưa ra trước tôi, tôi chỉ xài khác hàm đi thôi. Khá khó vì có ít thông tin tra cứu, đây là bài đầu tiên trên diễn đàn thì phảiEm cảm ơn các Chú, Bác, Anh đã hỗ trợ ạ.
Tiểu đường không phải là do ăn nhiều đường mà do lối sống (ăn nhiều, ít vận động). Đường ăn vào thì nó sẽ thành năng lượng cho cơ thể hoạt động. Chỉ khi ta ăn nhiều mà không vận động đủ thì mới tích tụ đường trong máu cao dẫn đến tiểu đường. Các báo nhà ta thay vì khuyên mọi người nên giảm ăn, vận động nhiều mà lại khuyên hạn chế ăn đường nên đa phần mọi người đều nghĩ ăn nhiều đường là bị tiểu đường.Mồng Năm ăn bánh ú nước tro. Hồi xưa chấm đường, bi giờ sợ tiểu đường không chấm nữa vẫn ngon.
Em sử dụng Office 2019 nên không có hàm SEQUENCE này để chạy thử kết quả. vấn đề bài toán vẫn chưa tính ra được 2 tháng nhuận nếu rơi vào năm nhuận (2023)Truy tìm thông tin mất gần 30 phút mới giải quyết được đó. thuật toán bài trước đưa ra trước tôi, tôi chỉ xài khác hàm đi thôi. Khá khó vì có ít thông tin tra cứu, đây là bài đầu tiên trên diễn đàn thì phải
Tiểu đường còn là do trước đó 1 tiếng (đồng hồ) uống 1 lúc trên 4 lon bia gây ra . . . .Tiểu đường không phải là do ăn nhiều đường mà do lối sống (ăn nhiều, ít vận động). . . . . . . . . . . .mới tích tụ đường trong máu cao dẫn đến tiểu đường.
Chào anh, em có tham khảo hàm tự tạo từ 1 bài viết trên GPE tính ra được năm nhuận nhưng em không biết thiết lập công thức thế nào để ra CHAY và MAN. phiền (Các) anh xem qua hỗ trợ giúp em ạ.Công thức tại B5 (Năm 2022 chưa sai nhưng năm khác có thể có vài ngày sai):
Mã:=IF(ISERROR(MATCH(--TEXT(B3,"[$-00110000]d"),CHOOSE(MAX(INDEX(--TEXT(ROW(INDIRECT(B3&":"&(B3+29))),"[$-00110000]d"),))-28,{1,8,14,15,18,23,24,27,28,29},{1,8,14,15,18,23,24,28,29,30}),0)),"MAN","CHAY")
Không có hàm đó xài tạm dạng nàyEm sử dụng Office 2019 nên không có hàm SEQUENCE này để chạy thử kết quả. vấn đề bài toán vẫn chưa tính ra được 2 tháng nhuận nếu rơi vào năm nhuận (2023)
=IFERROR(IF(MAX(VALUE(TEXT(B3+ROW(1:30),"[$-00131066] d")))=30,VLOOKUP(VALUE(TEXT(B3,"[$-00131066] d")),$J$4:$K$13,2,0),VLOOKUP(VALUE(TEXT(B3,"[$-00131066] d")),$L$4:$M$13,2,0)),"MAN")
Cảm ơn anh, trường hợp này có thể đúng với năm 2022, nhưng nếu sang nằm nhuận 2023 thì kết quả sai:Không có hàm đó xài tạm dạng này View attachment 280201
Bài đã được tự động gộp:
Do hàm max khử mảng nên không cần công thức mảng. rút gọn
View attachment 280207Mã:=IFERROR(IF(MAX(VALUE(TEXT(B3+ROW(1:30),"[$-00131066] d")))=30,VLOOKUP(VALUE(TEXT(B3,"[$-00131066] d")),$J$4:$K$13,2,0),VLOOKUP(VALUE(TEXT(B3,"[$-00131066] d")),$L$4:$M$13,2,0)),"MAN")
Khá tốn ảnh chụp màn hình
Đơn giản. công thức sửa lại chút, xài hàm động vẫn OK mà. Dấu "-" tai hạiCảm ơn anh, trường hợp này có thể đúng với năm 2022, nhưng nếu sang nằm nhuận 2023 thì kết quả sai:
View attachment 280210
Anh xem bài #28 xem có giải quyết được vấn đề không anh.
Thôi công thức mệt quá thì chuyển qua code vậy, bạn test thử các kết quả khác xem sao nhé:Chào anh, em có tham khảo hàm tự tạo từ 1 bài viết trên GPE tính ra được năm nhuận nhưng em không biết thiết lập công thức thế nào để ra CHAY và MAN. phiền (Các) anh xem qua hỗ trợ giúp em ạ.
Link em tham khảo: https://www.giaiphapexcel.com/diendan/threads/Ý-tưởng-lẬp-cÔng-thỨc-chuyỂn-ĐỔi-qua-lẠi-ngÀy-dƯƠng-lỊch-ngÀy-Âm-lỊch.9994/post-112267
Chấm mật mía chứ anh.Mồng Năm ăn bánh ú nước tro. Hồi xưa chấm đường, bi giờ sợ tiểu đường không chấm nữa vẫn ngon.
Bánh này thì ngon quá, bổ sung nhiều chất xơ.Bánh lá gai nữa.
Ngoài Bắc bây giờ cũng mai một rồi anh ơi, hầu như không còn nữa.Tết thì được ăn chè kho.
Cảm ơn anh, và cảm ơn các anh đã hỗ trợ em ạ.Thôi công thức mệt quá thì chuyển qua code vậy, bạn test thử các kết quả khác xem sao nhé:
Cách dùng: chay_man(ngày dương lịch, [vùng chay 29], [vùng chay 30])
2 tham số sau có thể bỏ qua không nhập (nếu không nhập thì lấy ngày như trên bảng tính bạn đang lập sẵn, muốn sửa thì trong module Main có function đó tự sửa ngày). Còn nếu có chọn vùng thì sẽ lấy ngày theo vùng chọn trên bảng tính
Lưu ý nữa: Nếu chọn vùng thì vùng đó phải trên một cột (dạng đứng), nếu nằm ngang phải sửa code
Sửa: Chỉnh lại code giảm bớt vòng lặp
Trong Nam ít xài mật mía. Đường là một cục như bánh xà bông, gọi là đường tán, hoặc thẻ dầy khoảng 8mm, gọi là đường thẻ. Người ta dùng muỗng cạo ra bột rồi chấm. (cái này dùng cho món xoài tượng chấm mắm đường thì hết chê)[bánh ú nước tro]
Chấm mật mía chứ anh.
Bây giờ những món dân dã người ta hay chế biến thêm cho cầu kỳ để bán giá cao. Nhiều chỗ còn xạo là "đặc sản miền".Bánh này thì ngon quá, bổ sung nhiều chất xơ.
Ngày xưa luộc lá rồi thái nhỏ cho vào cối đá giã bằng tay, được mẻ bột bánh mệt nhừ luôn. Bây giờ dùng máy xay chạy điện rồi.
Không có chè kho thì món ngọt trên bàn cúng Tết được thay bằng gì?Ngoài Bắc bây giờ cũng mai một rồi anh ơi, hầu như không còn nữa.
Nói chuyện theo kiểu tội phạm không phải do con người mà do xã hội. Ai cũng biết vậy nhưng bảo bãi bỏ việc trừng phạt tội phạm (không phạt, không tù gì cả) mà chỉ nên chú trọng vào giáo hóa người phạm tội và nâng tầm tri thức xã hội. Xin thưa rằng trái đất không phải thiên đường, ngân sách Mẽo còn chịu thua, huống gì mấy nước chưa tiến triển.Tiểu đường không phải là do ăn nhiều đường mà do lối sống (ăn nhiều, ít vận động). Đường ăn vào thì nó sẽ thành năng lượng cho cơ thể hoạt động. Chỉ khi ta ăn nhiều mà không vận động đủ thì mới tích tụ đường trong máu cao dẫn đến tiểu đường. Các báo nhà ta thay vì khuyên mọi người nên giảm ăn, vận động nhiều mà lại khuyên hạn chế ăn đường nên đa phần mọi người đều nghĩ ăn nhiều đường là bị tiểu đường.
Trong bài #9 bạn Nhattanktnn đã cảnh báo cái saiCảm ơn anh, trường hợp này có thể đúng với năm 2022, nhưng nếu sang nằm nhuận 2023 thì kết quả sai:
Năm 2022 chưa sai nhưng năm khác có thể có vài ngày sai
Dạ, em có kiểm tra ở bài anh nói về những lỗi đó. ý em là làm sao để khắc phục cái lỗi sai đó á anh.Trong bài #9 bạn Nhattanktnn đã cảnh báo cái sai
Còn tôi trong bài #13 đã chỉ ra cụ thể các ngày sai (chỉ ví dụ chứ không chỉ ra hết) khi dùng TEXT(B3,"[$-00110000]d")
Dùng TEXT(B3;"[$-00131066] d") cũng cho kết quả sai y hệt. Tôi đã chỉ ra "nơi sai" mà không kiểm tra là sao? Biết các ngày cần kiểm tra thì cứ kiểm tra đi khắc biết.
Trong bài #28 bạn viếtDạ, em có kiểm tra ở bài anh nói về những lỗi đó. ý em là làm sao để khắc phục cái lỗi sai đó á anh.
Tôi hiểu là bạn có hàm nhận ngày tháng dương lịch và trả về âm lịch. Tức bạn không dùng TEXT nữa, tức là bạn đã khắc phục rồi còn gì. Tại sao bạn còn hỏi cách khắc phục?Chào anh, em có tham khảo hàm tự tạo từ 1 bài viết trên GPE tính ra được năm nhuận
Dạ, Em chỉ trả lời lại bài viết của anh 87kilua , chứ ngoài ra em cũng chờ sự hỗ trợ để hoàn thiện file báo cáo anh ạ.Trong bài #28 bạn viết
Tôi hiểu là bạn có hàm nhận ngày tháng dương lịch và trả về âm lịch. Tức bạn không dùng TEXT nữa, tức là bạn đã khắc phục rồi còn gì. Tại sao bạn còn hỏi cách khắc phục?
Đã có ngày âm lịch do hàm tự tạo trả về thì viết công thức dùng hàm đó để trả về CHAY, MAN thôi. Hoặc nhờ ai đó viết hộ công thức dùng hàm tự tạo để trả về CHAY, MAN. Nhờ rồi thì kiên nhẫn chờ thôi.
Việc xác định ngày âm đã làm được nhờ code trong bài #28 thì việc còn lại là viết công thức cho CHAY, MAN. Không còn phải khắc phục cái lỗi sai gì nữa.
1. Module1 là Module mà bạn sưu tầm.Dạ, Em chỉ trả lời lại bài viết của anh 87kilua , chứ ngoài ra em cũng chờ sự hỗ trợ để hoàn thiện file báo cáo anh ạ.
Dạ chân thành cảm ơn anh đã hỗ trợ giúp đỡ em ạ.1. Module1 là Module mà bạn sưu tầm.
2. Tôi sửa lại hàm TransLu vì rõ ràng sai. Trong hàm có Call lunar(m, d, y), nhưng lunar nhận 3 tham số theo thứ tự d, m, y. Vậy phải là Call lunar(d, m, y). Trong hàm TransLu1 có đúng theo thứ tự d, m, y vì là Call lunar(Day(NT), Month(NT), Year(NT))
3. Tôi không kiểm tra code trong Module1 ngoài điểm 2. Tôi không đảm bảo code Module1 là đúng. Đây là Module mà bạn sưu tầm, không phải là của tôi.
4. Tôi viết thêm hàm IsLu30 để dùng trong vấn đề của bạn. Nếu không có nó thì công thức phức tạp hơn. Đã viết code thì sao lại phải viết công thức phức tạp hơn, đúng không? Hãy đọc chú thích của tôi trong hàm để hiểu nó làm gì.
Giả thiết là code Module1 là đúng. Ta sử dụng 2 hàm TransLu1 và IsLu30 để viết công thức trong B:H7
Dạ chân thành cảm ơn anh đã hỗ trợ giúp đỡ em ạ.
Sau khi thử công thức thì em thấy chỗ này ra chưa đúng á anh. Ngày 09/03 tức là ngày Mồng 8 nên ngày này phải là ngày chay mới đúng anh ạ.
View attachment 280251
Mình định dạng MM/dd/yyyy, tức là ngày 03 tháng 09 năm 2022 thì kết quả sẽ sai. nên phải định dạng lại thành dd/mm/yyyy thì mới đúng theo công thức của anh Batman1View attachment 280255
09/03/2022 DL là ngày 07/02/Nhâm dần.
mình chỉ nhập vào 1 ngày đầu tuần thôi, còn những ngày sao là mình +1 lên. Mình thử thì bị vấn đề như vậy.Định dạng mm/dd/yyy đâu có liên quan đến ngày âm lịch sai.
View attachment 280267
Dạ chân thành cảm ơn anh đã hỗ trợ giúp đỡ em ạ.
Nếu vậy thì em phải chỉnh lại ngày giờ hệ thống dd/mm/yyyy
Trong Control Panel bạn muốn thiết lập thế nào cũng được. Miễn là khi nhập ngày tháng bạn phải nhập thật chuẩn, tức phải theo đúng thứ tự như trong CP.mình chỉ nhập vào 1 ngày đầu tuần thôi, còn những ngày sao là mình +1 lên. Mình thử thì bị vấn đề như vậy.
bạn nhập là ngày 09 tháng 03. còn của mình là ngày 03 tháng 9.
Có khi nhiều lắm. Hết mệt lại đến đau đầu, đau bụng, cảm cúm.Vô đây xem nhiều mà chưa tham gia.
Cứ hỏi thông tin từ bx thì ra ngay ngày nào "chay" ngày nào "mặn" hàng tháng.
Khoảng 3-4 ngày gì đó.