Tự động hóa công việc lập báo cáo tài chính, báo cáo thuế bằng VBA Excel [ Phần 1 ]

Hôm nay Gia Bảo sẽ chia sẽ cách giúp bạn Tự động hóa công việc lập báo cáo tài chính, báo cáo thuế bằng VBA Excel, trong nội dung lần trước mình đã chia sẻ hướng dẫn các giúp bạn tạo sổ nhật ký chung, là phần dữ liệu quan trọng giúp bạn lập báo cáo tài chính và các loại sổ sách báo cáo thuế.    

Bước 1 : Bạn tạo các sheet cấu trúc sổ sách kế toán xử lý dữ liệu bao gồm.

  • Sheet HTTK
  • Sheet INSO
  • Sheet CDSPS
  • Sheet Bia-NkC
  • Sheet NKC
  • Sheet SC
  • Sheet SCC-TK
  • Sheet CP
  • Sheet SQ      
  • Sheet KH  
  • Sheet PB

Bước 2 : Viết code lập trình VBA giúp bạn tự động hóa công việc tạo sổ sách kế toán, In sổ báo cáo thuế định kỳ, lập báo cáo tài chính.

Bao gồm các loại sổ & báo cáo kế toán cơ bản sau đây :

  1. CDSPS    Bảng cân đối số phát sinh
  2. BIA-NKC    Bìa Nhật Ký Chung
  3. NKC    Nhật Ký Chung
  4. BIA-SC    Bìa - Sổ Cái
  5. SC    Sổ Cái
  6. SQ    Sổ quỹ tiền mặt
  7. BIA-SQ    Bìa Sổ quỹ tiền mặt
  8. BIA-KH    Bìa Khấu Hao
  9. KH    Khấu Hao
  10. BIA-PB    Bìa khấu hao
  11. KH    BẢng phân bổ
  12. BIA-NVL    Bìa bảng nhập xuất tồn - nguyên vật liệu
  13. NXT NVL    Nhập xuất tồn - nguyên vật liệu
  14. Bia-TP    Bìa - Bảng nhập xuất tồn thành phẩm
  15. NXT TP    Nhập xuất tồn thành phẩm
  16. BIA-HH    Bìa - Nhập xuất tồn hàng hóa
  17. NXT HH    Nhập xuất tồn hàng hóa
  18. BIA-BH    Bìa sổ chi tiết bán hàng
  19. CTBH    Chi tiết bán hàng
  20. BIA-MH    Bìa sổ chi tiết mua hàng
  21. NK MUA    Sổ chi tiết mua hàng
  22. BIA-TL    Bìa - Bảng thanh toán tiền lương
  23. BL    Bảng Lương 
Danh sách sổ sách kế toán được liệt kê trên được nhiều bạn nhận làm dịch vụ kế toán giá rẻ tại nhà áp dụng phù hợp với mô hình doanh nghiệp, công ty mới thành lập, doanh nghiệp có quy mô vừa và nhỏ.  

Hình ảnh minh họa Sổ Cái - Báo Cáo Tài Chính - Báo Cáo Thuế Bằng Excel & VBA

Sau đây toàn bộ code giúp bạn tự động hóa công việc lập báo cáo tài chính, báo cáo thuế bằng VBA Excel, giúp bạn hoàn thiện và tự động hóa công việc phòng kế toán. Không chỉ áp dụng cho nhân viên kế toán công ty, mà còn áp dụng cho nhiều công ty chuyên cung cấp dịch vụ kế toán trọn gói theo hợp đồng thuê ngoài của nhiều doanh nghiệp mới thành lập, công ty thuộc nhiều lĩnh vực ngành nghề bao gồm doanh nghiệp chuyên sản xuất nhựa, sản xuất tôn tráng kẽm, sản xuất gỗ, gia công cơ khí, xây dựng, thiết kế xây dựng, trang trí nội thất. Doanh nghiệp bán sản phẩm sơn, keo, giấy nhám, vật tư, phụ kiện ngành gỗ.... 

