1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Retirar quantidade - VB 6

Discussão em 'Programação' iniciada por alr, 23 de Abril de 2008. (Respostas: 5; Visualizações: 679)

  1. alr

    alr

    Bom dia.

    Agradeço ajuda num form com checkbox's a adicionar valores a uma label, como posso devolver a quantidade a retirar pretendida? Isto em VB 6.

    Cumprimentos.
     
  2. Pauleta_Tubarao

    Pauleta_Tubarao Power Member

    não compreendi lá muito bem o que queres.
    Queres por labels com valores e ao clicares na check box a frente delas te some os valores e te de o resultado?
     
  3. alr

    alr

    é exactamente isso, só n consigo é devolver o valor pretendido... parece-me q estou a retirar ao z os 300 sempre. Se carregar 2 quantidades e depois retirar outras 2, aparece uma quantidade de 300. Cumps
    Ex:
    Código:
    Private Sub Check1_Click()
    Dim x, y, z, w As Integer
    If Check1.Value = 1 Then
    x = Val(InputBox("Quantidade:"))
    z = Val(Label1) + (300 * x)
    Label1 = z
    ElseIf Check1.Value = 0 Then
    y = Val(InputBox("Quantidade a retirar:"))
    w = Val(Label1) + (z - 300)
    Label1 = w
    End If
    End Sub
     
    Última edição pelo moderador: 24 de Abril de 2008
  4. Pauleta_Tubarao

    Pauleta_Tubarao Power Member

    isso é porque ele só te esta a fazer a condição
    pões uma variável global o p
    p=0
    Código:
    Private Sub Check1_Click()
    Dim x, y, z, w As Integer
    If Check1.Value = 1 Then
    If p = 0 Then
    x = Val(InputBox("Quantidade:"))
    z = Val(Label1) + (300 * x)
    Label1 = z
    p=p+1
    Else
    y = Val(InputBox("Quantidade a retirar:"))
    w = Val(Label1) + (z - 300)
    Label1 = w
    p=p-1
    End If
    end if
    End Sub
    
     
    Última edição: 24 de Abril de 2008
  5. kzip

    kzip Power Member

    Mas que grande confusão. Quando marcas a checkbox somas o valor inserido 300 vezes. Quando desmarcas a checkbox somas o valor de z e subtrais 300. De certeza que não é isso que pretendes....

    Será isto:
    Código:
    Private Sub Check1_Click()
    
    Dim x As Integer
    
    If Check1.Value = 1 Then
        x = Val(InputBox("Quantidade:"))
        Label1 = Val(Label1) + x
    Else
        x = Val(InputBox("Quantidade a retirar:"))
        Label1 = Val(Label1) - x
    End If
    
    End Sub
     
  6. alr

    alr

    Repara q o valor de 300 é o valor da checkbox então 300* x para dar a quantidade na label.
    n é possivel fazer a divisão pq é impossivel dividir por 0 a quantidade, daí o prob.
    Cumps,
     

Partilhar esta Página