Tự động ghi phiếu THU-CHI trong Excel (1 người xem)

Người dùng đang xem chủ đề này

saomai6692

Thành viên hoạt động
Tham gia
10/8/12
Bài viết
120
Được thích
20
Em chào các anh chị.
Thoạt nhìn thì ai cũng thấy chủ đề này rất nhiều trên diễn đàn, tuy nhiên em làm mãi không chính xác, do vậy em nhờ các anh chị giúp đỡ. Trân trọng cảm ơn
 

File đính kèm

'Bạn làm code này xem thế nào:

PHP:
Sub PhieuTC()
Dim st As Integer, sc As Integer, mn As Integer
On Error Resume Next
mn = 0
For i = 6 To Range("G65536").End(xlUp).Row
    If Month(Range("G" & i)) <> mn Then mn = Month(Range("G" & i)): st = 0: sc = 0
    If Range("J" & i) = "111" Then
        If Range("K" & i) = "3331" Or Range("K" & i) = "3332" Then
        st = st
        Else
        st = st + 1
        End If
        Range("F" & i) = "PT" & Format(st, "00#") & "/" & Format(mn, "0#")
    Else
        If Range("J" & i) = "1331" Or Range("j" & i) = "1332" Then
        sc = sc
        Else
        sc = sc + 1
        End If
        Range("F" & i) = "PC" & Format(sc, "00#") & "/" & Format(mn, "0#")
    End If
Next
End Sub

hoặc sử dụng sự kiện change trong worksheet:

PHP:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim st As Integer, sc As Integer, mn As Integer
If Target.Row >= 6 Then
If Range("G" & Target.Row) = "" Or Range("J" & Target.Row) = ""  Or Range("K" & Target.Row) = "" Then Range("F" & Target.Row) =  Exit Sub
        On Error Resume Next
        mn = 0
        If Target.Column = 7 Or Target.Column = 10 Or Target.Column = 11 Then
            For i = 6 To Target.Row
                    If Month(Range("G" & i)) <> mn Then mn = Month(Range("G" & i)): st = 0: sc = 0
                    If Range("J" & i) = "111" Then
                        If Range("K" & i) = "3331" Or Range("K" & i) = "3332" Then
                        st = st
                        Else
                        st = st + 1
                        End If
                        Range("F" & i) = "PT" & Format(st, "00#") & "/" & Format(mn, "0#")
                    ElseIf Range("K" & i) = "111" Then
                        If Range("J" & i) = "1331" Or Range("j" & i) = "1332" Then
                        sc = sc
                        Else
                        sc = sc + 1
                        End If
                        Range("F" & i) = "PC" & Format(sc, "00#") & "/" & Format(mn, "0#")
                    End If
            Next
        End If
End If
End Sub
 
Chỉnh sửa lần cuối bởi điều hành viên:
Anh chị ơi, cho em CÔNG THỨC thôi, code em vẫn chưa hiểu lắm. Cảm ơn
 
Anh chị ơi, cho em CÔNG THỨC thôi, code em vẫn chưa hiểu lắm. Cảm ơn

Mình dân Xây Dựng không hiểu về tài khoản của kế toán lắm
Bạn có thể thống kê:
Các tài khoản TK nợ lằm trong phiếu thu, Các tài khoản TK có lằm trong phiếu thu,

Các tài khoản TK nợ lằm trong phiếu chi, Các tài khoản TK có lằm trong phiếu chi,
Thì sẽ giải quyết bằng công thức được
 
Làm công thức này vào cột điền phiếu:
=IF(J6=111;"PT/"&TEXT(IF(OR(K6=3332;K6=3331);COUNTIF($J$5:J5;111)-COUNTIF($K$5:K5;3331)-COUNTIF($K$5:K5;3331);COUNTIF($J$5:J5;111)-COUNTIF($K$5:K5;3331)-COUNTIF($K$5:K5;3331)+1);"000#");"PC/"&TEXT(IF(OR(J6=1332;J6=1331);COUNTIF($K$5:K5;111)-COUNTIF($J$5:J5;1332)-COUNTIF($J$5:J5;1331)+0;COUNTIF($K$5:K5;111)-COUNTIF($J$5:J5;1332)-COUNTIF($J$5:J5;1331)+1);"000#"))
 
