sexta-feira, 21 de novembro de 2014

Codigo Formulário Cadastro de Produto





Private Sub btnCadastrar_Click()
'declarar variaveis
Dim linha As Integer
Dim ws As Worksheet
Dim codigoProduto As Integer
Dim descricao   As String
Dim quantidadeEstoque As Integer
Dim valorUnitario As Currency
Dim valorTotal As Currency
'Identificar qual Planilha ta a Tabela
Set ws = Worksheets(1)
'Posicionar celula abaixo da ultima prenchida
linha = ws.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row

'verificar o que o usuário digitou certo
If Not IsNumeric(txtCodigoProduto.Text) Then
    MsgBox "Codigo do Produto deve ser numerico"
    txtCodigoProduto.Text = ""
    txtCodigoProduto.SetFocus
    Exit Sub
End If

If txtDescricao.Text = "" Then
    MsgBox "Voce deve Digitar a Descrição do Produto"
    txtDescricao.SetFocus
    Exit Sub
End If

If Not IsNumeric(txtQuantidadeEstoque.Text) Then
    MsgBox "Valor Quantidade deve ser Numerico"
    txtQuantidadeEstoque.Text = ""
    txtQuantidadeEstoque.SetFocus
    Exit Sub
End If

If Not IsNumeric(txtValorUnitario.Text) Then
    MsgBox "Valor Unitário deve ser Numerico"
    txtValorUnitario.Text = ""
    txtValorUnitario.SetFocus
    Exit Sub
End If
   
    ' passar dados do formulário para planilha
    'alimentar as variaveis
   
    codigoProduto = txtCodigoProduto.Text
    descricao = UCase(txtDescricao.Text)
    quantidadeEstoque = txtQuantidadeEstoque.Text
    valorUnitario = txtValorUnitario.Text
   
    'jogar os dados das variáveis em cada celula
    ws.Cells(linha, 1).Value = codigoProduto
    ws.Cells(linha, 2).Value = descricao
    ws.Cells(linha, 3).Value = quantidadeEstoque
    ws.Cells(linha, 4).Value = valorUnitario
    valorTotal = valorUnitario * quantidadeEstoque
    ws.Cells(linha, 5).Value = valorTotal
   
    'Avisar Usuario que deu certo
    MsgBox "Cadastro Efetuado com Sucesso"
   
    'Limpa Formulário
    txtCodigoProduto.Text = ""
    txtDescricao.Text = ""
    txtValorUnitario.Text = ""
    txtQuantidadeEstoque.Text = ""
   
    'Colocar o foco no primeiro controle
    txtCodigoProduto.SetFocus
   
End Sub

Private Sub txtQuantidadeEstoque_Change()

End Sub