Lưu ý tên Sheet thông tin số dòng, tiêu đề cột cần thực hiện chính xác như bảng sheet hình ảnh minh họa về cấu trúc sổ sách kế toán máy bằng Excel như đã chia trên blog này, tránh khi thực  code số liệu hiển thị sai dòng, code ảnh hưởng đến kết quả tính toán.      

Code VBA Tự động hóa công việc lập báo cáo tài chính, báo cáo thuế bằng VBA Excel. 

Module 1 : Bao gồm các code xử lý dữ liệu cân đối số phát sinh,... 

Sub KC_CDSPS()

Sheets("CDSPS").Select
Range("I10").Select
Selection.AutoFilter Field:=7
    Sheets("NKC").Select
    Range("A3:J3").Activate
    Selection.EntireColumn.Hidden = False
    Range("DateKC").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(thang,date,2,0)"
    Range("DateKC").Select
    Selection.Copy
    Range("Datev1").Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Range("Datev2").Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Range("KC5111n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,""5111"",ST_CO)-SUMIF(SH_TK,""5111"",ST_NO)"
    Range("KC5111c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC5112n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,""5112"",ST_CO)-SUMIF(SH_TK,""5112"",ST_NO)"
    Range("KC5112c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC5113n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,""5113"",ST_CO)-SUMIF(SH_TK,""5113"",ST_NO)"
    Range("KC5113c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC5118n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,""5118"",ST_CO)-SUMIF(SH_TK,""5118"",ST_NO)"
    Range("KC5118c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC515_1n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,""515-1"",ST_CO)"
    Range("KC515_1c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC515_2n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,""515-2"",ST_CO)"
    Range("KC515_2c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC711n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,711,ST_CO)"
    Range("KC711c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC632n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,632,ST_NO)"
    Range("KC632c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6411n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6411,ST_NO)"
    Range("KC6411c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6412n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6412,ST_NO)"
    Range("KC6412c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6413n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6413,ST_NO)"
    Range("KC6413c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6414n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6414,ST_NO)"
    Range("KC6414c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6415n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6415,ST_NO)"
    Range("KC6415c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6417n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6417,ST_NO)"
    Range("KC6417c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6418n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6418,ST_NO)"
    Range("KC6418c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6421n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6421,ST_NO)"
    Range("KC6421c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6422n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6422,ST_NO)"
    Range("KC6422c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6423n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6423,ST_NO)"
    Range("KC6423c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6424n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6424,ST_NO)"
    Range("KC6424c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6427n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6427,ST_NO)"
    Range("KC6427c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6428n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6428,ST_NO)"
    Range("KC6428c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC6429n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,6429,ST_NO)"
    Range("KC6429c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC64210n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,64210,ST_NO)"
    Range("KC64210c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC635_1n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,""635-1"",ST_NO)"
    Range("KC635_1c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC635_2n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,""635-2"",ST_NO)"
    Range("KC635_2c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC811n").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK,811,ST_NO)"
    Range("KC811c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("KC421n").Select
    ActiveCell.FormulaR1C1 = _
        "=IF(SUM(vds)>SUM(vcp),SUM(vds)-SUM(vcp),SUM(vcp)-SUM(vds))"
    Range("KC421c").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("LL1").Select
    ActiveCell.FormulaR1C1 = _
        "=IF(SUM(vds)>SUM(vcp),911,4212)"
    Range("LL2").Select
    ActiveCell.FormulaR1C1 = "=IF(LL1=911,4212,911)"
    Range("LL3").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[-1]"
    Range("LL4").Select
    ActiveCell.FormulaR1C1 = "=R[-1]C[1]"
    Range("J9").Select
    ActiveCell.FormulaR1C1 = "=SUM(ST_NO1)"
    Range("K9").Select
    ActiveCell.FormulaR1C1 = "=SUM(ST_CO1)"
    Range("H9:K9").Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Sheets("CDSPS").Select
    Range("E21").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK1,RC2,ST_NO1)"
    Range("F21").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(SH_TK1,RC2,ST_CO1)"
    Range("G21").Select
    ActiveCell.FormulaR1C1 = _
        "=IF((RC[-4]+RC[-2])>(RC[-3]+RC[-1]),(RC[-4]+RC[-2])-(RC[-3]+RC[-1]),0)"
    Range("H21").Select
    ActiveCell.FormulaR1C1 = _
        "=IF((RC[-2]+RC[-4])>(RC[-5]+RC[-3]),(RC[-2]+RC[-4])-(RC[-5]+RC[-3]),0)"
    Range("E21:H21").Select
    Selection.Copy
    Range("CD").Select
    ActiveSheet.Paste
    Range("psc133_1").Select
    ActiveCell.FormulaR1C1 = "=psn133_1"
    Range("psc133_2").Select
    ActiveCell.FormulaR1C1 = "=psn133_2"
    Range("psn133").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn133,1,0,2,1))"
    Range("psn152").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn152,1,0,2,1))"
    Range("psc152").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc152,1,0,2,1))"
    Range("psn156").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn156,1,0,2,1))"
    Range("psc156").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc156,1,0,2,1))"
    Range("psn211").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn211,1,0,6,1))"
    Range("psc211").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc211,1,0,6,1))"
    Range("psn214").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn214,1,0,3,1))"
    Range("psc214").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc214,1,0,3,1))"
    Range("psn212").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn212,1,0,2,1))"
    Range("psc212").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc212,1,0,2,1))"
    Range("psn241").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn241,1,0,3,1))"
    Range("psc241").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc241,1,0,3,1))"
    Range("psn333").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn333,1,0,8,1))"
    Range("psc333").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc333,1,0,8,1))"
    Range("dcn333").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(dcn333,1,0,8,1))"
    Range("dcc333").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(dcc333,1,0,8,1))"
    Range("psn112").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn112,1,0,10,1))"
    Range("psc112").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc112,1,0,10,1))"
    Range("dcn112").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(dcn112,1,0,10,1))"
    Range("dcc112").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(dcc112,1,0,10,1))"
    Range("psn338").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn338,1,0,7,1))"
    Range("psc338").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc338,1,0,7,1))"
    Range("dcn338").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(dcn338,1,0,7,1))"
    Range("dcc338").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(dcc338,1,0,7,1))"
    Range("psn341").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn341,1,0,2,1))"
    Range("psc341").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc341,1,0,2,1))"
    Range("dcn341").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(dcn341,1,0,2,1))"
    Range("dcc341").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(dcc341,1,0,2,1))"
    Range("psn421").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn421,1,0,2,1))"
    Range("psc421").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc421,1,0,2,1))"
    Range("psn511").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn511,1,0,4,1))"
    Range("psc511").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc511,1,0,4,1))"
    Range("psn515").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn515,1,0,2,1))"
    Range("psc515").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc515,1,0,2,1))"
    Range("psn521").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn521,1,0,3,1))"
    Range("psc521").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc521,1,0,3,1))"
   
    Range("psn611").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn611,1,0,2,1))"
    Range("psc611").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc611,1,0,2,1))"
    Range("psn627").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn627,1,0,6,1))"
    Range("psc627").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc627,1,0,6,1))"
    Range("psn635").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn635,1,0,2,1))"
    Range("psc635").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc635,1,0,2,1))"
    Range("psn641").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn641,1,0,7,1))"
    Range("psc641").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc641,1,0,7,1))"
    Range("psn642").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psn642,1,0,8,1))"
    Range("psc642").Select
    ActiveCell.FormulaR1C1 = "=sum(offset(psc642,1,0,8,1))"
    Range("tgddn").Select
    ActiveCell.FormulaR1C1 = "=SUM(vtg1)-ddn112-ddn152-ddn156-ddn211-ddn212-ddn214-ddn241-ddn333-ddn338-ddn341-ddn421"
    Range("tgddc").Select
    ActiveCell.FormulaR1C1 = "=SUM(vtg2)-ddc112-ddc152-ddc156-ddc211-ddc212-ddc214-ddc241-ddc333-ddc338-ddc341-ddc421"
    Range("tgpsn").Select
    ActiveCell.FormulaR1C1 = "=SUM(vtg3)-psn112-psn133-psn152-psn156-psn211-psn212-psn214-psn241-psn333-psn338-psn341-psn421-psn511-psn515-psn627-psn635-psn641-psn642"
    Range("tgpsc").Select
    ActiveCell.FormulaR1C1 = "=SUM(vtg4)-psc112-psc133_1-psc133_2-psc152-psc156-psc211-psc212-psc214-psc241-psc333-psc338-psc341-psc421-psc511-psc515-psc627-psc635-psc641-psc642"
    Range("tgdcn").Select
    ActiveCell.FormulaR1C1 = "=SUM(vtg5)-dcn112-dcn152-dcn156-dcn211-dcn212-dcn214-dcn241-dcn333-dcn338-dcn341-dcn421"
    Range("tgdcc").Select
    ActiveCell.FormulaR1C1 = "=SUM(vtg6)-dcc112-dcc152-dcc156-dcc211-dcc212-dcc214-dcc241-dcc333-dcc338-dcc341-dcc421"
    Range("thu1").Select
    ActiveCell.FormulaR1C1 = _
        "=IF(tgpsn<>tgpsc,""BAÛNG CDSPS KHOÂNG CAÂN"","""")"
    Range("thu2").Select
    ActiveCell.FormulaR1C1 = _
        "=IF(tgpsno<>tgpsco,""NHAÄT KYÙ KHOÂNG CAÂN"","""")"
    Range("ND_CDSPS").Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Sheets("NKC").Select
    Range("e13").Select
    ActiveCell.FormulaR1C1 = "=IF((RC[5]+RC[6])<>0,""v"","""")"
    Range("e13").Select
    Selection.Copy
    Range("E13:E1058").Select
    ActiveSheet.Paste
    Range("E12").Select
    Range(Selection, Selection.End(xlToLeft)).Select
    Selection.AutoFilter
    Range("E13").Select
    Selection.AutoFilter Field:=5, Criteria1:="v"
    Range("F9:g9").Activate
    Selection.EntireColumn.Hidden = True
    Range("I9").Activate
    Selection.EntireColumn.Hidden = True
Sheets("CDSPS").Select
Range("I10").Select
Selection.AutoFilter Field:=7, Criteria1:="1"
End Sub

Module số 2 : Xử lý số liệu sổ cái,..  

Sub INTOANBOSOCAI()
Dim i
With Range("cdsps!b1")
    For i = 10 To 139
    If .Offset(i, 7) = 1 Then
        Range("sc!c11").Value = .Offset(i, 0)
        Sheets("sc").Select
        SOCAI
        ActiveSheet.PrintOut
    End If
    Next i
    End With
End Sub
Sub INSOKT()
Dim a, b
With Range("inso!b1")
    For a = 2 To 100
        If .Offset(a, 2) = 1 Then
        b = .Offset(a, 0)
            If b = "SC" Then
            INTOANBOSOCAI
            Else
                If b = "SQ" Then
                SOQUY
                ActiveSheet.PrintOut
                    Else
                        If b = "CTBH" Then
                        CTBH
                        ActiveSheet.PrintOut
                            Else
                            Sheets(b).Select
                            ActiveSheet.PrintOut
                        End If
                End If
            End If
        End If
    Next a
End With
End Sub
    
Sub CTBH()
    Sheets("CTBH").Select
    Selection.AutoFilter Field:=1
    Range("A11:D169").Select
    Selection.ClearContents
    Range("F11:J169").Select
    Selection.ClearContents
    Application.Goto reference:="nkban1"
    Selection.Copy
    Sheets("CTBH").Select
    Range("A11").Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Application.Goto reference:="nkban2"
    Selection.Copy
    Sheets("CTBH").Select
    Range("d11").Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Application.Goto reference:="nkban3"
    Selection.Copy
    Sheets("CTBH").Select
    Range("F11").Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Selection.AutoFilter Field:=1, Criteria1:="1"
End Sub

Module số 3 : Xử lý số liệu sổ cái, sổ quỹ,...

Sub SOCAI()
    Sheets("NKC").Select
    Selection.AutoFilter Field:=5
    Application.Goto reference:="NKC1"
    Selection.Copy
    Sheets("SC").Select
    Range("A17").Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Range("b2").Select
    ActiveCell.FormulaR1C1 = "=if(or(TK_sc=""133"",TK_sc=""152"",TK_sc=""156"",TK_sc=""511"",TK_sc=""515"",TK_sc=""611"",TK_sc=""635""),TK_sc&""*"",TK_sc)"
    Range("b3").Select
     ActiveCell.FormulaR1C1 = "=TK_sc"
    Application.Goto reference:="NKSC"
    Range("NKSC").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
        Range("A1:B3"), Unique:=False
    Range("j11").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(cd_shtk,TK_sc,vtg1)"
    Range("k11").Select
    ActiveCell.FormulaR1C1 = "=SUMIF(cd_shtk,TK_sc,vtg2)"
    Range("j12").Select
    ActiveCell.FormulaR1C1 = _
        "=SUMIF(cd_shtk,TK_sc,vtg3)"
    Range("k12").Select
    ActiveCell.FormulaR1C1 = _
        "=SUMIF(cd_shtk,TK_sc,vtg4)"
    Range("j13").Select
    ActiveCell.FormulaR1C1 = _
        "=SUMIF(cd_shtk,TK_sc,vtg5)"
    Range("k13").Select
    ActiveCell.FormulaR1C1 = _
        "=SUMIF(cd_shtk,TK_sc,vtg6)"
    Range("j11:k13").Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Rows("1:3").Select
    Selection.EntireRow.Hidden = True
    Columns("E:E").Select
    Range("E9").Activate
    Selection.EntireColumn.Hidden = True
    Columns("h:h").Select
    Range("h9").Activate
    Selection.EntireColumn.Hidden = True
    Range("F1048").Select
End Sub
Sub SOQUY()

    Sheets("SQ").Select
    Range("G10").Select
    'ActiveSheet.ShowAllData
    Range("SQ_nd").Select
    Selection.ClearContents
    Sheets("SC").Select
    Range("C11").Select
    ActiveCell.FormulaR1C1 = "'111"
    SOCAI
    Range("SC_nd1,SC_nd2").Select
    Selection.Copy
    Sheets("SQ").Select
    Range("A12").Select
    ActiveSheet.Paste
    Range("SQ_tgnd").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
        Range("J13:J14"), Unique:=False
End Sub

Module số 4.

Sub KCSCC()
   
    Application.Goto reference:="NKTK"
    ActiveWindow.SmallScroll Down:=10
    ActiveSheet.ShowAllData
    Range("A17").Select
    ActiveCell.FormulaR1C1 = "=DATE(ncc,tcc,1)"
    Range("A17").Select
    Selection.Copy
    Application.Goto reference:="DATEtk"
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Range("D17").Select
    ActiveCell.FormulaR1C1 = "Soá dö ñaàu kyø"
    Range("D17").Select
    Selection.Copy
    Application.Goto reference:="NDtk"
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Sheets("HTTK").Select
    Range("SHTKcc").Select
    Selection.Copy
    Sheets("SCC-TK").Select
    Range("H17").Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Range("L17").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC8,BANG_CDSPS,2,0)"
    Range("M17").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC8,BANG_CDSPS,3,0)"
    Range("L17:M17").Select
    Selection.Copy
    Application.Goto reference:="SDDtk"
    ActiveSheet.Paste
    Selection.Copy
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Application.Goto reference:="NKC1"
    Selection.Copy
    Sheets("SCC-TK").Select
    Application.Goto reference:="NDNK"
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    'Application.Goto Reference:="DATEctk"
    'ActiveCell.FormulaR1C1 = "=DATE(n_SCC,t_SCC,CDSPS!R1C9)"
    Range("A1190").Select
    Selection.Copy
    Application.Goto reference:="DATEctk"
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Range("tgpscc").Select
    ActiveCell.FormulaR1C1 = "Toång soá phaùt sinh"
    Range("tgpscc").Select
    Selection.Copy
    Application.Goto reference:="NDtsps"
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Sheets("HTTK").Select
    Range("SHTKcc").Select
    Selection.Copy
    Sheets("SCC-TK").Select
    Range("ndpscc").Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Range("ndsdck").Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Sheets("SCC-TK").Select
    Range("j1230").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC8,BANG_CDSPS,4,0)"
    Range("k1230").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC8,BANG_CDSPS,5,0)"
    Range("J1230:K1230").Select
    Selection.Copy
    Application.Goto reference:="STtsps"
    ActiveSheet.Paste
    Selection.Copy
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Range("D1351").Select
    ActiveCell.FormulaR1C1 = "Soá dö cuoái kyø"
    Range("D1351").Select
    Selection.Copy
    Application.Goto reference:="NDck"
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Range("L1371").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC8,BANG_CDSPS,6,0)"
    Range("M1371").Select
    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC8,BANG_CDSPS,7,0)"
    Range("L1371:M1371").Select
    Selection.Copy
    Application.Goto reference:="STck"
    ActiveSheet.Paste
    Selection.Copy
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Application.Goto reference:="NKTK"
    Range("NKTK").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
        Range("A1:b3"), Unique:=False
End Sub

Hình ảnh minh họa sheet cấu trúc sổ sách kế toán xử lý dữ liệu bao gồm :

 Sheet HTTK : Hệ Thống Tài Khoản  

 Sheet INSO : Danh sách Sổ sách kế toán cần In 

 

Sheet CDSPS : Cân Đối Số Phát Sinh
 

  Sheet NKC : Sổ Nhật Ký Chung Làm kế Toán Máy & Báo Cáo Thuế Bằng Excel
 
 Sheet SCC-TK : Sổ chi tiết các tài khoản làm báo cáo tài chính, kế toán máy trên Excel
 
 Sheet CP :  Sổ Chi Phí Sản Xuất Kinh Doanh, Làm Kế Toán Máy Bằng Phần Mềm Excel

 Sheet SQ : Sổ quỹ Kế Toán Máy Bằng Excel.
 
Sheet KH : Sổ theo dõi TSCĐ & Trích khấu hao
 
Sheet PB : Sổ Phân Bổ Chi Phí
 

Lưu Ý Phần Xử Liệu dữ liệu Nhật Ký Chung đã được Gia Bảo trình bài trong nội dung bài viết " Hướng dẫn tạo sổ sách kế toán máy ( ghi sổ nhật ký chung ) cực dễ bằng VBA Excel " bạn xem nội dung chi tiết theo link bên dưới nhé...

https://www.digitalnomad.vn/2021/11/huong-dan-tao-so-sach-ke-toan-may-bang-excel-vbaGJ5EF6.html

Do nội dung hướng dẫn tương đối dài do đó Gia Bảo chia nhỏ bài viết thành nhiều phần khác nhau, trong nội dung bài viết kế tiếp :

Sẽ giúp bạn hoàn thiện chi tiết từng mẫu sổ sách được liệt kê trong  nội dung bài viết :

 Tự động hóa công việc lập báo cáo tài chính, báo cáo thuế bằng VBA Excel [ Phần 1 ]

Bao gồm :

  • Hướng dẫn chi tiết tạo và in sổ cái, sổ quĩ, sổ chi tiết tài khoản,...
  • Hướng dẫn chi tiết tạo và in sổ chi tiết xuất nhập tồn.
  • Hướng dẫn chi tiết tạo và in sổ cân đối số phát sinh làm báo cáo thuế bằng Excel .
  • ,...