Cảm ơn anh chị, em gửi lại file mà em đã nhập bằng tay số Thu- chi, Kính mong các anh chị giúp đỡ bằng công thức hoặc code. Trân trọng cảm ơn

cảm ơn anh chị trung.aof, theo tài khoản thì công thức trên là tuyệt vời, nhưng anh chị cho em xin tý điều kiện ngày và người giao dịnh nữa. (file em nhập bằng tay đã gửi trên, em nhập công thức này vào thì nó chưa được tuyệt lắm) Trân trọng cảm ơn.
 

File đính kèm

Chỉnh sửa lần cuối bởi điều hành viên:
Bạn nói rõ hơn đi, chứ cái bạn nhập tay và công thức của mình cho kết quả giống nhau mà!!
 
Cảm ơn anh chị trung.aof, cái phiếu thu số PT/007 nó là 2 ngày khác nhau(ngày 10/1/2011 và ngày 11/1/2011) do vậy số phiếu thu cũng khác nhau, có đúng vậy ko. Hoặc em kéo sai chỗ nào đó ? anh chị giup em với. Cảm ơn
 

File đính kèm

Tại ô F6 bạn nhập công thức sau : rồi kéo xuống các ô phía dưới
F6= IF(J6=111,IF(COUNTIF($J$6:$J6,J6)>=100,"PC/"&COUNTIF($J$6:$J6,J6)+1-1,IF(COUNTIF($J$6:$J6,J6)>=10,"PC/0"&COUNTIF($J$6:$J6,J6)+1-1,"PC/00"&COUNTIF($J$6:$J6,J6)+1-1)),IF(K6=111,IF(COUNTIF($K$6:$K6,K6)>=100,"PT/"&COUNTIF($K$6:$K6,K6)+1-1,IF(COUNTIF($K$6:$K6,K6)>=10,"PT/0"&COUNTIF($K$6:$K6,K6)+1-1,"PT/00"&COUNTIF($K$6:$K6,K6)+1-1))))
 

File đính kèm

Lần chỉnh sửa cuối:
Bạn có thể sử dụng công thức sau tại F6
Mã:
=IF(J6=111,"PT","PC")&"/"& RIGHT("'0000"&IF(J6=111,COUNTIF($J$6:J6,111)-COUNTIF($K$6:K6,33311),COUNTIF($K$6:K6,111)-COUNTIF($J$6:J6,1331)),3)
(riêng PC/019 của bạn: bạm mua gas, khí ô xy và khai VAT chung, bạn kê khai không tuân theo 1 quy luật thì không thể dùng công thức tổng quát được, vì không biết bạn còn các trường hợp nào khác không -> dù là nhiều mặt hàng nhưng chung 1 hóa đơn thì bạn kê khai các mặt hàng chung vào 1 phiếu chi, hoặc nếu muốn tách ra thì VAT cũng phải tách ra)
 
Cảm ơn anh chị, các nghiệp vụ thu- chi độc lập thì kết quả là đúng rồi, nhưng nghiệp vụ thu- chi nó có cả thuế thì nghiệp vụ đó chỉ chung 1 số thứ tự phiếu thu hoặc chi vd:em tải lên trên #8 rất rõ. Kính mong được giúp đỡ. Cảm ơn
 
Cảm ơn anh chị, các nghiệp vụ thu- chi độc lập thì kết quả là đúng rồi, nhưng nghiệp vụ thu- chi nó có cả thuế thì nghiệp vụ đó chỉ chung 1 số thứ tự phiếu thu hoặc chi vd:em tải lên trên #8 rất rõ. Kính mong được giúp đỡ. Cảm ơn
phần #8 thì tôi giải quyết rồi, quan trọng là phần PC/019, bạn có hiểu ý tôi không, bạn nhập như thế là không giống với bên trên, Phiếu chi VAT chung cho việc mua 02 mặt hàng gas và khí ô xy
 
