Ir ao conteúdo
  • Cadastre-se

Excel Carregar informações salvas no opption button


josequali
Ir à solução Resolvido por LaerteB,

Posts recomendados

@Midori @Edson Luiz Branco @LaerteB Boa tarde! Atualmente tenho um projeto que permiti salvar as informações marcadas no opptionbutton. Entretanto, gostaria de também trazer a informação do opption button que foram salvas ao ser consultado na listbox1. Atualmente consigo trazer as informações dos textbox e combobox, mas não consigo carregar as do opption. As informações estão salvam na coluna 10 e 11 do excel. Uso esse código para carregar as informações:

 

Private Sub Txtid_Change()

Dim codigo As Integer

codigo = Txtid.Value 'ESSE PRIMEIRO CODIGO É NECESSÁRIO PARA PODER APARECER OS OUTROS DADOS

On Error Resume Next
Me.Txtid.Value = Range("b1").Value 

Me.Txtprocedencia = Application.WorksheetFunction.VLookup(codigo, Sheets("bancodedadosocorrencia").Range("A:P"), 2, 0)
Me.Txtgerador = Application.WorksheetFunction.VLookup(codigo, Sheets("bancodedadosocorrencia").Range("A:P"), 4, 0)
Me.Txtdetector = Application.WorksheetFunction.VLookup(codigo, Sheets("bancodedadosocorrencia").Range("A:P"), 5, 0)
Me.Txtmotivo = Application.WorksheetFunction.VLookup(codigo, Sheets("bancodedadosocorrencia").Range("A:P"), 6, 0)
Me.txtnotificante = Application.WorksheetFunction.VLookup(codigo, Sheets("bancodedadosocorrencia").Range("A:P"), 7, 0)
Me.Txtreincidencia = Application.WorksheetFunction.VLookup(codigo, Sheets("bancodedadosocorrencia").Range("A:P"), 8, 0)
'Classificação e grau linhas 10 e 11.
Me.txtEmail = Application.WorksheetFunction.VLookup(codigo, Sheets("bancodedadosocorrencia").Range("A:P"), 12, 0)
Me.txtData = Application.WorksheetFunction.VLookup(codigo, Sheets("bancodedadosocorrencia").Range("A:P"), 14, 0)
Me.Txttime = Application.WorksheetFunction.VLookup(codigo, Sheets("bancodedadosocorrencia").Range("A:P"), 15, 0)
Me.Txtresponsavel = Application.WorksheetFunction.VLookup(codigo, Sheets("bancodedadosocorrencia").Range("A:P"), 16, 0)

End Sub

 

 

Desde já agradeço a disponibilidade :D 

imagem 1.png

imagem 2.png

carregar informacoes no opption button.zip

Link para o comentário
Compartilhar em outros sites

Boa tarde, josequali

 

Não sei se entendi o que quer, mas estou deduzindo que tu queres que no

ListBox1 apareça também as colunas 10 e 11; desta forma dentro do procedimento:

Sub filtrar()

Copie esta linha e cole no lugar da anterior, como se segue abaixo:

Me.ListBox1.ColumnWidths = "30; 130; 50; 2; 2; 2; 2; 2; 2; 95; 95; 2; 2; 2; 2"

Com isso vai aparecer no ListBox1 estas duas colunas (10 e 11) 😀

 

Verifique se era isso que queria ..

 

Qualquer dúvida poste novamente 😁

 

Aguardando sua resposta e seu Feed Back ... se foi útil, não esqueça de clicar na "mãozinha"

 

LaerteB🙂

Link para o comentário
Compartilhar em outros sites

@LaerteB

Boa tarde! Acho que não expliquei bem. Vou anexar três imagens abaixo esclarecendo o meu caso. Acredito que irá facilitar. 

O que eu quero estará explicado nas imagens.

 

Ver imagens e após continuar com o texto abaixo.


Por exemplo: Durante um novo cadastro (no exemplo da imagem registro de ID 19), salvo as informações das textbox e dos opptionbutton (Classificação do incidente (administrativa) e grau do ocorrido (leve)).
No entanto, em outro dia eu preciso realizar a consulta do cadastro que foi realizado e das informações salvas. Para tanto, preciso que ele traga além das informações das textbox as dos opptionbutton que foram marcados.

Logo, o objetivo não é carregar listbox1, uma vez que,  meu código já faz isso. O que eu preciso é que o opption button que foram marcados no cadastro apareçam também marcados quando realizar a pesquisa.
 

Não sei se ficou claro. Desde já agradeço a disponibilidade em ajudar. Obrigado!  :D 

 

imagem1.png

imagem 2.png

imagem 3.png

Link para o comentário
Compartilhar em outros sites

Para carregar o option você usar For Each no frame e comparar o caption com o valor da célula, p.ex

 

Dim OptIncidente As Object
...
For Each OptIncidente In Frame1.Controls
    If OptIncidente.Caption = [A1] Then
        OptIncidente.Value = True
    End If
Next OptIncidente

 

Aí faço uma comparação simples com A1, mas você pode adaptar para o seu caso...

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

Boa tarde, josequali

 

Agora com a explicação mais acima entendi o que queria 😉...

 

Vou dar uma ajudinha no seu caso, pois o amigo @Midori já colocou com maestria o

código que fará o que quer.. mas estou colocando já com as alterações para o seu

projeto, conforme abaixo (é só copiar e colar no "Private Sub Txtid_Change()"):

Dim OptIncidente, OptIncidente2 As Object

For Each OptIncidente In Frame4.Controls
  
    If OptIncidente.Caption = ListBox1.List(ListBox1.ListIndex, 9) Then
        OptIncidente.Value = True
    End If
Next OptIncidente

For Each OptIncidente2 In Frame5.Controls
  
    If OptIncidente2.Caption = ListBox1.List(ListBox1.ListIndex, 10) Then
        OptIncidente2.Value = True
    End If
Next OptIncidente2

Por gentileza corrigir os nomes de cada optionbutton com o correto que se encontra na planilha,

para não dar o erro de não ser encontrado... exemplo no optionbutton8 está como "Moderado" e na Planilha

como "Médio"...

 

Espero que seja isto que queria ..

 

Aguardando sua resposta e seu Feed Back ... se foi útil, não esqueça de clicar na "mãozinha"😁

 

LaerteB😀

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

@LaerteB @MidoriBom dia! Atualmente já tenho códigos que permitem cadastrar as informações do oppttion Button e outro para carregar as informações ao selecionar a linha da Listbox, no entanto, saberia algum código que permita que eu altere a informação do opptbuton? Já consigo alterar para as txtbox usando o comando abaixo. Segue em anexo o modelo resumido do projeto.

Private sub btnalterar_Click ()

 

Dim fila as object

dim linha as integer

 ser fila = sheets (“bancosedados”). Range (“A:A”). Find(valor_buscado, lookat:=x1whole)

linha= fila.row

 

 

 

Range (“B” & linha). Value = Me.txtprocedencia.value

.

.

Resto das linhas do código 

.

.

end if

end sub

 

 

 

alterar informações dos opption button.zip

Link para o comentário
Compartilhar em outros sites

  • Solução

Boa tarde, josequali

 

Então, se eu entendi o que solicitou, seria acrescentar o código mais abaixo no

objeto e procedimento:

Private Sub btnalterar_Click()

Acrescentando esse código:

'**********************
Dim OptIncidente, OptIncidente2 As Object

For Each OptIncidente In Frame4.Controls
  
    If OptIncidente.Value = True Then
        Range("J" & linha).Value = OptIncidente.Caption
    End If
Next OptIncidente

For Each OptIncidente2 In Frame5.Controls
  
    If OptIncidente2.Value = True Then
        Range("K" & linha).Value = OptIncidente2.Caption
    End If
Next OptIncidente2

Call filtrar
'**********************

Aproveitei os códigos anteriores e alterei para os optionbuttons serem incluídos no

botão alterar como queria; além disso inseri o "filtrar" para atualizar o ListBox1😀

 

OBS: quando colocar os códigos na sua mensagem, insira-os dentro "<>" que se

encontra na barra de ferramentas acima ;)

 

Verifique se era o que solicitou ..

 

Aguardando sua resposta e seu Feed Back ... se foi útil, não esqueça de clicar na "mãozinha"😃

 

LaerteB🙂

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Como se tornar um desenvolvedor full-stack

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!