0
I have a form with two text boxes, three command buttons, a listbox and some Abels.
The purpose of the form is to list data that is entered in the database (which is the excel spreadsheet itself).
How the code works:
The texts are inserted into the 2 texbox and the listbox is fed through rowsource in code.
It works almost all right; register the text, the listbox is fed by BD through rowsource but in the last stage it is change the entered data button not active.
Follows the code:
'CADASTRAR TEXTO NO LISTBOX
Private Sub Boão_Cadastrar_Click()
If VerificaCampo(Me.CAIXA_DE_TEXTO01.Text) = False Then
MsgBox "Informe o texto desejado", vbExclamation, "ERRO"
Exit Sub
End If
If VerificaCampo(Me.CAIXA_DE_TEXTO02.Text) = False Then
MsgBox "Informe o texto desejado", vbExclamation, "ERRO"
Exit Sub
End If
Sheets("VALIDAÇÃO").Activate 'ATIVA A PLANILHA CORRESPONDENTE
Range("E2").Select 'SELECIONA A CÉLULA ESPECIFICADA ENTRE OS PARENTESES
Do 'FAÇA
If ActiveCell.Value <> Empty Then 'SE O VALOR DA CELULA SELECIONADA FOR DIFERENTE DE VAZIO ENTÃO
ActiveCell.Offset(1, 0).Select 'A CELULA ATIVA VAI PARA O CAMINHO INDICADO NOS PARENTESES
End If 'FIM DO SE
Loop Until ActiveCell.Value = Empty 'REPETIR ATÉ QUE O VALOR DA CÉLULA ATIVA SEJA IGUAL A VAZIO
ActiveCell.Value = Me.CAIXA_DE_TEXTO01 'O VALOR DA CÉLULA ATIVA VAI RECEBER O QUE FOR DIGITADO NA CAIXA DE TEXTO CORRESPONDENTE
ActiveCell.Offset(0, 1).Value = Me.CAIXA_DE_TEXTO02.Text 'O MESMO DE CIMA
MsgBox ("Atualização efetuada com SUCESSO!!") 'MESSAGEM DO SISTEMA
Me.CAIXA_DE_TEXTO01.Text = Empty 'LIMPA A CAIXA DE TEXTO
Me.CAIXA_DE_TEXTO02.Text = Empty 'LIMPA A CAIXA DE TEXTO
'ATUALIZA OS DADOS PARA QUE ELES APARECAM NO FORMULÁRIO SEM PRECISAR FECHÁ-LO
Unload Me
Userform.Show
End Sub
'CAMPO DE VERIFICAÇÃO
Private Function VerificaCampo(Texto As String) As Boolean
If Texto = "" Then
VerificaCampo = False
Else
VerificaCampo = True
End If
End Function
'SELECIONA OS DADOS NA LISTBOX PARA PODER SER FEITA A ALTERAÇÃO EM DADOS
Private Sub ListBox1_Change()
Me.CAIXA_DE_TEXTO01.Text = ListBox1.List(ListBox1.ListIndex, 0) '1ª COLUNA
Me.CAIXA_DE_TEXTO02.Text = ListBox1.List(ListBox1.ListIndex, 1) '2ª COLUNA
End Sub
'BOTÃO QUE ALTERA LEGISLAÇÕES E/OU ARTIGOS
Private Sub Botão_Alterar_Legislações_Artigos_Click()
If VerificaCampo(Me.CAIXA_DE_TEXTO01.Text) = False Then
MsgBox "Informe a legislação desejada", vbExclamation, "ERRO"
Exit Sub
End If
If VerificaCampo(Me.CAIXA_DE_TEXTO02) = False Then
MsgBox "Informe o texto desejado", vbExclamation, "ERRO"
Exit Sub
End If
Dim X As String
Dim Y As String
X = Me.CAIXA_DE_TEXTO01.Text
ARTIGO = Me.CAIXA_DE_TEXTO02.Text
Dim LINHA As Integer
LINHA = ListBox1.ListIndex
ListBox1.List(LINHA, 0) = X
ListBox1.List(LINHA, 1) = Y
Me.CAIXA_DE_TEXTO01 = ""
Me.CAIXA_DE_TEXTO02 = ""
Me.CAIXA_DE_TEXTO01.SetFocus
End Sub
'LIMPAR TUDO/APAGAR DA PLANILHA
Private Sub Botão_Limpar_Tudo_Click()
[E2:F100000].ClearContents
Unload Me
Userform.Show
End Sub
'POPULAR LISTBOX:
Private Sub UserForm_Initialize()
Ulinha = Range("e1000000").End(xlUp).Row
ListBox1.RowSource = "VALIDAÇÃO!E2:F" & Ulinha
End Sub
Please do not write the title of the question in high box. Take the opportunity and do a [tour] to learn more about the community.
– gato
can yes; sorry; I will fix.
– Jhonatas Dantas
Edited. Thank you; :)
– Jhonatas Dantas