Halk, vamos por parte :
1º ) Uma vez que seu ListBox tem a Propriedade MultiSelect, não é possível utilizar o Evento Click e sim o Evento Change para a situação que pretende, por outro lado este evento ira se sobrepor ao Evento DblClick tornando o mesmo sem funcionalidade, mesmo que não estivesse com a propriedade MultiSelect o Evento Click tambem ira se sobrepor ao Evento DblClick tornando o mesmo sem funcionalidade.
2º ) Você está querendo jogar a soma dos itens selecionados para outro ListBox, o ideal é jogar para um Label, TextBox ou ComboBox.
Para sua solicitação, a minha sugestão é utilizar um Botão para somar os itens apos selecionados, ou se utilizar o Evento Change e tornar sem efeito o DblClick, de qualquer forma a rotina para somar são as mesmas, então fica a seu criterio qual utilizar.
Primeiro adicione um controle Label en seu formulário e ajuste o nome nas rotinas de acordo com o nome que der ao mesmo :
Somando por um CommandButton : Lembre-se de ajustar o nome do Label(nesta rotina está como Label1)
Private Sub CommandButton1_Click()
Dim lItem As Double
Dim valor As Double
If Label1.Caption = "" Then Label1.Caption = 0
Label1.Caption = 0
For lItem = 0 To lstLista.ListCount - 1
If lstLista.Selected(lItem) = True Then
valor = lstLista.List(lItem, 11) * 1
Label1.Caption = Format(CCur(Label1.Caption) + (valor), "###,###,##0.00")
End If
Next
End Sub
Somando popelo Evento Change: Lembre-se de ajustar o nome do Label(nesta rotina está como Label1)
Private Sub lstLista_Change()
Dim lItem As Double
Dim valor As Double
If Label3.Caption = "" Then Label3.Caption = 0
Label3.Caption = 0
For lItem = 0 To lstLista.ListCount - 1
If lstLista.Selected(lItem) = True Then
valor = lstLista.List(lItem, 11) * 1
Label3.Caption = Format(CCur(Label3.Caption) + (valor), "###,###,##0.00")
End If
Next
End Sub
Faça os testes e veja se é isto.
[]s
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 25/04/2014 12:14 pm