Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido ) Utilizando VBA para Incrementar Valor em Campo


Rafael Rauber

Pergunta

Boa Tarde,

Estou utilizando algumas funções em VBA em um Sistema que estou desenvolvendo em ACCESS 2003,

Tenho uma tabela Produto,

Um campo cod_estoque

Um campo cod_produto

e um campo desc_produto,

Depois que o usuário escolhe o código do estoque no campo cod_estoque, coloquei a seguinte instrução para que o Sistema fosse até o campo cod_produto, procurasse na tebela o maior cod_estoque existente, e incrementasse +1, e depois mover o cursor até o campo desc_estoque.

Private Sub cod_estoque_AfterUpdate()

DoCmd.GoToControl "cod_produto"

End Sub

Static j As Integer

j = 0

For Each cod_produto In Produto

If cod_produto > j Then

j = cod_produto

End If

Next cod_produto

cod_produto = cod_produto + 1

End Sub

Estou usando a partir de um exemplo do Help do Vba, mas não funciona. A mensagem de erro é a seguinte.

A variável é obrigatório, não é possível atribuir à esta expressão,

Alguém tem alguma sugestão?

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Você está atribuindo somando um objeto nulo, logo ele não existe, experimente tratar os valores dos objetos com funções como NZ() ou outra, ou se entendi errado e cod_produto não for objeto então declare como variável no inicio do seu código.

Link para o comentário
Compartilhar em outros sites

  • 0

Boa Tarde,

cod_produto é o nome do campo na Tabela Produto,

Eu pretendia que ele fosse até o registro mais alto deste campo, somasse 1 e colocasse no formulário após o a escolha do cod_estoque pelo usuário.

Consegui resolver o problema através do DMAX, após inúmeras tentativas, coloquei TRUE no final e funcionou!

Private Sub cod_estoque_AfterUpdate()

On Error GoTo Err_cod_estoque_AfterUpdate

cod_produto = (DMax("[cod_produto]", "Produto", "TRUE")) + 1

DoCmd.GoToControl "desc_produto"

Exit_cod_estoque_AfterUpdate:

Exit Sub

Err_cod_estoque_AfterUpdate:

Resume Exit_cod_estoque_AfterUpdate

End Sub

De qualquer maneira agradeço a atenção, ainda estou um pouco confuso com a maneira de lidar com objetos e variáveis no VBA, pois só usava C no meu curso.

valeu;)

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...