Chuyển VBA -> công thức.

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

ThuNghi

Hãy cho rồi sẽ nhận!
Thành viên đã mất
Tham gia
16/8/06
Bài viết
3,808
Được thích
4,449
To: LearnExcel
Nhờ bạn chuyển hộ Code sau thành công thức
Mã:
Function STerm(y, n)
    STermInfo = Array(0, 21208, 42467, 63836, 85337, 107014, 128867, 150921, 173149, 195551, 218072, 240693, 263343, 285989, 308563, 331033, 353350, 375494, 397447, 419210, 440795, 462224, 483532, 504758)
    STerm = DatePart("d", DateAdd("n", 525948.766245 * (y - 1900) + STermInfo(n), #1/5/1900 6:03:56 PM#))     'tieu han gio HN 18:03:56 GMT 05/01/1900
 End Function
Cám ơn nhiều!
 
ThuNghi đã viết:
To: LearnExcel
Nhờ bạn chuyển hộ Code sau thành công thức
Mã:
Function STerm(y, n)
    STermInfo = Array(0, 21208, 42467, 63836, 85337, 107014, 128867, 150921, 173149, 195551, 218072, 240693, 263343, 285989, 308563, 331033, 353350, 375494, 397447, 419210, 440795, 462224, 483532, 504758)
    STerm = DatePart("d", DateAdd("n", 525948.766245 * (y - 1900) + STermInfo(n), #1/5/1900 6:03:56 PM#))     'tieu han gio HN 18:03:56 GMT 05/01/1900
 End Function
Cám ơn nhiều!

Chuyển thành công thức nhưng bác phải nói sơ qua về nó chứ
Cái anh chàng STermInfo có qui luật gì không vậy ???
Rồi anh chàng STerm thực ra là để làm gì vậy ??

Bác có hẳn một mớ định nghĩa, sau đó bác cô gọn thành 1 công thức VBA, bây giờ bác đưa cái cô gọn đó cho tụi em thì e rằng chẳng khác nào đưa cho người khác ít cao hổ cốt mà lại bảo họ . . . vẽ con hổ.

Thân!
 
Upvote 0
Hàm này để tìm ngày tiết khí
http://vi.wikipedia.org/w/index.php?title=Ti%E1%BA%BFt_kh%C3%AD&printable=yes

Sterm -> Solar Term

Chàng STermInfo có qui luật gì không vậy
chàng thật ra là vị trí các điểm chia trên quĩ đạo của măt phẳng hòang đạo, tính xấp xỉ theo phút. thử nhé một năm 365.2421944 x 24 x 60 = 525948.76

Ở trang này sẽ giải thích thêm http://bbs.bc-cn.net/Article/20077/20/156947.html

STerm = DatePart đây là hàm tính chênh lệch giưa 2 ngày, tham số "n" trả về tính bằng phút.

Bộ đôi này gồm
Function STerm(y, n)
STermInfo = Array(0, 21208, 42467, 63836, 85337, 107014, 128867, 150921, 173149, 195551, 218072, 240693, 263343, 285989, 308563, 331033, 353350, 375494, 397447, 419210, 440795, 462224, 483532, 525948.76) '504758)
STerm = DatePart("d", DateAdd("n", 525948.766245 * (y - 1900) + STermInfo(n), #1/5/1900 6:03:56 PM#)) 'tieu han gio HN 18:03:56 GMT 05/01/1900
End Function
'//////Tiet khi
Function TIETKHI(x As Date)
'Solarterm = Array("Tieu Han", "Dai Han", "Lap Xuan", "Vu Thuy", "Kinh Trap", "Xuan Phan", "Thanh Minh", "Coc Vu", "Lap Ha", "Tieu Man", "Mang Chung", "Ha Chi", "Tieu Thu", "Dai Thu", "Lap Thu", "Xu Thu", "Bach Lo", "Thu Phan", "Han Lo", "Suong Giang", "Lap Dong", "Tieu Tuyet", "Dai Tuyet", "Dong chi")
t1 = Month(x + 1) * 2 - 2
t2 = t1 + 1
If STerm(Year(x), t1) = Day(x) Then TIETKHI = Sheets("dataUni").Cells(t1 + 2, 8).Value 'Solarterm(t1)
If STerm(Year(x), t2) = Day(x) Then TIETKHI = Sheets("dataUni").Cells(t2 + 2, 8).Value 'Solarterm(t2)
End Function

Anh Tiêtkhi(x as Date) sẽ kiểm tra ví dụ hôm nay có phải là 1 trong 24 ngày Tiết hay khí không.

Tuy nhiên thuật tóan này chưa chính xác, tôi vẫn đang tìm và cập nhật cho đúng.

Xin mời tham khảo thêm.

http://www.informatik.uni-leipzig.de/~duc/amlich/DuLieu/index.html

Âm lịch của Hồ Ngọc Đức nữa
 
Upvote 0
Khiếp quá, không ngờ con hổ hoành tráng vậy.
ThuNghi nấu cao quả là cao thủ.

Bác để em tìm chỗ núp rồi từ từ nghiên cứu nó nhé.

Thân!
 
Upvote 0
Web KT

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

Back
Top Bottom