Phillip_Junior 14/7/2017, 04:41
Olá amigo !
Me desculpe a demora em retornar
Estava observando seu código aqui agora referente a excluir a linha.
Coloque esse código no lugar para ver se resolve seu problema de estar excluindo sempre a primeira.
Private Sub btn_remove_Click()
Me.txt_codbarras.Value = "a"
Dim removerlinha As Integer
If Me.list_desc.ListIndex > -1 Then
removerlinha = Me.list_desc.ItemsSelected(Index)
Me.list_desc.RemoveItem (removerlinha)
Else
MsgBox "Não foi selecionado um ítem", vbCritical, "Erro"
End If
If Me.list_valor_total.ListIndex > -1 Then
removerlinha = Me.list_valor_total.ItemsSelected(Index)
Me.list_valor_total.RemoveItem (removerlinha)
Else
MsgBox "Não foi selecionado um ítem", vbCritical, "Erro"
End If
If Me.list_venda.ListIndex > -1 Then
removerlinha = Me.list_venda.ItemsSelected(Index)
Me.list_venda.RemoveItem (removerlinha)
Else
MsgBox "Não foi selecionado um ítem", vbCritical, "Erro"
End If
If Me.list_quant.ListIndex > -1 Then
removerlinha = Me.list_quant.ItemsSelected(Index)
Me.list_quant.RemoveItem (removerlinha)
Else
MsgBox "Não foi selecionado um ítem", vbCritical, "Erro"
End If
If Me.list_tipo.ListIndex > -1 Then
removerlinha = Me.list_tipo.ItemsSelected(Index)
Me.list_tipo.RemoveItem (removerlinha)
Else
MsgBox "Não foi selecionado um ítem", vbCritical, "Erro"
End If
If Me.list_marca.ListIndex > -1 Then
removerlinha = Me.list_marca.ItemsSelected(Index)
Me.list_marca.RemoveItem (removerlinha)
Else
MsgBox "Não foi selecionado um ítem", vbCritical, "Erro"
End If
If Me.list_modelo.ListIndex > -1 Then
removerlinha = Me.list_modelo.ItemsSelected(Index)
Me.list_modelo.RemoveItem (removerlinha)
Else
MsgBox "Não foi selecionado um ítem", vbCritical, "Erro"
End If
CodBarrasProd = Me.txt_codbarras.Value
sql = "SELECT * FROM CAD_PRODUTOS WHERE CODIGO_BARRAS = '" & CodBarrasProd & " '"
Set rs = CurrentDb.OpenRecordset(sql)
If rs.BOF And rs.EOF Then
MsgBox "Verifique o Código de Barras, Produto Inexistente", vbOKOnly, "Código Inexistente"
Exit Sub
Me.btn_escolher.Enabled = True
Me.btn_escolher.Default = True
Else
ValorProd = rs!VENDA
DescricaoProd = rs!DESCRIÇÃO_PRODUTO
MarcaProd = rs!MARCA
ModeloProd = rs!MODELO
TipoItemProdutos = rs!TIPO_DE_ITEM
End If
Me.list_desc.AddItem (DescricaoProd)
Me.list_marca.AddItem (MarcaProd)
Me.list_modelo.AddItem (ModeloProd)
Me.list_tipo.AddItem (TipoItemProdutos)
Me.list_venda.AddItem (Format(ValorProd, "R$ #,###.00"))
Me.list_quant.AddItem (Me.txt_quantidade.Value)
ValorTot = Me.txt_quantidade.Value * ValorProd
Me.list_valor_total.AddItem (Format(ValorTot, "R$ #,###.00"))
contadorLista = list_desc.ListCount
With prodVendido(contadorLista)
.idprod = rs!ID_PRODUTO
.desc = DescricaoProd
.MARCA = MarcaProd
.MODELO = ModeloProd
.tipo_item = TipoItemProdutos
.quant = Me.txt_quantidade.Value
.valor_venda = ValorProd
.valor_total = ValorTot
End With
TotalVenda = 0
For ContVendas = 1 To contadorLista
TotalVenda = TotalVenda + prodVendido(ContVendas).valor_total
Next ContVendas
ContadorProdutosVen = 0
For ContProd = 1 To contadorLista
ContadorProdutosVen = ContadorProdutosVen + prodVendido(ContProd).quant
Next ContProd
Me.lb_quantidade.Caption = ContadorProdutosVen
Me.lb_total.Caption = Format(TotalVenda, "R$#,###.00")
Me.txt_quantidade.Value = 1
Me.txt_codbarras.Value = ""
Me.txt_codbarras.SetFocus
rs.Close
Set rs = Nothing
Exit Sub
'erro:
'MsgBox erro.Description
End Sub
Obs: Verifique se resolveu e retorne sobre a dúvida desse tópico ok?
Amigo !
Fica aqui minha dica pra vc que tem um bom conhecimento mesmo que pegando ali e aqui. Tente adaptar seu código para capturar os dados na busca do produto e inserir os dados numa única list. E que nessa list, vc tenha um campo chamado Item. Assim, quando vc quiser excluir um item da sua lista, basta vc digitar numa campo o item desejado e clicar num botão se assim desejar ser o evento e excluir esse item de dentro dessa lista.
Tens capacidade. Estude bem que vai conseguir.
Assim dessa forma fica muito manual tudo e até dificulta se por erro for clicado na linha acima ou abaixo da que realmente deseja excluir.
Att
Phillip
Abraços e Sucesso