Viết Code ThueTNCN không chạy được.

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

btkc

Thành viên mới
Tham gia
24/3/07
Bài viết
8
Được thích
2
Em có viết 1 Code ThueTNCN (Sub ThueTNCN) nhưng không chạy được. Mục đích là nhập tham số vào 1 Sheet, chỉ việc nhấn Button thì kết quả sẽ trả về Sheet khác. Các anh chị cao thủ giúp em sửa code với. Em cảm ơn các anh chị nhiều.
 

File đính kèm

Em có viết 1 Code ThueTNCN (Sub ThueTNCN) nhưng không chạy được. Mục đích là nhập tham số vào 1 Sheet, chỉ việc nhấn Button thì kết quả sẽ trả về Sheet khác. Các anh chị cao thủ giúp em sửa code với. Em cảm ơn các anh chị nhiều.

Dữ liệu của bạn sơ sài quá. Đọc code của bạn đoán ý, chẳng biết có đúng hay không nữa.

Bạn chạy thử trật tính sau vậy.

Mã:
Sub TNCN()  Dim SrcArr, TsArr, ResArr()
  Dim lR As Long, i As Long, lRIndex As Long
  TsArr = Sheet3.Range(Sheet3.[D5], Sheet3.[D65000].End(xlUp)).Offset(, -1).Resize(, 3).Value
  With Sheet1
    lRIndex = .[A65000].End(xlUp).Row
    If lRIndex > 5 Then
    SrcArr = .Range(.[A6], .[A65000].End(xlUp)).Offset(, 10).Value
    ReDim ResArr(1 To UBound(SrcArr), 1 To 1)
    For lR = 1 To UBound(SrcArr)
      If Len(SrcArr(lR, 1)) Then
        For i = 2 To UBound(TsArr)
          If CLng(SrcArr(lR, 1)) <= CLng(TsArr(i - 1, 1)) Then
            ResArr(lR, 1) = Round(SrcArr(lR, 1) * TsArr(i - 1, 2), 0)
            Exit For
          ElseIf CLng(SrcArr(lR, 1)) > CLng(TsArr(i - 1, 1)) And CLng(SrcArr(lR, 1)) <= CLng(TsArr(i, 1)) Then
            ResArr(lR, 1) = Round(SrcArr(lR, 1) * TsArr(i, 2), 0) - TsArr(i, 3)
            Exit For
          Else
            ResArr(lR, 1) = Round(SrcArr(lR, 1) * TsArr(UBound(TsArr), 2), 0) - TsArr(UBound(TsArr), 3)
          End If
        Next i
      End If
    Next lR
    If lR Then
      .[M6:M10000].ClearContents
      .[M6].Resize(lR - 1).Value = ResArr
    End If
    Else
      Exit Sub
    End If
  End With
End Sub
 
Cảm ơn anh/chị đã góp ý cho em.
Dữ liệu của em có ý nghĩa như sau:
“Thuế TNCN phải nộp = Mức thay đổi tính thu nhập tính thuế/tháng * thuế suất – tính thuế phải nộp (cách 2)”
Ví dụ: Thu nhập tính thuế TNCN = 17 triệu ( dữ liệu ở cột K sheet “Tinh thue”)
Thuế TNCN phải nộp = 17 triệu * 0,15 – 750.000 (trường hợp này thu nhập tính thuế <18 triệu thì tính thuế theo bậc 3 ở biểu tính thuế ở sheet “Tham so”)
Anh/chị góp ý cho em thêm nhé. Em cảm ơn nhiều.
 
Cảm ơn anh/chị đã góp ý cho em.
Dữ liệu của em có ý nghĩa như sau:
“Thuế TNCN phải nộp = Mức thay đổi tính thu nhập tính thuế/tháng * thuế suất – tính thuế phải nộp (cách 2)”
Ví dụ: Thu nhập tính thuế TNCN = 17 triệu ( dữ liệu ở cột K sheet “Tinh thue”)
Thuế TNCN phải nộp = 17 triệu * 0,15 – 750.000 (trường hợp này thu nhập tính thuế <18 triệu thì tính thuế theo bậc 3 ở biểu tính thuế ở sheet “Tham so”)
Anh/chị góp ý cho em thêm nhé. Em cảm ơn nhiều.

Bạn chạy thử code trên xem có đúng kết quả mong muốn chưa ? Nếu chưa đúng thì kết quả như thế nào là đúng ? Đưa kết quả mà bạn cần lên xem sao.
 
Sau một hồi tự mày mò em cũng chạy ra được kết quả mong muốn. Vì mới tập tễnh viết Code đầu tiên nên hàm còn rất đơn giản, thô sơ. Mong các anh chị chỉ giáo thêm ạ. Cảm ơn các anh chị nhiều
 

File đính kèm

Em sẽ chạy thử lại luôn ạ. Cảm ơn anh/chị.
 
Sau khi dán Code của anh/chị mhung12005 em thấy kết quả ra đúng như mình mong muốn. Thêm 1 cách viết nữa để học hỏi thêm ạ. Cảm ơn anh/chị mhung12005 nhiều nhé.
 
Web KT

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

Back
Top Bottom