DOWNLOAD LỊCH VẠN SỰ 2025: PDF, Excel, Vector

By Trần Tứ Liêm on Thứ Hai, 3 tháng 3, 2025

LỊCH 2025 PDF


TẢI LỊCH VẠN SỰ NĂM 2025


Blog TTL tiếp tục chia sẽ bộ lịch âm dương năm 2025 Ất Tỵ bằng các file PDF, Excel, PSD, Vector… quý khách có thể tải về, chỉnh sửa, hoặc tra cứu tùy theo nhu cầu sử dụng.

    LỊCH THÁNG 1 NĂM 2025


    Lịch Tháng 1 Năm 2025

    DOWNLOAD LỊCH 2024 ÂM DƯƠNG EXCEL - PDF

    By Trần Tứ Liêm on Thứ Năm, 21 tháng 3, 2024

    Blog TTL xin chia sẽ cùng các bạn bộ lịch năm 2024 (tên năm âm lịch là Giáp Thìn). File lịch gồm: Lịch vạn niên excel theo tháng, lịch tự động, lịch PDF, file vector corel (*.cdr), file lịch photoshop (*.psd)...

    download lịch năm 2024 âm dương

    Thuật toán tính âm lịch - Hồ Ngọc Đức

    By Trần Tứ Liêm on Thứ Tư, 6 tháng 3, 2024

    Blog TTL giới thiệu thuật toán Tính Lịch Vạn Niên - Tính Âm Lịch của Hồ Ngọc Đức. Các thuật toán ở đây được viết bằng ngôn ngữ JavaScript, bài viết theo Blog TTL sẽ giới thiệu các thuật toán này bằng ngôn ngữ VB (Visua Basic) để xây dựng bộ lịch trên file Excel. Thân mời độc giả chờ đọc bài tiếp theo.

    Thuật toán tính âm lịch

    Hồ Ngọc Đức

    TIẾN SỈ HỒ NGỌC ĐỨC


    Nguồn từ: https://www.informatik.uni-leipzig.de/~duc/amlich/

    LỊCH VẠN NIÊN TTL-EXCEL

    By Trần Tứ Liêm on Thứ Sáu, 9 tháng 12, 2022

    Đây là bộ lịch vạn sự soạn thảo công phu, được rất nhiều nhà tuyển trạch sử dụng! Và nó sẽ còn được tiếp tục phát triển. 

    TẢI LỊCH VẠN NIÊN BẢN MỚI NHẤT

    (có nhiều ứng dụng thiên văn, chạy trên máy tính)
    Nhấn  trong các dường link để tải về:


    (Đã chỉnh sửa và cập nhật lại ngày 23/6/2016)
    Có sự góp ý của rất nhiều người dùng
    Bản tiếp theo sẽ có phần an sao tử vi và luận giả lá số thông minh.

    Bạn có thể tải thêm:





    Bản đồ sao được nhúng vào lịch
    Các bạn thân mến! Blog TTL đã giới thiệu thuật toán tính Âm Lịch của Hồ Ngọc Đức bằng ngôn ngữ JavaScript, Đây là thuật toán Thiên văn của quốc tế. Bạn có thể xem bài viết này tại: 

    Còn ở bài viết này tôi sẽ giới thiệu cho bạn thuật toán tính âm lịch của Hồ Ngọc Đức bằng ngôn ngữ Viasual Basic do Blog TTL chuyển từ ngôn JavaScript. Và File Excel Lịch Vạn Niên xây dựng từ thật toán trên và các tài liệu xem ngày tháng. Nhưng tôi sẽ giới thiệu về File Lịch Vạn Niên trước, thuật toán giới thiệu sau.
    File Lịch Vạn Niên là một chương trình xử lý, tính toán một ngày dương nào đó thành ngày âm lịch và các vạn sự của ngày.

    Ví dụ như ngày Dương là ngày 01 tháng 01 năm 2013, thì kết quả cơ bản từ chương trình Lịch Vạn Niên là:
    • Là ngày Hoàng Đạo
    • Ngày thứ 3
    • Ngày theo lịch Julius: 2456294
    • Ngày âm lịch: 20/11/2012 ngày Đinh Mão tháng Nhâm Tý năm Nhâm Thìn
    • Mệnh ngày là Hỏa (lửa trong lò), mệnh tháng là Mộc (gỗ cây dâu), mệnh năm là Thủy (nước giữa dòng)
    • Ngày này đang ở trong tiết Đông Chí (giữa đông - kinh độ mặt trời là 280.43 độ)
    • Từ 23h đến 01h là giờ Canh Tý thần Tư Mệnh quản, giờ này là giờ Hắc Đạo, còn từ 01h đến 03h ....
    • Ngày này thì hướng Hỷ thần là Chính Nam, Tài thần là Chính Tây, Hạc thần là Chính Nam, giờ không vong tại Dậu, Hợi, Giờ tốt: Dần, Mão, Ngọ, Mùi
    •  Các sao tốt chiếu trong ngày này: Nguyện Đức Hợp, Thiên Thành...
    • Các sao xấu chiếu trong ngày này: Thiên Cương, Thiên Lại...
    • Các phần vạn sự A, B,C,D,E,F ...
    • ............................

    Ngoài ra còn có thêm 3 phần là: Xem Giờ Sinh, Bát Trạch, Ngày Đặc Biệt Của Bạn:
    • Phần Xem Giờ Sinh được viết theo sách Ngọc Hạp Chánh Tông. Phần này bạn chỉ nên xem cho vui, đừng tin quá.
    • Phần Bát Trạch được xây dựng dựa theo sách Phong Thủy Ứng Dụng. Phần này ứng dụng cho việc bài trí nội thất, ngoại thất.
    • Phần Ngày Đặc Biệt là phần bạn nhập ngày mà bạn cần nhớ của mình vào, Lịch vạn niên khi chỉ tới ngày đó sẽ báo cho bạn. Ví dụ ngày sinh của bạn là 20/10/1984 Âm Lịch thì đến ngày 20/10 âm lịch của các năm sẽ hiện dòng nhắc sinh nhật của bạn.
    Tuy nhiên bản Lịch Vạn Niên này chắc chắn không ít thì nhiều có chổ sẽ sai, nếu ai phát hiện lỗi sai sót thì comment dùm nha. Ngoài ra mong bà con bàn luận chi sẽ, góp ý để hoàn thành Lịch Vạn Niên này tốt hơn.

    Ghi chú Lịch Vạn Niên này là file Excel có chứa các Macro nên bạn phải đưa chế độ bảo vệ của Excel về mức Low mới xem được.  Phần Bát Trạch, nếu bạn dùng thì phải dùng Excel 2007 trở lên, excel 2003 sẽ bị lỗi. 


    TẢI LỊCH VẠN NIÊN MỚI NHẤT




    Riêng phần tính giờ nước lên, nước xuống thì mình chưa có thuật toán tính, nên mục này bà con xem thận trọng nha. Ai có thật toán tính giờ con nước thì chỉ mình với.

    Các bạn có thể thảm khảo bài viết: Cách Tính Giờ Âm Lịch để hiểu hơn về chương trình này

    Còn đây là thuật toán:


    Option Explicit ' TRAN TU LIEM
    Const PI As Double = 3.14159265358979 ' Atn(1) * 4

    Function jdFromDate(ByVal dd As Long, ByVal mm As Long, ByVal yy As Long) As Long
        Dim a As Double, y As Long, M As Long, jd As Long
        a = Fix((14 - mm) / 12)
        y = yy + 4800 - a
        M = mm + 12 * a - 3
        jd = dd + Fix((153 * M + 2) / 5) + 365 * y _
            + Fix(y / 4) - Fix(y / 100) + Fix(y / 400) - 32045
        If jd < 2299161 Then
            jd = dd + Fix((153 * M + 2) / 5) + 365 * y + Fix(y / 4) - 32083
        End If
        jdFromDate = jd
    End Function

    Function jdToDate(jd)
    ' doi ngay july thành ngay thuong
    Dim a, b, c, d, e, M, Day, Month, Year
    If jd > 2299160 Then
        a = jd + 32044
        b = Int((4 * a + 3) / 146097)
        c = a - Int((b * 146097) / 4)
     Else
        b = 0
        c = jd + 32082
    End If
    d = Int((4 * c + 3) / 1461)
    e = c - Int((1461 * d) / 4)
    M = Int((5 * e + 2) / 153)
    Day = e - Int((153 * M + 2) / 5) + 1
    Month = M + 3 - 12 * Int(M / 10)
    Year = b * 100 + d - 4800 + Int(M / 10)
    jdToDate = DateSerial(Year, Month, Day)

    End Function

    Function NewMoon(ByVal k As Long) As Double
        Dim T As Double, T2 As Double, T3 As Double, dr As Double
        Dim Jd1 As Double, M As Double, Mpr As Double
        Dim F As Double, C1 As Double, deltat As Double, JdNew As Double
        T = k / 1236.85 ' Time in Julian centuries from 1900 January 0.5
       T2 = T * T
        T3 = T2 * T
        dr = PI / 180
        Jd1 = 2415020.75933 + 29.53058868 * k + 0.0001178 * T2 - 0.000000155 * T3
        Jd1 = Jd1 + 0.00033 * Sin((166.56 + 132.87 * T - 0.009173 * T2) * dr)
        M = 359.2242 + 29.10535608 * k - 0.0000333 * T2 - 0.00000347 * T3
        Mpr = 306.0253 + 385.81691806 * k + 0.0107306 * T2 + 0.00001236 * T3
        F = 21.2964 + 390.67050646 * k - 0.0016528 * T2 - 0.00000239 * T3
        C1 = (0.1734 - 0.000393 * T) * Sin(M * dr) + 0.0021 * Sin(2 * dr * M)
        C1 = C1 - 0.4068 * Sin(Mpr * dr) + 0.0161 * Sin(dr * 2 * Mpr)
        C1 = C1 - 0.0004 * Sin(dr * 3 * Mpr)
        C1 = C1 + 0.0104 * Sin(dr * 2 * F) - 0.0051 * Sin(dr * (M + Mpr))
        C1 = C1 - 0.0074 * Sin(dr * (M - Mpr)) + 0.0004 * Sin(dr * (2 * F + M))
        C1 = C1 - 0.0004 * Sin(dr * (2 * F - M)) - 0.0006 * Sin(dr * (2 * F + Mpr))
        C1 = C1 + 0.001 * Sin(dr * (2 * F - Mpr)) + 0.0005 * Sin(dr * (2 * Mpr + M))
        If (T < -11) Then
            deltat = 0.001 + 0.000839 * T + 0.0002261 * T2 _
                    - 0.00000845 * T3 - 0.000000081 * T * T3
        Else
            deltat = -0.000278 + 0.000265 * T + 0.000262 * T2
        End If
        JdNew = Jd1 + C1 - deltat
        NewMoon = JdNew
    End Function

    Function SunLongitude(ByVal jdn As Double) As Double
        Dim T As Double, T2 As Double, dr As Double, M As Double
        Dim L0 As Double, DL As Double, L As Double
        T = (jdn - 2451545) / 36525
            ' Time in Julian centuries from 2000-01-01 12:00:00 GMT
       T2 = T * T
        dr = PI / 180 ' degree to radian
       M = 357.5291 + 35999.0503 * T - 0.0001559 * T2 - 0.00000048 * T * T2
        L0 = 280.46645 + 36000.76983 * T + 0.0003032 * T2
        DL = (1.9146 - 0.004817 * T - 0.000014 * T2) * Sin(dr * M)
        DL = DL + (0.019993 - 0.000101 * T) * Sin(dr * 2 * M) _
            + 0.00029 * Sin(dr * 3 * M)
        L = L0 + DL ' true longitude, degree
       L = L * dr
        L = L - PI * 2 * (Fix(L / (PI * 2))) ' Normalize to (0, 2*PI)
       SunLongitude = L
    End Function

    Function getSunLongitude(ByVal dayNumber As Double, ByVal timeZone As Byte) As Long
        getSunLongitude = Fix(SunLongitude(dayNumber - 0.5 - timeZone / 24) / PI * 6)
    End Function

    Function getNewMoonDay(ByVal k As Long, ByVal timeZone As Long) As Long
        getNewMoonDay = Fix(NewMoon(k) + 0.5 + timeZone / 24)
    End Function

    Function getLunarMonth11(ByVal yy As Long, ByVal timeZone As Long) As Long
        Dim k As Long, off As Double, nm As Long, sunLong As Double
        off = jdFromDate(31, 12, yy) - 2415021
        k = Fix(off / 29.530588853)
        nm = getNewMoonDay(k, timeZone)
        sunLong = getSunLongitude(nm, timeZone) ' sun longitude at local midnight
       If (sunLong >= 9) Then
            nm = getNewMoonDay(k - 1, timeZone)
        End If
        getLunarMonth11 = nm
    End Function


    Function getLeapMonthOffset(ByVal a11 As Double, ByVal timeZone As Long) As Long
        Dim k As Long, last As Long, Arc As Long, I As Long
        k = Fix((a11 - 2415021.07699869) / 29.530588853 + 0.5)
        last = 0
        I = 1 ' We start with the month following lunar month 11
       Arc = getSunLongitude(getNewMoonDay(k + I, timeZone), timeZone)
        Do
            last = Arc
            I = I + 1
            Arc = getSunLongitude(getNewMoonDay(k + I, timeZone), timeZone)
        Loop While (Arc <> last And I < 14)
        getLeapMonthOffset = I - 1
    End Function


    Public Function KinhDoMatTroi(gio, phut, dd, mm, yy)
    'tinh kinh ?o mat troi
    Dim PI, a, y, M, T, jdn, L0, jd, c, theta, lambda
    PI = 4 * Atn(1)
    a = Int((14 - mm) / 12)
    y = yy + 4800 - a
    M = mm + 12 * a - 3
        jdn = dd + Int(((153 * M) + 2) / 5) + 365 * y + Int(y / 4) - Int(y / 100) + Int(y / 400) - 32045
        If jdn < 2299161 Then jdn = dd + Int((153 * M + 2) / 5) + 365 * y + Int(y / 4) - 32083
        jd = jdn + ((gio - 12) / 24) + (phut / 1440) - 7 / 24


    T = (jd - 2451545#) / 36525
    L0 = 280.46645 + 36000.76983 * T + 0.0003032 * T * T
    M = (357.5291 + 35999.0503 * T - 0.0001559 * T * T - 0.00000048 * T * T * T) * PI / 180
    c = ((1.9146 - 0.004817 * T - 0.000014 * T * T) * Sin(M)) + (0.01993 - 0.000101 * T) * Sin(2 * M) + 0.00029 * Sin(3 * M)
    theta = L0 + c
    lambda = theta - 0.00569 - 0.00478 * Sin((125.04 - 1934.136 * T) * PI / 180)
    lambda = lambda - 360 * Int(lambda / 360)
    KinhDoMatTroi = lambda

    End Function













    Function convertSolar2Lunar(dd, mm, yy, timeZone)

    'Doi ngày duong dd/mm/yyyy ra ngày âm

    Dim k, dayNumber, monthStart, a11, b11, lunarDay, lunarMonth, lunarYear, lunarLeap, diff, leapMonthDiff
    dayNumber = jdFromDate(dd, mm, yy)
    k = Int((dayNumber - 2415021.07699869) / 29.530588853)
    monthStart = getNewMoonDay(k + 1, timeZone)
    If monthStart > dayNumber Then monthStart = getNewMoonDay(k, timeZone)
    a11 = getLunarMonth11(yy, timeZone)
    b11 = a11

    If a11 >= monthStart Then
        lunarYear = yy
        a11 = getLunarMonth11(yy - 1, timeZone)
     Else
        lunarYear = yy + 1
        b11 = getLunarMonth11(yy + 1, timeZone)
    End If
    lunarDay = dayNumber - monthStart + 1
    diff = Int((monthStart - a11) / 29)
    lunarLeap = 0
    lunarMonth = diff + 11
    If (b11 - a11) > 365 Then
        leapMonthDiff = getLeapMonthOffset(a11, timeZone)
        If diff >= leapMonthDiff Then
            lunarMonth = diff + 10
            If diff = leapMonthDiff Then lunarLeap = 1
        End If
    End If
    If lunarMonth > 12 Then lunarMonth = lunarMonth - 12

    If (lunarMonth >= 11 And diff < 4) Then lunarYear = lunarYear - 1
     
    convertSolar2Lunar = lunarDay & "/" & lunarMonth & "/" & lunarYear

    End Function

    Function THANGNODU(dd, mm, yy, timeZone)

    'THANG NO DU

    Dim k, dayNumber, monthStart, a11, b11, lunarDay, lunarMonth, lunarYear, lunarLeap, diff, leapMonthDiff
    dayNumber = jdFromDate(dd, mm, yy)
    k = Int((dayNumber - 2415021.07699869) / 29.530588853)
    monthStart = getNewMoonDay(k + 1, timeZone)
    If monthStart > dayNumber Then monthStart = getNewMoonDay(k, timeZone)
    a11 = getLunarMonth11(yy, timeZone)
    b11 = a11

    If a11 >= monthStart Then
        lunarYear = yy
        a11 = getLunarMonth11(yy - 1, timeZone)
     Else
        lunarYear = yy + 1
        b11 = getLunarMonth11(yy + 1, timeZone)
    End If
    lunarDay = dayNumber - monthStart + 1
    diff = Int((monthStart - a11) / 29)
    lunarLeap = 0
    lunarMonth = diff + 11
    If (b11 - a11) > 365 Then
        leapMonthDiff = getLeapMonthOffset(a11, timeZone)
        If diff >= leapMonthDiff Then
            lunarMonth = diff + 10
            If diff = leapMonthDiff Then lunarLeap = 1
        End If
    End If
    If lunarMonth > 12 Then lunarMonth = lunarMonth - 12

    If (lunarMonth >= 11 And diff < 4) Then lunarYear = lunarYear - 1
     
    THANGNODU = getNewMoonDay(k + 1, timeZone) - getNewMoonDay(k, timeZone)

    End Function

    Function THANGNHUAN(dd, mm, yy, timeZone)

    'THANG NHUAN

    Dim k, dayNumber, monthStart, a11, b11, lunarDay, lunarMonth, lunarYear, lunarLeap, diff, leapMonthDiff
    dayNumber = jdFromDate(dd, mm, yy)
    k = Int((dayNumber - 2415021.07699869) / 29.530588853)
    monthStart = getNewMoonDay(k + 1, timeZone)
    If monthStart > dayNumber Then monthStart = getNewMoonDay(k, timeZone)
    a11 = getLunarMonth11(yy, timeZone)
    b11 = a11

    If a11 >= monthStart Then
        lunarYear = yy
        a11 = getLunarMonth11(yy - 1, timeZone)
     Else
        lunarYear = yy + 1
        b11 = getLunarMonth11(yy + 1, timeZone)
    End If
    lunarDay = dayNumber - monthStart + 1
    diff = Int((monthStart - a11) / 29)
    lunarLeap = 0
    lunarMonth = diff + 11
    If (b11 - a11) > 365 Then
        leapMonthDiff = getLeapMonthOffset(a11, timeZone)

        THANGNHUAN = (leapMonthDiff + 10) Mod 12
    End If

     


    End Function






    Function convertLunar2Solar(lunarDay, lunarMonth, lunarYear, lunarLeap, timeZone)

    'Doi âm lich ra duong lich

    Dim k, a11, b11, off, leapOff, leapMonth, monthStart
    If (lunarMonth < 11) Then
        a11 = getLunarMonth11(lunarYear - 1, timeZone)
        b11 = getLunarMonth11(lunarYear, timeZone)
     Else
        a11 = getLunarMonth11(lunarYear, timeZone)
        b11 = getLunarMonth11(lunarYear + 1, timeZone)
    End If
    off = lunarMonth - 11
    If (off < 0) Then off = off + 12

    If (b11 - a11 > 365) Then
        leapOff = getLeapMonthOffset(a11, timeZone)
        leapMonth = leapOff - 2
        If (leapMonth < 0) Then leapMonth = leapMonth + 12
     
        If (lunarLeap <> 0 And lunarMonth <> leapMonth) Then
            convertLunar2Solar = Array(0, 0, 0)
        Else
            If (lunarLeap <> 0 Or off >= leapOff) Then off = off + 1
        End If
    End If
    k = Int(0.5 + (a11 - 2415021.07699869) / 29.530588853)
    monthStart = getNewMoonDay(k + off, timeZone)
    convertLunar2Solar = jdToDate(monthStart + lunarDay - 1)

    End Function


    Function Ngay(dd, mm, yy, timeZone)

    'Doi ngày duong dd/mm/yyyy ra ngày âm: Ngay

    Dim k, dayNumber, monthStart, a11, b11, lunarDay, lunarMonth, lunarYear, lunarLeap, diff, leapMonthDiff
    dayNumber = jdFromDate(dd, mm, yy)
    k = Int((dayNumber - 2415021.07699869) / 29.530588853)
    monthStart = getNewMoonDay(k + 1, timeZone)
    If monthStart > dayNumber Then monthStart = getNewMoonDay(k, timeZone)
    a11 = getLunarMonth11(yy, timeZone)
    b11 = a11

    If a11 >= monthStart Then
        lunarYear = yy
        a11 = getLunarMonth11(yy - 1, timeZone)
     Else
        lunarYear = yy + 1
        b11 = getLunarMonth11(yy + 1, timeZone)
    End If
    lunarDay = dayNumber - monthStart + 1
    diff = Int((monthStart - a11) / 29)
    lunarLeap = 0
    lunarMonth = diff + 11
    If (b11 - a11) > 365 Then
        leapMonthDiff = getLeapMonthOffset(a11, timeZone)
        If diff >= leapMonthDiff Then
            lunarMonth = diff + 10
            If diff = leapMonthDiff Then lunarLeap = 1
        End If
    End If
    If lunarMonth > 12 Then lunarMonth = lunarMonth - 12

    If (lunarMonth >= 11 And diff < 4) Then lunarYear = lunarYear - 1
     
    Ngay = lunarDay
    End Function
    Function Thang(dd, mm, yy, timeZone)

    'Doi ngày duong dd/mm/yyyy ra ngày âm: Thang

    Dim k, dayNumber, monthStart, a11, b11, lunarDay, lunarMonth, lunarYear, lunarLeap, diff, leapMonthDiff
    dayNumber = jdFromDate(dd, mm, yy)
    k = Int((dayNumber - 2415021.07699869) / 29.530588853)
    monthStart = getNewMoonDay(k + 1, timeZone)
    If monthStart > dayNumber Then monthStart = getNewMoonDay(k, timeZone)
    a11 = getLunarMonth11(yy, timeZone)
    b11 = a11

    If a11 >= monthStart Then
        lunarYear = yy
        a11 = getLunarMonth11(yy - 1, timeZone)
     Else
        lunarYear = yy + 1
        b11 = getLunarMonth11(yy + 1, timeZone)
    End If
    lunarDay = dayNumber - monthStart + 1
    diff = Int((monthStart - a11) / 29)
    lunarLeap = 0
    lunarMonth = diff + 11
    If (b11 - a11) > 365 Then
        leapMonthDiff = getLeapMonthOffset(a11, timeZone)
        If diff >= leapMonthDiff Then
            lunarMonth = diff + 10
            If diff = leapMonthDiff Then lunarLeap = 1
        End If
    End If
    If lunarMonth > 12 Then lunarMonth = lunarMonth - 12

    If (lunarMonth >= 11 And diff < 4) Then lunarYear = lunarYear - 1
     
    Thang = lunarMonth

    End Function

    Function Nam(dd, mm, yy, timeZone)

    'Doi ngày duong dd/mm/yyyy ra ngày âm

    Dim k, dayNumber, monthStart, a11, b11, lunarDay, lunarMonth, lunarYear, lunarLeap, diff, leapMonthDiff
    dayNumber = jdFromDate(dd, mm, yy)
    k = Int((dayNumber - 2415021.07699869) / 29.530588853)
    monthStart = getNewMoonDay(k + 1, timeZone)
    If monthStart > dayNumber Then monthStart = getNewMoonDay(k, timeZone)
    a11 = getLunarMonth11(yy, timeZone)
    b11 = a11

    If a11 >= monthStart Then
        lunarYear = yy
        a11 = getLunarMonth11(yy - 1, timeZone)
     Else
        lunarYear = yy + 1
        b11 = getLunarMonth11(yy + 1, timeZone)
    End If
    lunarDay = dayNumber - monthStart + 1
    diff = Int((monthStart - a11) / 29)
    lunarLeap = 0
    lunarMonth = diff + 11
    If (b11 - a11) > 365 Then
        leapMonthDiff = getLeapMonthOffset(a11, timeZone)
        If diff >= leapMonthDiff Then
            lunarMonth = diff + 10
            If diff = leapMonthDiff Then lunarLeap = 1
        End If
    End If
    If lunarMonth > 12 Then lunarMonth = lunarMonth - 12

    If (lunarMonth >= 11 And diff < 4) Then lunarYear = lunarYear - 1
     
    Nam = lunarYear

    End Function

    Function Duongcongkynhat(dd, mm, yy, timeZone)

    'Doi ngày duong dd/mm/yyyy ra ngày âm

    Dim k, dayNumber, monthStart, a11, b11, lunarDay, lunarMonth, lunarYear, lunarLeap, NgayAm, diff, leapMonthDiff
    dayNumber = jdFromDate(dd, mm, yy)
    k = Int((dayNumber - 2415021.07699869) / 29.530588853)
    monthStart = getNewMoonDay(k + 1, timeZone)
    If monthStart >= dayNumber Then monthStart = getNewMoonDay(k, timeZone)
    a11 = getLunarMonth11(yy, timeZone)
    b11 = a11

    If a11 >= monthStart Then
        lunarYear = yy
        a11 = getLunarMonth11(yy - 1, timeZone)
     Else
        lunarYear = yy + 1
        b11 = getLunarMonth11(yy + 1, timeZone)
    End If
    lunarDay = dayNumber - monthStart + 1
    diff = Int((monthStart - a11) / 29)
    lunarLeap = 0
    lunarMonth = diff + 11
    If (b11 - a11) > 365 Then
        leapMonthDiff = getLeapMonthOffset(a11, timeZone)
        If diff >= leapMonthDiff Then
            lunarMonth = diff + 10
            If diff = leapMonthDiff Then lunarLeap = 1
        End If
    End If
    If lunarMonth > 12 Then lunarMonth = lunarMonth - 12

    If (lunarMonth >= 11 And diff < 4) Then lunarYear = lunarYear - 1
     
    NgayAm = lunarDay & "/" & lunarMonth
    Duongcongkynhat = ""

    If NgayAm = "13/1" Or NgayAm = "11/2" Or NgayAm = "9/3" Or NgayAm = "7/4" Or NgayAm = "5/5" Or NgayAm = "3/6" Or NgayAm = "8/7" Or NgayAm = "29/7" Or NgayAm = "27/8" Or NgayAm = "25/9" Or NgayAm = "23/10" Or NgayAm = "21/11" Or NgayAm = "19/12" Then Duongcongkynhat = 1

    End Function

    Function TamNuongSat(dd, mm, yy, timeZone)

    'Kiem tra ngay dd/mm/yyyy có phai ngay Tam Nuong Sat

    Dim k, dayNumber, monthStart, a11, b11, lunarDay, lunarMonth, lunarYear, lunarLeap, TamNuong, diff, leapMonthDiff
    dayNumber = jdFromDate(dd, mm, yy)
    k = Int((dayNumber - 2415021.07699869) / 29.530588853)
    monthStart = getNewMoonDay(k + 1, timeZone)
    If monthStart >= dayNumber Then monthStart = getNewMoonDay(k, timeZone)
    a11 = getLunarMonth11(yy, timeZone)
    b11 = a11

    If a11 >= monthStart Then
        lunarYear = yy
        a11 = getLunarMonth11(yy - 1, timeZone)
     Else
        lunarYear = yy + 1
        b11 = getLunarMonth11(yy + 1, timeZone)
    End If
    lunarDay = dayNumber - monthStart + 1
    diff = Int((monthStart - a11) / 29)
    lunarLeap = 0
    lunarMonth = diff + 11
    If (b11 - a11) > 365 Then
        leapMonthDiff = getLeapMonthOffset(a11, timeZone)
        If diff >= leapMonthDiff Then
            lunarMonth = diff + 10
            If diff = leapMonthDiff Then lunarLeap = 1
        End If
    End If
    If lunarMonth > 12 Then lunarMonth = lunarMonth - 12

    If (lunarMonth >= 11 And diff < 4) Then lunarYear = lunarYear - 1
     

    TamNuongSat = ""

    If lunarDay = 2 Or lunarDay = 7 Or lunarDay = 13 Or lunarDay = 18 Or lunarDay = 22 Or lunarDay = 27 Then TamNuongSat = 1

    End Function

    Function NgayNguyetKy(dd, mm, yy, timeZone)

    'Kiem tra ngay dd/mm/yyyy có phai ngay Nguyet Ky

    Dim k, dayNumber, monthStart, a11, b11, lunarDay, lunarMonth, lunarYear, lunarLeap, TamNuong, diff, leapMonthDiff
    dayNumber = jdFromDate(dd, mm, yy)
    k = Int((dayNumber - 2415021.07699869) / 29.530588853)
    monthStart = getNewMoonDay(k + 1, timeZone)
    If monthStart >= dayNumber Then monthStart = getNewMoonDay(k, timeZone)
    a11 = getLunarMonth11(yy, timeZone)
    b11 = a11

    If a11 >= monthStart Then
        lunarYear = yy
        a11 = getLunarMonth11(yy - 1, timeZone)
     Else
        lunarYear = yy + 1
        b11 = getLunarMonth11(yy + 1, timeZone)
    End If
    lunarDay = dayNumber - monthStart + 1
    diff = Int((monthStart - a11) / 29)
    lunarLeap = 0
    lunarMonth = diff + 11
    If (b11 - a11) > 365 Then
        leapMonthDiff = getLeapMonthOffset(a11, timeZone)
        If diff >= leapMonthDiff Then
            lunarMonth = diff + 10
            If diff = leapMonthDiff Then lunarLeap = 1
        End If
    End If
    If lunarMonth > 12 Then lunarMonth = lunarMonth - 12

    If (lunarMonth >= 11 And diff < 4) Then lunarYear = lunarYear - 1
     

    NgayNguyetKy = ""

    If lunarDay = 5 Or lunarDay = 14 Or lunarDay = 23 Then NgayNguyetKy = 1

    End Function

    Thân ái
    Blog Trần Tứ Liêm

    Giờ Âm Lịch Việt Nam

    By Trần Tứ Liêm on Thứ Năm, 6 tháng 10, 2022

    Trong cuộc sống có nhiều người không biết hay hỏi nhau là:

    Giờ Tý là mấy giờ?
    Giờ Ngọ là mấy giờ?
    ..............................?

    Bình thường thì được trả lời là:

    Giờ Tý là 23h đến 1h sáng
    Giờ Ngọ là lúc 11h đến 13h chiều
    ...................

    Chính những câu hỏi đó mình đã hỏi lúc còn nhỏ, bởi sự tò mò rằng: Tại sao đã có đồng hồ để đo thời gian rồi mà người ta vẫn cứ giờ Tý, Sửu... để làm các việc gì đó.

    Đúng rồi bạn ạ! bây giờ người ta vẫn sử dụng 2 loại đơn vị đo thời gian của một ngày đó là:

    - Giờ pháp lịch Việt Nam: Sử dụng theo quy chuẩn quốc tế lấy múi giờ là GMT+7, hay còn gọi là giờ Hà Nội. Một ngày có 24h, mỗi giờ là 60h
    - Giờ âm lịch: một ngày được chia thành 12 giờ, mỗi giờ lấy tên một con giáp, bắt đầu từ giờ rồi đến Sửu, Dần Mão Thìn Tỵ Ngọ Mùi Thân Dậu Tuất Hợi. Ban đêm được được gọi là Canh. Ví dụ Canh 1, Canh Hai... đến Canh 5

    Đi vào vấn đề chính nhé! đó là quy đổi giữa giờ Pháp Lịch và giờ Âm Lịch, hãy giải quyết câu hỏi này trước:

    Giờ Ngọ bắt đầu từ mấy giời và kết thúc mấy giờ?

    Để nhìn lại bản chất của hai đơn vi đo thời gian ở trên ta có nhận xét như sau:

    - Giờ Pháp Lịch lấy mốc thời theo Kinh độ của quả đất là kính tuyến 7, vì vậy có sự liên quan đến vị trí địa lý.
    - Giờ âm lịch: ngày trước các bậc tiền nhân xác định bằn giờ chính ngọ là lúc Mặt trời đứng bóng rồi suy ra các giời khác. Như vậy giờ âm lịch có liên quan tới tính thiên văn.

    Ngày nay một số chương trình hoặc website cho phép bạn tính toán được giờ mặt trời Mọc, Lặn, đạt tới đỉnh của nó tại mỗi vị trí khác nhau như: Yahoo Weather, Câu Cá...

    Ví dụ 1: ngày 01/O1/2O15 tại Đảo Phú Quốc () Mặt Trời mọc 6h21, lặn: 17h53, Chính Ngọ lúc 12h07

    Ví dụ 2: ngày 01/O1/2O15 tại TP. HCM () Mặt Trời mọc 6h11, lặn: 17h41, Chính Ngọ lúc 11h56

    Như vậy ta suy được bảng giờ âm lịch:

    • - Tại Đảo Phú Quốc: Giờ Tý: 23h07-1h07, Sửu: 1h07-3h07....
    • - Còn tại TPHCM: Giờ Tý: 22h56-0h56, Sửu: 0h56-2h56...


    Kết quả cho ta thấy bảng giờ ở hai vị trí khác nhau.

    Có vẻ phức tạp phải không bạn?

    Vậy phương pháp xác định giờ âm lịch thế nào cho đúng?

    CÁCH XÁC ĐỊNH BẢNG GIỜ ÂM LỊCH

    CÁCH 1: SỬ DỤNG CHƯƠNG TRÌNH LỊCH VẠN NIÊN EXCEL


    Đây là chương trình mình soạn ra, được chạy trên cở sở thuật toán thiên văn, bạn tải về và vào mục cài đặt để sét vị trí Kinh Độ, Vỹ Độ theo hướng dẫn ở trong đó.

    Địa chỉ tải: https://trantuliem.blogspot.com/2013/01/lich-van-nien-ttl-excel.html




    Chương trình chỉ chạy được trên máy tính và phải có Microffice EXCE.

    CÁCH 2: SỬ DỤNG CÁCH TÍNH GIỜ CHÍNH NGỌ HỒ NGỌC ĐỨC


    Sử dụng lịch của Hồ Ngọc Đức để xác định giờ Chính Ngọ sau đó bạn phải tự tính ra các giờ khác. Xem theo đường link này:
    https://www.informatik.uni-leipzig.de/~duc/amlich/vncal.html (LINK NÀY KHÔNG CÒN HOẠT ĐỘNG)



    CÁCH 3: HƯỚNG DẪN BẠN TỰ TÍNH




    Cách tính này bắt buộc bạn phải có dữ liệu đầu vào là giờ mặt trời lặn và mặt trời mọc, bạn có thể tìm các dữ liệu này ở nhiều nơi ví dụ:


    Trên blog lịch treo tường.

    Trên Yahoo thời tiết: https://weather.yahoo.com/

    Hoặc bạn gõ tren google với từ khóa: "sunrise and sunset"


    Ta tiến hành tìm giờ chính ngọ ngày O1/O1/2O15 tại TP. HCM () từ 2 dữ liệu: Mặt Trời mọc 6h11, lặn: 17h41.


    - Mặt trời mọc phú thứ: a = 6x60+11 = 371

    - Mặt trời lặn phút thứ: b = 17x60+41 = 1061

    - Mặt trời chính ngọ ở phút thứ: c = (a+b):2 = (371+1061):2 = 716

    - Đổi kết quả này thành giờ phút: chia c cho 60, phần nguyên là giờ, phân dư là phú:

    Lấy 716 chia cho 60: được phần nguyên: 11, được phần dư là 56


    Kết quả: Chính ngọ ngày O1/O1/2O15 tại TPHCM là 11 giờ 56 phút trùng với kết quả trong ví dụ 2 ở trên.

    Lưu ý: phương pháp này là tương đối trong thuật toán thiên văn họ không tính thế này.

    Tổng quát lại:


    Khi chúng ta không quan tâm tới yếu tố thời gian âm lịch thì vấn đề này chẳng có ý nghĩa gì. Còn khi bạn đã đọc đến đây và quan tâm thì nó là một vấn đề cốt lõi trong văn hóa và những việc tâm linh. Những ví dụ sau có thể bạn hình dung được một số góc cạnh: 

    Chọn giờ để khâm liệm, nếu bạn chọn nhầm giờ vào tứ hành xung, trùng tang...? Các vấn đề cưới hỏi, động thổ... củng như vậy.

    Xem lá số tử vi: 70% khó khăn của tử vi đó chính là xác định giờ sinh, khi xác định được giờ sinh mọi việc thường dễ dàng hơn.

    ....

    Trong sách Bát Trạch Minh Cảnh của Thái Kim Oanh có phần trình bày đầu tiên là phần hướng dẫn chọn giờ âm lịch, tuy nhiên theo mình là sai nhé bạn!

    Tôi nghỉ rằng bạn đọc quan tâm về lĩnh vực này sẽ khó khăn để hiểu bài viết. TTL Blog gợi ý cho các bạn hãy tải chương trình của tôi về và tham khảo các kết quả của các ngày bình thường, các ngày đặc biệt... để có nhận định chung hơn, sau đó cùng tìm hiểu nhé!

    Các bạn có thể xem các bài viết liên quan do mình viết:


    Lịch vạn niên 2023 excel - PDF Âm Dương

    By Trần Tứ Liêm on Thứ Sáu, 26 tháng 8, 2022






    Lịch Excel 2023 ở đây, bạn có thể tải về và sử dụng tùy mục đích:
    DOWNLOAD LỊCH EXCEL 2023

    Tác giả: Trần Tứ Liêm

    Nhà xuất bản: Không

    Loại file: Excel, PDF, corel, photoshop
    (mới cập nhật)

    Lịch này được xuất bản từ lịch số thông minh chạy trên file excel tự động. Bạn có thể tải về dùng ở đây.

    Nếu bạn muốn tải file PDF lịch năm 2023 hãy nhấp vào từng tháng phía dưới:

    Tháng 1Tháng 2Tháng 3Tháng 4Tháng 5Tháng 6Tháng 7Tháng 8Tháng 9Tháng 10Tháng 11Tháng 12

    Tải các bộ lịch khác:

    Để hiểu rõ về lịch excel 2023 mời bạn xem phần nội bên dưới:

    NỘI DUNG LỊCH EXCEL 2023

    Lịch tháng 1 năm 2023 Quý Mão
    lịch tháng 1 năm 2023 Quý Mão
    Lịch tháng 2 năm 2023 Quý Mão
    Lịch tháng 2 năm 2023 Quý Mão
    Lịch tháng 3 năm 2023 Quý Mão
    Lịch tháng 3 năm 2023 Quý Mão
    Lịch tháng 4 năm 2023 Quý Mão
    Lịch tháng 4 năm 2023 Quý Mão
    Lịch tháng 5 năm 2023 Quý Mão
    Lịch tháng 5 năm 2023 Quý Mão
    Lịch tháng 6 năm 2023 Quý Mão
    Lịch tháng 6 năm 2023 Quý Mão
    Lịch tháng 7 năm 2023 Quý Mão
    Lịch tháng 7 năm 2023 Quý Mão
    Lịch tháng 8 năm 2023 Quý Mão
    Lịch tháng 8 năm 2023 Quý Mão
    Lịch tháng 9 năm 2023 Quý Mão
    Lịch tháng 9 năm 2023 Quý Mão
    Lịch tháng 10 năm 2023 Quý Mão
    Lịch tháng 10 năm 2023 Quý Mão
    Lịch tháng 11 năm 2023 Quý Mão
    Lịch tháng 11 năm 2023 Quý Mão
    Lịch tháng 12 năm 2023 Quý Mão
    Lịch tháng 12 năm 2023 Quý Mão


    TÀI LIỆU KHÁC

    Trên website bcs.bibon.xyz có chứa các tài kiệu liên quan như bên dưới, mời bạn tham khảo thêm. Hy vọng nó có ý nghĩa với bạn:Sách 555 món ăn Việt Nam
    Lịch 2023bách cátLịch Excel 2023
    Loại tài liệu:

    Keyword: lịch | lịch excel | lịch excel 2023 | tải lịch 2023 | lịch âm dương năm 2023 | lịch âm 2023 | lịch âm 2023 | tải lịch 2023 | lịch năm quý mão | lịch excel quý mão | lich excel 2023 | dowload lich 2023 | lich quy mao | lịch quý mão

    Lịch vạn niên excel năm 2022 (xls, pdf)

    By Trần Tứ Liêm on

    Tải file excel lịch tháng năm 2022 Nhâm Dần (âm dương)
     
    lịch 2022



    LICH-2022-EXCEL Tải xuống

    Tải lịch excel 2023: DOWNLOAD


    Ngày nào tốt để xuất hành, khai trương năm 2020?

    By Trần Tứ Liêm on Thứ Năm, 19 tháng 12, 2019

    Ngày nào tốt để xuất hành, hoặc khai trương năm 2020?
    Hình hoa đào mùa xuân
    Hình hoa đào mùa xuân (nguồn internet)
    Tấm hình này có sức sống, nên TTL Blog đặt lại tên là Mùa xuân khoe sắc
    Xem hình này đã được chỉnh sửa tại https://www.flickr.com/...

    Mời các bạn cùng tham khảo các ngày đầu năm 2020 sau:

    LỊCH VẠN NIÊN NĂM 2020 FILE EXCEL PDF

    By Trần Tứ Liêm on Thứ Sáu, 20 tháng 9, 2019


    Bạn muốn tải lịch vạn niên năm 2020?


    Blog TTL thích tìm hiểu về lịch, nay chĩa sẽ cùng công đồng ta bộ lịch năm 2020 bằng EXCEL để anh em chỉnh sửa tùy nhu cầu mà sử dụng, ngoài ra, còn có lịch file hình và Lịch vạn sự file PDF Scan:

    TẢI LỊCH VẠN NIÊN 2020 FIEL EXCEL


    Đây là bản lịch vạn niên năm 2020 bằng EXCEL được xuất từ file lập trình tự động (Xem chi tiết lịch này ở đây). Còn bạn đang quá trình học thuật tuyển trạch, hãy xem các tài liệu: xem ngày

    File lịch 2020 âm dương excel này có thể giúp các bạn nhiều thứ, như soạn cho mình những ngày đặc biệt rồi in ra sử dụng chẳng hạn... Các nhà thiết kế thì chèn vào hồ sơ, các nhà quản lý thì dùng lịch này để quản lý công việc theo thời gian. Nó có ý nghĩa nhiều cho nhiều công ty hoặc cá nhân đấy ạ! Bạn hãy tải lịch âm dương về nhé, sử dụng các đường Link bên dưới:

    Yêu cầu nhỏ, bạn hãy LIKE mới tải LỊCH 2020 nhé!  Đã có bản lịch mới, hãy tải ở đây: Lịch năm 2021 - lịch 2022 - lịch 2023

    Tải file PDF

    Tải file EXCEL

    Tải file EXCEL
    Hy vọng các file trên có ý nghĩa với bạn!

    Nếu bạn thích về Lịch hãy đăng ký kênh Youtube để xem các Video
    HÌNH ĐỘNG VUI

    XEM LỊCH VẠN NIÊN EXCEL NĂM 2020

    LỊCH VẠN SỰ THÁNG 1 NĂM 2020
     LỊCH VẠN SỰ THÁNG 1 NĂM 2020

    LỊCH VẠN SỰ THÁNG 2 NĂM 2020
     LỊCH VẠN SỰ THÁNG 2 NĂM 2020

    LỊCH VẠN SỰ THÁNG 3 NĂM 2020
     LỊCH VẠN SỰ THÁNG 3 NĂM 2020

    LỊCH VẠN SỰ THÁNG 4 NĂM 2020
     LỊCH VẠN SỰ THÁNG 4 NĂM 2020

    LỊCH VẠN SỰ THÁNG  5 NĂM 2020
     LỊCH VẠN SỰ THÁNG  5 NĂM 2020

    LỊCH VẠN SỰ THÁNG 6 NĂM 2020
     LỊCH VẠN SỰ THÁNG 6 NĂM 2020

    LỊCH VẠN SỰ THÁNG 7 NĂM 2020
     LỊCH VẠN SỰ THÁNG 7 NĂM 2020

    LỊCH VẠN SỰ THÁNG 8 NĂM 2020
     LỊCH VẠN SỰ THÁNG 8 NĂM 2020

    LỊCH VẠN SỰ THÁNG 9 NĂM 2020
     LỊCH VẠN SỰ THÁNG 9 NĂM 2020

    LỊCH VẠN SỰ THÁNG 10 NĂM 2020
     LỊCH VẠN SỰ THÁNG 10 NĂM 2020

    LỊCH VẠN SỰ THÁNG 11 NĂM 2020
     LỊCH VẠN SỰ THÁNG 11 NĂM 2020

    LỊCH VẠN SỰ THÁNG 12 NĂM 2020
    LỊCH VẠN SỰ THÁNG 12 NĂM 2020

    LỜI CUỐI BÀI VIẾT NÀY


    • Bạn tải lịch về được chưa?
    • Nó có giúp gì cho bạn không?
    • Bạn có muốn xem bài viết khác của tôi không?

    Lịch âm dương vạn niên TTL-EXCEL file được nhiều người hành nghề chọn ngày tốt sử dụng, bạn có biết?
    Đây là một file dụng lượng nhỏ nhưng đốt biết bao thời gian của mình, từ lúc chia sẽ đến nay, có gần triệu lượt tải rồi đó các bạn ạ: Xem chi tiết LỊCH VẠN NIÊN TTL-EXCEL

    Mời bạn đón xem các bài viết về tử vi của học trò (Đang nghiên cứu và học hỏi nên nhận vậy, nhưng rất thích): XEM TỬ VI NĂM 2020

    Âm Lịch Hôm Nay ngày mấy?

    By Trần Tứ Liêm on Thứ Sáu, 19 tháng 7, 2019

    3

    Thứ Năm

    Điều quan trọng không phải chúng ta sống được bao lâu mà chúng ta phải sống như thế nào.

    Bailey

    Năm Kỷ Hợi

    Tháng Giáp Tuất

    Ngày Quý Dậu

    15:56:11

    Giờ Nhâm Tý


    Tháng Chín
    5

    Mệnh ngày:

    Kiếm Phong Kim
    (Vàng đầu kiếm)

    Tiết khí:

    Thu phân

    Giờ hoàng đạo

    Nhâm Tý
    (23h-1h)

    Giáp Dần
    (3h-5h)

    Ất Mão
    (5h-7h)

    Mậu Ngọ
    (11h-13h)

    Kỷ Mùi
    (13h-15h)

    Tân Dậu
    (17h-19h)

    Mình thích viết Blog, tìm hiểu Tử Vi, Phong Thủy, Kiến Trúc, nghiên cứu Lịch vạn niên, đọc sách tùm lum, hay chia sẽ kiến thức.

    BẢN ĐỒ BLOG

    Translate



    Quý bạn muốn nghe nhạc?
    Hãy nhấn nút bật loa.
    Cảnh Cực Lạc, tâm bình an.

    Xem tử vi 2025

    xem tử vi năm 2025

    Xem nhiều nhất

    Trạng Quỷnh

    TRUYỆN TRANH TRẠNG QUỶNH

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

    Bài viết theo thời gian

    Quảng cáo
    ×

    SƠ ĐỒ BLOG

    Bài Nỗi Bật

    Tin mới nhất - VnExpress RSS

    Kho Hàng Giá Sỉ

    Dịch Vụ Sửa Nhà

    Thảo Mộc Thái Phong

    Tổng số lượt xem trang