Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Criação de um Formulario-Controle de Correspondência

Esclarecimentos e dúvidas sob o Modelo de Aplicativo de Cadastro em VBA no Microsoft Excel publicado no site e blog http://www.tomasvasquez.com.br
Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Criação de um Formulario-Controle de Correspondência

Mensagem por webmaster »

Melo,

Pelo que vi na planilha, está tudo funcionando bem. Vi também que consegue editar facilmente o formulário de cadastro. Bom, quanto aos optionbutton, não há segredo. Basta definir o índice da coluna em qual quer que o dado seja gravado (o que é definido nas constantes colCodigo, colCliente, etc) e na hora de coletar o valor do optionbutton, tem que ser algo na base do if mesmo. Por exemplo:

Código: Selecionar todos

If optionButtonValor1.Value Then
     'o optionButtonValor1 está selecionado
Else If optionButtonValor2.Value Then
     'o optionButtonValor2 está selecionado
Else If optionButtonValor3.Value Then
     'o optionButtonValor3 está selecionado
'...
End If
É isso!
Abraços


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
Melo
Colaborador
Colaborador
Mensagens: 70
Registrado em: Ter Jan 12, 2010 4:26 pm

Re: Criação de um Formulario-Controle de Correspondência

Mensagem por Melo »

Amigos

preciso de ajuda,

Modifiquei o layout do Modelo de Cadastro postado no forum pelo webmaster

Nele tenho um OPTIONBOX (AR, SEDEX, SEDEX10 e OUTROS) , onde o mesmo deve salvar em uma planila especificada quando selecionado o desejado, mais o mesmo esta salvando na planilha inicial o código esta inserido no botão de salvar as informações do form. para a planilha.

ActiveWorkbook.Plan2 ("Fornecedores")
If optAr = True Then
ActiveCell.Offset(0, 9).Value = "AR"
ElseIf optSedex = True Then
ActiveCell.Offset(0, 9).Value = "SEDEX"
ElseIf optSedex10 = True Then
ActiveCell.Offset(0, 9).Value = "SEDEX10"
Else
ActiveCell.Offset(0, 9).Value = "OUTROS"
End If

Este é o código que estou usando, mais não consegui modifica ló para minha necessidade

AGrdeço ajuda em como devo fazer, sou iniciante em VB e Excel.


Avatar do usuário
Melo
Colaborador
Colaborador
Mensagens: 70
Registrado em: Ter Jan 12, 2010 4:26 pm

Re: Criação de um Formulario-Controle de Correspondência

Mensagem por Melo »

Webmaster,

Obrigado pela ajuda, vou fazer as alterações.


Avatar do usuário
Melo
Colaborador
Colaborador
Mensagens: 70
Registrado em: Ter Jan 12, 2010 4:26 pm

Re: Criação de um Formulario-Controle de Correspondência

Mensagem por Melo »

Amigos

Webmaster

Como vc olhou o modelo que postei, tem três TextBox (Nome Cliente, CEP Destino e Estado) e no excel tem duas Plan (Forncedores e Clientes), clientes existem cadastros dos cleintes, agora eu queria que ao digitar o codigo do cliente, automaticamente preenche se os Texbox (Nome do Cliente, CEP Destino e Estado) puchados da plan Clientes, e ao clicar em no botão que salva os dados seriam salvos na planilha fornecedores.

Estive analisando em começar com o Auto_Open().

Agradeço a ajuda de todos


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
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Criação de um Formulario-Controle de Correspondência

Mensagem por webmaster »

Melo,

Nesse caso, seria o UserForm_Initialize não?

Chegou a começar algo? Se quer o comportamento desejado, telá que mapear o evento do TextBoxCodigo.

Abraços


Avatar do usuário
Melo
Colaborador
Colaborador
Mensagens: 70
Registrado em: Ter Jan 12, 2010 4:26 pm

Re: Criação de um Formulario-Controle de Correspondência

Mensagem por Melo »

Webmaster

Não cheguei a criar nada, estou idealizando em fazer, mais se o codigo for inserido no UserForm_Initialize ele carregaria ao iniciar o formulario e eu quero quando eu digitar um codigo e quando eu passar para o proximo campo os campos especificados preencheriam.


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Criação de um Formulario-Controle de Correspondência

Mensagem por webmaster »

Melo,

A planilha que está anexa ao tópico ainda é válida ou mudou alguma coisa depois disso?

Abraços


Avatar do usuário
Melo
Colaborador
Colaborador
Mensagens: 70
Registrado em: Ter Jan 12, 2010 4:26 pm

Re: Criação de um Formulario-Controle de Correspondência

Mensagem por Melo »

Webmater

A planilha é a mesma, sim, Testei o postado sob o optionbutton, mais não consegui fazer com que os mesmos sejam gravados na Coluna ModPostagem (10), modifiquei a Const colModPostagem inserir no botão novo e testei, mais nada. Inseri o codigo no UserForm_initi tambem nada, agora fiquei perdido, podes ajudar,

AGora o codigo anterior (A BAIXO), inserir no botão novo e funcionou

ActiveWorkbook.Plan2 ("Fornecedores") ' Este comondo não fez efeito.
If optAr = True Then
ActiveCell.Offset(0, 9).Value = "AR"
ElseIf optSedex = True Then
ActiveCell.Offset(0, 9).Value = "SEDEX"
ElseIf optSedex10 = True Then
ActiveCell.Offset(0, 9).Value = "SEDEX10"
Else
ActiveCell.Offset(0, 9).Value = "OUTROS"
End If

Funcionou, mais salva na planilha onde abre o formulario cadastro e não na Fornecedores.


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Criação de um Formulario-Controle de Correspondência

Mensagem por webmaster »

Melo,

O "código anterior" nem chegamos a ver. Quanto a seu problema com a planilha, preciso ver as mudanças que fez. Pode enviar novamente?

Abraços


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Criação de um Formulario-Controle de Correspondência

Mensagem por webmaster »

Melo,

Vi a planilha. Somente o frmCadastro que aponta para a planilha Fornecedores é baseado no modelo cadastro no site. De fato, você precisa adicionar no método SalvarRegistro o que se refere ao campo optionButton, algo parecido como:

Código: Selecionar todos

With wsCadastro
'...
.Cells(indice, colTipoRegistro).Value = me.OptSedex.Value
'...
End With
Isso somado ao que já discutimos. Para ajudar, poderia enviar a planilha novamente com alguns dados cadastrados? Clientes pelo menos. Com uma massa de dados, é mais fácil testar.

Abraços


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