Esqueceu sua senha? Você pode usar o mecanismo de lembrete neste link: Recuperar senha

Você receberá um link de reativação no email cadastrado.

Não recebeu o email? Lembre-se checar o Lixo Eletrônico.

[MODELO] Objeto Módulo Classe - Validação Documentos Brasileiros

Fórum para agrupar todas as propostas de modelos de planilhas de Excel que essa comunidade consegue imaginar. Teve uma idéia? Produziu algo bem bacana? Esse é o lugar!

Moderador: Rafael Monteiro

Avatar do usuário
Mikel Silveira Fraga
Jedi
Jedi
Mensagens: 1116
Registrado em: Sex Mai 27, 2011 3:27 pm
Localização: Bragança Paulista - SP

[MODELO] Objeto Módulo Classe - Validação Documentos Brasileiros

Mensagem por Mikel Silveira Fraga » Ter Jul 26, 2016 4:48 pm

Boa tarde a todos.

Venho com mais um modelo para os amigos do fórum.

A alguns meses, venho aprendendo a trabalhar com a criação de Objetos, através do Módulo de Classe, localizado no Visual Basic Editor. Para meu aprendizado, desenvolvi uma classe que realiza Validação do Dígito Verificador de documentos brasileiros, como:
- Cadastro Nacional de Pessoa Jurídica (CNPJ);
- Cadastro de Pessoa Física (CPF);
- Título de Eleitor (TE);
- Documento Fiscal Eletrônico (DFe).
Ps.1: Quero ressaltar que os códigos para a realização dos cálculos, foram baseados em modelos de outros sites da web. Dentro da Classe ValidadeDocument, estão localizados todas as referências dos autores que desenvolveram os códigos originais.

Além da função de Validação do Dígito Verificador, o Objeto criado também altera a formatação dos documentos, adicionando/removendo os caracteres especiais existentes na formatação dos documentos.

A proposta do modelo em anexo é demonstrar essas funcionalidades de duas formas diferentes:
- A 1ª forma é através de Userform, onde pode ser utilizada para validar documentos em um cadastro de clientes, por exemplo;
- A 2ª forma é através da Criação de Funções(Function) como Fórmulas do Excel.
ModClasse para Validar Documentos.zip
Desenvolvido por: Mikel S Fraga
(57.88 KiB) Baixado 211 vezes
Gostaria muito que o projeto fosse não apenas baixado e utilizado/adaptado pelos usuários, mas sim avaliado de forma um pouco criteriosa, principalmente pelos usuários que entendam um pouco sobre Programação Orientada a Objeto no VB6/VBA. Através de sugestões, quero melhorara estrutura de desenvolvimento deste formato.

Ps.2: Este modelo também se encontra no fórum do Guru do Excel.
Espero que todos gostem e conto com a colaboração de todos nesta avaliação.

Abraço a todos e excelente semana.


Gostou da dica? Clique no JOIA no topo da mensagem.
Esclareceu suas dúvidas? Acrescente ao título do tópico a expressão: [RESOLVIDO].
Orientações sobre o fórum, acesse aqui.

Mikel Silveira Fraga
E-mail: mikel-sf@hotmail.com | Skype: mikelsf | Linked In

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
netocasaroli
Consultor
Consultor
Mensagens: 219
Registrado em: Seg Mai 11, 2015 5:24 pm
Localização: Londrina-PR

Re: [MODELO] Objeto Módulo Classe - Validação Documentos Brasileiros

Mensagem por netocasaroli » Sex Jul 29, 2016 10:38 pm

Boa noite Mikel,

Primeiramente, parabéns pelo projeto.

Fiz um teste aqui e notei a seguinte situação. Se digito no UserForm um CPF com o DV correto e clico para verificar, ele retorna a validação correta. No entanto, se eu clicar primeiro em "Inserir Formatação" e depois em "Validar Dígito Verificador", ele retorna a validação errada.

Tomei a liberdade de depurar o seu código. Na sub CheckDocument, mesmo a variável pNrDoc não ser uma Null String, no comando If pNrDoc <> "" Then a rotina está interpretando a variável como Null String. Dessa forma, a variável pNrDoc não assume o valor da aNrDoc, não concluindo corretamente o processo de validação. Na verdade, quando o depurador entra em CheckDocument, a variável pNrDoc assume o valor Null, mas no próximo passo do depurador, se verificar da janela de Verificação Imediada o valor de pNrDoc, verá o valor do CPF com a formatação.

Espero ter ajudado um pouco.

Um abraço e bom final de semana.


Se a resposta foi útil, não esqueça de registrar seu agradecimento!! [É aquele "joinha" ali em cima...]


Abs..

Neto Casaroli

Avatar do usuário
Mikel Silveira Fraga
Jedi
Jedi
Mensagens: 1116
Registrado em: Sex Mai 27, 2011 3:27 pm
Localização: Bragança Paulista - SP

Re: [MODELO] Objeto Módulo Classe - Validação Documentos Brasileiros

Mensagem por Mikel Silveira Fraga » Sáb Jul 30, 2016 6:55 am

Neto, bom dia.

Não havia percebido esse erro, mas vou dar uma olhada depois. Na verdade, apesar de parecer a mesma coisa dos demais desenvolvimentos no VBA, a recurso de Criação de Classes é bem novo pra mim.

No início desse ano, comecei a montar um outra classe, muito maior do que essa. Porém, na época, eu realmente não compreendi muito o seu funcionamento, de forma que continuei a evolução, mas de uma forma totalmente desordenada e indo contra o Conceito de Programação Orientada a Objetos. Porém, vi que o resultado, mesmo a classe estando totalmente disforme, foi surpreendente.

Por esse motivo, resolvi montar uma classe que fosse útil, porém mais simples, para testar e compartilhar com os amigos. Além de ser uma forma de me auto-avaliar com o desempenho e retorno de cada um de vocês. Por esse motivo havia pedido que testassem e me retornassem erros e opiniões.

Então cara, não se preocupe com a questão da liberdade. Essa sua observação e apontamento são mais do que válidos para mim.

Bem, vou indo nessa. Excelente final de semana, pra ti e todos do fórum.


Gostou da dica? Clique no JOIA no topo da mensagem.
Esclareceu suas dúvidas? Acrescente ao título do tópico a expressão: [RESOLVIDO].
Orientações sobre o fórum, acesse aqui.

Mikel Silveira Fraga
E-mail: mikel-sf@hotmail.com | Skype: mikelsf | Linked In

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder