Cadastro de Clientes no Excel com VBA

Objetivo: Cadastro de clientes com consulta online do endereço através de um webservice e ainda cadastrar em uma planilha no Excel os dados do cadastro que foram cadastrados no formulário.



// ]]>


Para analisar as alterações criadas no VBA clique na guia Desenvolvedor->Visual Basic, as procedures criadas foram:

1. lsPesquisaCEP: Realiza a consulta dos dados do WebService de consulta de CEP.

2. lsAdiciona: Adiciona os dados cadastrados no formulário de clientes.

Sub lsPesquisaCEP(ByVal sCEP As String) On Error GoTo TratarErro Range("Consulta!a1:H1").Clear If sCEP <> "" Then With ActiveWorkbook.XmlMaps("webservicecep_Mapa") .ShowImportExportValidationErrors = False .AdjustColumnWidth = True .PreserveColumnFilter = False .PreserveNumberFormatting = False .AppendOnImport = False End With ActiveWorkbook.XmlImport URL:= _ "http://republicavirtual.com.br/web_cep.php?cep=" & sCEP, ImportMap:= _ Nothing, Overwrite:=False, Destination:=Range("Consulta!$a$1") End If Calculate Sair: Exit Sub TratarErro: MsgBox "CEP não cadastrado!" GoTo Sair Resume End Sub

Sub lsAdiciona() Dim iTotalLinhas As Integer Worksheets("Banco").Activate Range("Banco!$A$1").Select iTotalLinhas = Cells(Rows.Count, 1).End(xlUp).Row + 1 Cells(iTotalLinhas, 1).Value = Range("Banco!$L$1").Value + 1 Cells(iTotalLinhas, 2).Value = UCase(Range("Formulario!E7").Value) 'nome Cells(iTotalLinhas, 3).Value = Range("Formulario!E9").Value 'cep Cells(iTotalLinhas, 4).Value = UCase(Range("Formulario!E11").Value) 'tipo Cells(iTotalLinhas, 5).Value = UCase(Range("Formulario!G11").Value) 'logradouro Cells(iTotalLinhas, 6).Value = Range("Formulario!M11").Value 'número Cells(iTotalLinhas, 7).Value = UCase(Range("Formulario!E13").Value) 'bairro Cells(iTotalLinhas, 8).Value = UCase(Range("Formulario!E15").Value) 'cidade Cells(iTotalLinhas, 9).Value = UCase(Range("Formulario!M15").Value) 'uf Worksheets("Formulario").Activate Range("Formulario!E7").Value = "" 'nome Range("Formulario!E9").Value = "" 'cep Range("Formulario!M11").Value = "" 'número End Sub

Marcos Rieper



excel vba

SISTEMA DE GESTÃO CONTA AZUL

O Excel é uma plataforma de trabalho muito aberta para servir ao gerenciamento de dados de uma empresa, dado a complexidade e a integração entre as diversas áreas que a compõe. Mas é a melhor para analisar suas informações.

Com a intenção de atender as micro e pequenas empresas a Conta Azul criou um software de gestão aonde você tudo o que você precisa para gerir a sua empresa: Estoque, Vendas, Financeiro e ainda emite Nota Fiscal Eletrônica, tudo isso em um sistema simples de trabalhar, que você acessa pela internet, não há a necessidade de comprar servidores e preocupar-se com backup e atendimento através de 0800.

O preço da ferramenta também chama a atenção, sendo um preço mais do que justo para se ter o controle dos dados e a geração de informações para a análise do seu negócio.

ContaAzul é um software de gestão financeira e fiscal para micro e pequenas empresas. Ele funciona 100% em plataforma web, não necessitando nenhuma instalação ou atualização. Você pode acessar de qualquer lugar e não tem necessidade de comprar nova licença caso troque de computador.

  O Guia do Excel recomenda o Conta Azul no gerenciamento de sua empresa.
Use QR-Code to get this permaking using your Smartphone. QR Code for Cadastro de Clientes no Excel com VBA

29 Comentários

  1. Kruger disse:

    Olá Rieper… sempre se superando heim!

    Seguinte: Consulta um cep que inicie com zero “0″;
    Exemplo: 02350050

  2. Marcos Rieper disse:

    Olá Ivan,

    A gente tenta melhorar sempre, hehehe.

    Com relação ao bug, é verdade. Vou arrumar e postar again.

    Valew

    Rieper

  3. Luiz disse:

    Cara, Parabens aew.Marcos, estou com duvida a um tempão de como fazer o cadastro da forma que como fez.
    Sub lsAdiciona()
    Dim iTotalLinhas As Integer

    Worksheets(“Banco”).Activate
    Range(“Banco!$A$1″).Select

    iTotalLinhas = Cells(Rows.Count, 1).End(xlUp).Row + 1

    Cells(iTotalLinhas, 1).Value = Range(“Banco!$L$1″).Value + 1
    Cells(iTotalLinhas, 2).Value = UCase(Range(“Formulario!E7″).Value) ‘nome
    Cells(iTotalLinhas, 3).Value = Range(“Formulario!E9″).Value ‘cep
    Cells(iTotalLinhas, 4).Value = UCase(Range(“Formulario!E11″).Value) ‘tipo
    Cells(iTotalLinhas, 5).Value = UCase(Range(“Formulario!G11″).Value) ‘logradouro
    Cells(iTotalLinhas, 6).Value = Range(“Formulario!M11″).Value ‘número
    Cells(iTotalLinhas, 7).Value = UCase(Range(“Formulario!E13″).Value) ‘bairro
    Cells(iTotalLinhas, 8).Value = UCase(Range(“Formulario!E15″).Value) ‘cidade
    Cells(iTotalLinhas, 9).Value = UCase(Range(“Formulario!M15″).Value) ‘uf

    Worksheets(“Formulario”).Activate

    Range(“Formulario!E7″).Value = “” ‘nome
    Range(“Formulario!E9″).Value = “” ‘cep
    Range(“Formulario!M11″).Value = “” ‘número

    End Sub

    Se Possivel puder fazer uma video-aula ou algo assim, pq eu nao entendi, e tbm sobre como vc fez com o cep das cidades e tals, mto bom, parabens aew . se puder me ajudar .

  4. enivaldo disse:

    Gostaria de saber como faço para deixar como padrão o site dos correios para fazer a busca do CEP, pois estou fazendo alguns testes com CEP de diversas localidades e não localiza

    • Marcos Rieper disse:

      Boa noite Enivaldo,

      A base de dados do CEP que está sendo utilizada no cadastro de clientes é um web service gratuito, o do correio é pago.

      Teria que procurar algum outro web service melhor na internet com um banco mais atualizado.

      Abraço

      Marcos Rieper

  5. Elaine disse:

    Olá Marcos,

    Agradeço pela dica! Estou precisando disso, só tem um problema, sou bastante leiga em VB e o meu Excel é 2003. Tentei criar a mesma planilha, mas não está aparecendo a Macro lsPesquisaCEP quando abro a guia Macro e também não sei o que é sCEP.
    Enfim, será qe poderia me passar o arquivo na versão 2003 ou entrar em contato?

    Obrigada
    Elaine

  6. Samuel Marques disse:

    Bom dia Marcos

    estou precissando de uma planilha para cadastro de clientes me contacta por email para tratarmos o assunto e valor.

    sammuelmarques@hotmail.com

    grato: samuel

  7. Ivair Pires disse:

    Bom dia
    gostei da plan gostaria de saber se consigo adaptar ela para baixar n registro de um site
    seria o numero final do link abaixo + 1 ou algo parecido
    http://www.portaldocidadao.tce.sp.gov.br/despesas_detalhada/11092931
    ajudaria muito
    abraços

  8. André disse:

    Consigo colocar o cadastro em um botão, por exemplo, quando eu quizer cadastrar um cliente, aperto o botao “cadastrar” e aparece a tela para cadastro.

    • Marcos Rieper disse:

      Boa tarde André,

      Consegue sim é só criar uma sub co mo código parecido com o abaixo utilizando o procedimento Show.

      Sub lsChamarFormulario()
      frmCadClientes.Show
      End Sub

      Abraço

      Marcos Rieper

  9. FERNANDO disse:

    BOA TARDE COMPANHEIRO

    ADOREI SEU PROGRAMA PARABÉNS, GOSTARIA DE ADD MAIS UNS CAMPOS PARA CADASTRO TIPO CNPJ, IE, E-MAIL, FONE.
    É POSSIVEL ACRESCENTAR E POSTAR AI PARA DONWLOAD?

    FICO NO AGUARDO DE SEU RETORNO.

    Atenciosamente
    Fernando Jonathan de Brito

  10. zairon disse:

    marcos gostei muito do programa que vc fez,gostaria de saber se tem como vc fazer um para mim com CNPJ, IE, E-MAIL, FONE.desde já obrigado.

  11. jailson disse:

    Bom dia amigo, muito legal seu aplicativo gostaria de saber se vc poderia demonstra como seria um botão de alteração para a informação preechido na planilha de banco de clientes ou seja se que precisa-se alterar a informação pela tela de cadastro.

  12. Marcio disse:

    COMO FAÇO PRA CONFIGURAR UMA PAGINA DE IMPRESSAO COM CAMPOS EM DETERMINADOS LOCAIS COM VBA?

  13. Armando Pereira disse:

    Gostaria de entender como a planilha oculta é utilizada. Pois não vejo referencia dela no módulo. Além disso, se tem como apontar Destination:= para outro lugar, por exemplo, direto para campos específicos em uma UserForm, por exemplo.

  14. Nscimento disse:

    Bixo, essa planilha ficou show!!! mas teria como inserirno código para trazer a latitude e longitude desse endereço?

    desde de já agradeço!!!

  15. nascimento disse:

    Olá marcos, gotsria de saber se tem com adcionar os campos Latitude e Longitude do endereço desejado.

  16. Olá Marcos,

    Show esta sua planilha.
    Gostaria de saber se vc consegue me ajudar com um trabalho semelhante. Tenho uma planilha de ficha cadastral em VBA onde eu fiz umas adaptações e gostaria de preencher os campos de endereço ao digitar o CEP.
    Outra coisa q gostaria de inserir na VBA é a inclusão de foto no cadastro.

    Márcio

  17. Fabrício disse:

    Marcos, vc indica algum outro webservice para o cadastro de clientes? O republica virtual está fora do ar.

    grato pela atenção!

    fabrício

  18. Matheus disse:

    Boa noite meu amigo to com um problema urgente e gostaria de saber se tem como o senhor me ajudar, precisaria de um desses so que com as seguintes informações a mais

    -Telefone para contato
    -Inicio do serviço
    -pago(opção sim e não) e quanto foi pago se sim
    -tipo de serviço
    - e numero do documento
    Isso tudo claro sem abusar da sua boa vontade, mas se o senhor pudesse me ajuda seria incrível pois meu chefe esta me sufocando por causa disso

    • Marcos Rieper disse:

      Boa noite Matheus,

      Para fazer isso é necessário um pouco mais de conhecimento em VBA, infelizmente não disponho de tempo para atender todos os pedidos. Este demoraria algum tempo para ser feito, teria que ser validado com você e tudo mais.

      No projeto final do curso de VBA do site é passado passo-a-passo como criar este formulário e com o conhecimento de VBA e algum tempo e disposição você conseguiria fazer estas alterações.

      Abraço

      Marcos Rieper

  19. Carlos disse:

    Ola parabéns pela planilha, estou precisando de uma planilha com mais campos (Nome do cliente, E-mail, telefone, aniversario e o endereço conforme esta planilha) como faço para consegui, gostaria também de aula para criar,é possível? favor entrar em contato via e-mail carlossilva48@hotmail.com
    Obrigado Carlos

    • Marcos Rieper disse:

      Bom dia Carlos,

      Obrigado pelo seu contato, no momento não realizamos consultoria em Excel, mas no curso de VBA do Guia do Excel você aprenderá até o final do curso como criar este formulário e realizar as modificações necessárias.

      Abraço

      Marcos Rieper

Deixe o seu comentário


 
%d blogueiros gostam disto: