Boa tarde, galera!
Estou fazendo um cadastro com listview, e tá dando um erro no combobox ao tentar atribuir a propriedade value.
Basicamente, tenho a rotina abaixo, que consiste em preencher os controles do formulário de acordo com o registro que é selecionado no listview.
Private Sub lstEntidades_Click()
Dim valor_lista_reg As Integer
Dim selecao As Integer
Dim linha As Integer
Call limpaCombos
Me.cmdAlterar.Enabled = True
linha = 2
'registro = txtID
selecao = lstEntidades.SelectedItem.Text
'txtID = selecao
valor_lista_reg = selecao
'opt_cliente.SetFocus
'txt_razao.SetFocus
Me.lblMensagem = "Atenção! Você está acessando um registro já cadastrado."
Me.lblMensagem.ForeColor = &H80&
'
Sheets("tblEntidades").Select
'
Do Until Sheets("tblEntidades").Cells(linha, 1) = "" 'vai executar o laço até encontrar uma célula vazia
'condicção para localizar o registro
If Sheets("tblEntidades").Cells(linha, 1) = valor_lista_reg Then 'se encontrar o valor registro na célula pesquisada
Sheets("tblEntidades").Cells(linha, 1).Select 'será selecionada a célula
Me.txtID = Sheets("tblEntidades").Cells(linha, 1)
Me.cboGen.Value = Sheets("tblEntidades").Cells(linha, 2)
Me.optPF = Sheets("tblEntidades").Cells(linha, 3)
Me.optPJ = Sheets("tblEntidades").Cells(linha, 4)
Me.txtNome = Sheets("tblEntidades").Cells(linha, 5)
Me.txtCPFCNPJ = Sheets("tblEntidades").Cells(linha, 6)
Me.txtEndereco = Sheets("tblEntidades").Cells(linha, 7)
Me.txtEndNumero = Sheets("tblEntidades").Cells(linha, 8)
Me.txtBairro = Sheets("tblEntidades").Cells(linha, 9)
Me.cboUF = Sheets("tblEntidades").Cells(linha, 10)
Me.cboCidade = Sheets("tblEntidades").Cells(linha, 11)
Me.txtCEP = Sheets("tblEntidades").Cells(linha, 12)
Me.cboGenSig.Value = Sheets("tblEntidades").Cells(linha, 13)
Me.txtSignatario = Sheets("tblEntidades").Cells(linha, 14)
Me.txtCargoSig = Sheets("tblEntidades").Cells(linha, 15)
Me.txtCPFSig = Sheets("tblEntidades").Cells(linha, 16)
Me.txtContato = Sheets("tblEntidades").Cells(linha, 17)
Me.txtTelefone = Sheets("tblEntidades").Cells(linha, 18)
Me.txtemail = Sheets("tblEntidades").Cells(linha, 19)
Exit Sub
End If
linha = linha + 1
Loop
End Sub
Ao carregar o form pela primeira vez, funciona OK. Dá pra percorrer todos os registros no listview sem problema. Só que quando executo as rotinas "novo, alterar ou salvar" e volto ao listview e tento selecionar os registros 9,10 ou 11, onde a célula na planilha correspondente ao "cboUF" está vazia, me é retornado o seguinte erro:
"erro em tempo de execução '381' não foi possível definir a propriedade Value.Valor de propriedade inválido."
Já quebrei a cabeça e não consigo achar.
Agradeço a colaboração dos colegas!
Postado : 21/02/2014 2:21 pm