Em đồng ý với ý kiến cuả anh chị, Pc/19 nhập liệu sai, không theo quy tắc NKC, em sẽ sửa lại. Còn công thức trên rất tuyệt vời: ngắn gọn, rễ hiểu và đặc biệt ko phải dùng công thức mảng như một số vd khác trên diễn đàn. Em trân trọng cảm ơn các anh chị, cảm ơn tttmuahmuah.
 
Anh chị cho em hỏi thêm: trên thực tế một hóa đơn GTGT tổng thanh toán bằng tiền mặt <20 triệu, trong đó có nhiều mặt hàng và chỉ có một dòng thuế, khi viết 01 phiếu chi ra thì có thể điều chỉnh công thức trên được không(kể cả dùng cột phụ). Em cảm ơn
 
Anh chị cho em hỏi thêm: trên thực tế một hóa đơn GTGT tổng thanh toán bằng tiền mặt <20 triệu, trong đó có nhiều mặt hàng và chỉ có một dòng thuế, khi viết 01 phiếu chi ra thì có thể điều chỉnh công thức trên được không(kể cả dùng cột phụ). Em cảm ơn
Hình như bạn chỉ thu chi tiền mặt 111
Bạn xem File này xem có đúng ý không nhé
Mình không am hiểu về Kế toán lắm
Theo kết quả nhập tay của bạn thì mình thấy phần bôi đỏ sao không được gộp chung vào 1 phiếu chi PC/001
Công thức ở D6;E6;F6
Bôi đen cho 3 cột ở dòng 6 sao chép xuống
 

File đính kèm

Lần chỉnh sửa cuối:
Em cảm ơn anh chị. Em chưa thấy các bác Ban quản trị GPE lên tiếng nhỉ, góp ý cho em #14, em cảm ơn
 
Chào bạn saomai6692!tôi đã xem rất kỹ file của bạn rồi, có thể bạn vội cho lên up lên diễn đàn còn thiếu dữ liệu rất quan trọng, đó là: cột số hóa đơn GTGT.vì trong file của bạn có nghiệp vụ đơn(tức là ko có thuế VAT), và nghiệp vụ kép(có VAT) tạm gọi như vậy, tức là phải Hóa đơn GTGT, và là phải có số hóa đơn(xét về điều kiện số HĐ thì ít khi trùng) do vậy cần thiết phải có cột số hóa đơn GTGT(7số).,mỗi một hóa đơn là một nghiệp vụ thu hoặc chi, tức là một phiếu thu hoặc một phiếu chi.Để giải quyết #14 và file của bạn ta chỉ cần:-Đối với nghiệp vụ THU kép(đơn ko để ý) điều kện là: Số hóa đơn GTGT xuất (hoặc số phiếu xuất kho) + nợ 111 if(and(cột nợ=111;số hóa đơn);..-Đối với nghiệp vụ CHI kép: Số hóa đơn GTGT nhập (hoặc số phiếu nhập kho) + có 111 if(and(cột có=111;số hóa đơn);..Có thể phải thêm cột phụ cho 2 cột thu và chi; đặc biệt hạn chế công thức mảngKính đề nghị các anh chị tạo giúp công thức cho bạn saomai, vì tôi không giành excẹl lắm. Cảm ơn
 
Đúng vậy, em cảm ơn, chỉ cần thêm 1 cột số Hóa đơn GTGT hoặc số phiếu nhập xuất (gọi chung là số chứng từ) là giải được phải không anh chị, cho em xin công thức với nhé, nếu ko phải công thức mảng thì tốt. Cảm ơn
 
Quá chuẩn. Trân trọng cảm ơn các anh chị diễn đàn GPE, kể ra ko phải công thức mảng thì tốt để tránh ì ạch, anh chị nào có ý kiến khác ko ạ.
 

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

Back
Top Bottom