Segue código para a validação do CNPJ que compreende as informações cadastrais das entidades de interesse das administrações tributárias da União, dos Estados, do Distrito Federal e dos Municípios.
Function cnpj_Validation(CNPJ As String) As String'Calcula os dígitos verificadores do CNPJDim I As IntegerDim intFator As IntegerDim intTotal As IntegerDim intResto'Verifica se tem 12 ou 14 dígitosIf Not (Len(CNPJ) = 12 Or Len(CNPJ) = 14) ThenExit FunctionElse'Verifica se é numéricoIf Not IsNumeric(CNPJ) ThenExit FunctionElse'Trunca o CNPJ em 12 caracteresLet CNPJ = Left$(CNPJ, 12)End IfEnd IfInicio:'Percorre as colunas (de trás para frente),'multiplicando por seus respectivos fatoresLet intFator = 2Let intTotal = 0For I = Len(CNPJ) To 1 Step -1If intFator > 9 Then intFator = 2Let intTotal = intTotal + ((CInt(Mid(CNPJ, I, 1)) * intFator))Let intFator = intFator + 1Next I'Obtém o resto da divisão por 11Let I = intTotal Mod 11'Subtrai 11 do restoLet I = 11 - I'O dígito verificador é iIf I = 10 Or I = 11 Then I = 0'Concatena ao CNPJLet CNPJ = CNPJ & CStr(I)If Len(CNPJ) = 13 Then'Calcula o segundo dígitoGoTo InicioEnd If'Retorna os dígitos verificadoresLet fDigCNPJ = Right$(CNPJ, 2)End Function
Tags: VBA, Tips, CNPJ