Lớp học GPE tháng 10 - TPHCM: Conditional Formatting và Data Validation (tối 4, 6/10) | Excel cơ bản (tối 9, 11, 13/10) |
Thuần thục các hàm dò tìm (tối 10, 12/10) | Tất tần tật về PivotTable (tối 16, 18, 20/10) |
Tất tần tật về Filter và Advanced Filter (tối 23, 25/10) | Name động và biểu đồ (tối 24, 26, 28/10)

Đăng ký học Khởi đầu cùng Google Spreadsheet - 2 chủ nhật 1 và 8/10 - TPHCM

Đăng ký học Xây dựng ứng dụng Form bằng VBA - 2 chủ nhật 15 và 22/10 - TPHCM

Kiểm tra Mã số thuế hợp lệ bằng Excel

Thảo luận trong 'Excel và Kế Toán' bắt đầu bởi gnurtel, 22 Tháng tám 2007.

  1. gnurtel

    gnurtel Thành viên mới

    Chào các bác,
    Theo tôi được biết mã số được tạo theo một quy luật nhất định, với 10 con số đầu người ta có thể kiểm tra được MST bạn gõ vào có đúng hay không.
    Bác nào có thể tạo ra 1 file hoặc 1 hàm để kiểm tra tính hợp lệ của mã số thuế được không? xin cảm ơn !
     
  2. Mr Okebab

    Mr Okebab Ngon Ngất Ngây

    Hình như trong trang web của Tổng cục Thuế có nói về vấn đề này đấy. Bạn thử tham khảo xem.


    Thân!
     
  3. ThuNghi

    ThuNghi Hãy cho rồi sẽ nhận!

    Gọi số thứ 1 là S1, 9 là S9
    MOD(10-(S1*31+S2*29+S3*23+S4*19+S5*17+S6*13+S7*7+S8*5+S9*3),11)
    Bạn check lại có OK không. Còn đây là addins tôi lấy trên GPE.
     
  4. NHG

    NHG Thành viên chính thức

    Mình xin giải thích rõ hơn một chút, quy luật của một mã số thuế bất kỳ là:
    Gọi số thứ 1 là S1, 9 là S9; số thứ 10 là S10
    Nếu giá trị của MOD(10-(S1*31+S2*29+S3*23+S4*19+S5*17+S6*13+S7*7+S8*5+S9* 3),11) bằng đúng S10 thì mã số thuế đấy là đúng đấy các bạn ạ.

    Và vì mã số thuế có thể có lúc là "0101567589-001" nên mình xin mạn phép sửa đổi code trên một tẹo để nó kiểm tra đúng trong mọi trường hợp:
    Mã:
    Function tccheck(mst1) As Boolean
    mst = Mid(mst1, 1, 10)
    If IsNumeric(mst) Then
    msttext = Format(mst, "0000000000")
    Else
    msttext = mst
    End If
    skt = CDbl(Mid(msttext, 1, 1)) * 31
    skt = skt + CDbl(Mid(msttext, 2, 1)) * 29
    skt = skt + CDbl(Mid(msttext, 3, 1)) * 23
    skt = skt + CDbl(Mid(msttext, 4, 1)) * 19
    skt = skt + CDbl(Mid(msttext, 5, 1)) * 17
    skt = skt + CDbl(Mid(msttext, 6, 1)) * 13
    skt = skt + CDbl(Mid(msttext, 7, 1)) * 7
    skt = skt + CDbl(Mid(msttext, 8, 1)) * 5
    skt = skt + CDbl(Mid(msttext, 9, 1)) * 3
    tccheck = (CDbl(Mid(msttext, 10)) = 10 - skt Mod 11)
    End Function
    
     
    Chỉnh sửa lần cuối bởi điều hành viên: 5 Tháng năm 2009
  5. hoaimy78

    hoaimy78 Thành viên mới

    Bạn có thể tra mã số thuế trong trang web của Tổng cục Thuế, nhưng trong đó họ cảnh báo đó chỉ là để tham khảo thôi chứ mình thấy cũng chưa cập nhật đâu. (nhưng mình cũng hay tra thấy cũng khá chính xác đấy)
     
  6. yeudoi

    yeudoi Moderator Staff Member

    Ah cái này đã có bên www.webketoan.com nếu bạn tìm không ra mình sẽ tìm ở nhà và gửi cho bạn.
     
  7. bdnatuan

    bdnatuan Thành viên mới

    Chú yeudoi ơi bên đó em tìm hỏng ra!$@!! , hay là chú share ;;;;;;;;;;; qua email của cháu nha bdnatuan@gmail.com
     
    Lần chỉnh sửa cuối: 30 Tháng tám 2007
  8. yeudoi

    yeudoi Moderator Staff Member

    ôi bữa nay mình có thêm một đứa cháu nữa. uh để chú tìm lại thử.
     
  9. yeudoi

    yeudoi Moderator Staff Member

    Đây là file của bạn nào mình không nhớ nữa.Bạn xem thử
     

    Các file đính kèm:

  10. lamsieuquay

    lamsieuquay Thành viên mới

    Cong thuc thue C#

    Private Function MSTcheck(ByVal mst1) As Boolean

    Dim msttext, skt, mst As String

    If Len(mst1 & "") = 13 Or Len(mst1 & "") = 10 Then
    mst = Mid(mst1, 1, 10)
    If IsNumeric(mst) Then
    msttext = mst
    Else

    Exit Function
    End If
    msttext = mst

    skt = CDbl(Mid(msttext, 1, 1)) * 31
    skt = skt + CDbl(Mid(msttext, 2, 1)) * 29
    skt = skt + CDbl(Mid(msttext, 3, 1)) * 23
    skt = skt + CDbl(Mid(msttext, 4, 1)) * 19
    skt = skt + CDbl(Mid(msttext, 5, 1)) * 17
    skt = skt + CDbl(Mid(msttext, 6, 1)) * 13
    skt = skt + CDbl(Mid(msttext, 7, 1)) * 7
    skt = skt + CDbl(Mid(msttext, 8, 1)) * 5
    skt = skt + CDbl(Mid(msttext, 9, 1)) * 3
    MSTcheck = (CDbl(Mid(msttext, 10)) = 10 - skt Mod 11)
    End If
    End Function
     
  11. minhnc

    minhnc Nguyễn Công Minh

  12. minhnc

    minhnc Nguyễn Công Minh

    Các file đính kèm:

  13. minhnc

    minhnc Nguyễn Công Minh

    Đang nhờ mọi người giúp đỡ bài này mà chưa thấy ai phản hồi.
    Mình nhớ có bài viết về tra tỷ giá cũng kiểu lấy dữ liệu từ 1 trang web vào excel. Nhưng cái này nhiều dữ liệu và có dữ liệu nhập vào từ cel nên cũng chưa áp dụng được. Mong mọi người giúp đỡ
    Cảm ơn nhiều
     
  14. Nguyễn Duy Tuân

    Nguyễn Duy Tuân Nghị Hách

    Biết được đường link URL tới database thì mọi chuyện rất đơn giản. Vụ tra tỷ giá cũng là nhờ biết được đường link mà thôi. Để biết được đườnglink thì phải do nhà cung cấp dịch vụ web đó cấp thímơi biết.
     
  15. minhnc

    minhnc Nguyễn Công Minh

    Gửi anh Tuân.
    Em thấy vụ file tỷ giá cũng chỉ có link đến trang tỷ giá mà thôi. dùng 1 đoạn code kết nối vào đó, sau đó copy table tại web đó dán vào bảng tính.
    Cụ thể code dưới đây

    ****************
    Private Sub CommandButton1_Click()
    Dim objWeb As QueryTable
    Dim sWebTable As String
    'Trong ma html cua site nay ty gia duoc luu trong table thu 3
    sWebTable = 3
    Set objWeb = ActiveSheet.QueryTables.Add( _
    Connection:="URL;http://www.vnmedia.vn/giavang_tygia.asp", _
    Destination:=Range("A1"))

    With objWeb

    .WebSelectionType = xlSpecifiedTables
    .WebTables = sWebTable
    .Refresh BackgroundQuery:=False
    .SaveData = True
    End With
    Set objWeb = Nothing
    Range("A22:E22").Select
    Selection.ClearContents
    ActiveCell.FormulaR1C1 = "Website: http://www.ruadangyeu.info"
    End Sub

    **************
    Như trên, nó chỉ có kết nối vào địa chỉ :http://www.vnmedia.vn/giavang_tygia.asp,


    ở đây, cũng đã có link vào web :http://www.gdt.gov.vn/gdtLive/Khoi-...-ve-nguoi-nop-thue?&location=tct&location=tct.
    Liệu anh và mọi người có 1 giải pháp nào nữa ko?
    Cảm ơn nhiều
     
  16. Nguyễn Duy Tuân

    Nguyễn Duy Tuân Nghị Hách

    http://www.vnmedia.vn/giavang_tygia.asp chính là đường link tới table mà. Vấn đề là cái bảng thông tin mã số thuế kia là đường link nào? Cái đường dẫn mà minhnc chỉ là đường link tới trang web thôi chứ không phải tới một table của nó.
     
  17. ChanhTQ@

    ChanhTQ@ Thành viên già cỗi.

    Vui một chút

    PHP:
    Private Function MSTcheck(ByVal mst1) As Boolean 
     Dim msttext
    sktmst As String
     
     
    If Len(mst1 "") = 13 Or Len(mst1 "") = 10 Then
         mst 
    Mid(mst1110)
         If 
    IsNumeric(mstThen
               msttext 
    mst
         
    Else 
               Exit Function
        
    End If
        
    msttext mst
    ' *    *        *    *    *        *    *    *        *' 
        
    skt CDbl(Mid(msttext11)) * 31
        skt 
    skt CDbl(Mid(msttext21)) * 29
        skt 
    skt CDbl(Mid(msttext31)) * 23
        skt 
    skt CDbl(Mid(msttext41)) * 19
        skt 
    skt CDbl(Mid(msttext51)) * 17
        skt 
    skt CDbl(Mid(msttext61)) * 13
        skt 
    skt CDbl(Mid(msttext71)) * 7
        skt 
    skt CDbl(Mid(msttext81)) * 5
        skt 
    skt CDbl(Mid(msttext91)) * 3
    ' *    *        *    *    *        *    *    *        *'
    MSTcheck = (CDbl(Mid(msttext10)) = 10 skt Mod 11)
    End If
    End Function
    Mong các bạn thử sức!
     
  18. phuongc5

    phuongc5 Thành viên hoạt động

    Sao mình kiểm tra với dãy số: 1245789 lại cho kết quả là TRUE vậy??? ( = tccheck(1245789) =====> TRUE
     
  19. huuthang_bd

    huuthang_bd Thay thái độ đổi cuộc đời

    Qui luật của MST chỉ là điều kiện cần chứ không phải là điều kiện đủ để xác định một dãy số có phải là MST hay không. Thế này nhé: Một MST đúng thì bắt buộc phải theo quy luật này nhưng một dãy số có quy luật này thì chưa chắc là một MST.
     
  20. nguyênvankên

    nguyênvankên Thành viên mới

    Bạn nào có cách gì để kiểm tra mã sổ thuế từ excel sau đó chuyển qua phần mềm thuế không xin cảm ơn!Bạn nào có gửi cho mình xin nhé cả cách hưởng dẫn sử dụng nữa.mai :vienhaiduonghoc@yahoo.com.nhớ gủi cho mình nhé
     

Chia sẻ trang này