Erro no macro

Anônima
2011-05-30T19:15:31+00:00

Oi ,

Estou com outra dúvida .Estou fazendo uma macro  (um botão para cadastrar produto e o outro para pesquisa de produto.Só que ambos estão  falando para depurar e não consigo achar o erro ( é o que está em amarelo)

Obrigado

Raque

Código VBA botão pesquisa

Private Sub cad_OK_Click()

Dim contador As StringPrivate Sub Pesquisar_Click()

Dim codigo As Variant

Dim linha As String

Dim contador As Integer

codigo = InputBox("digite o codigo desejado")

For contador = 1 To codigo

If contador = codigo Then

MsgBox (Worksheets("dados").Range("B" + linha).formulaRICI)

Exit For

Next contador

End Sub

Código VBA botão cadastrar

Dim fim As Boolean

contador = 2

fim = False

Do While fim = False

If Worksheets("dados").Range("A" + contador).formulaRICI = "" Then

Worksheets("dados").Range("A" + contador).formulaRICI = contador - 1

Worksheets("dados").Range("B" + contador).formulaRICI = textbox_cl_text

Worksheets("dados").Range("C" + contador).formulaRICI = textbox_prod_text

Worksheets("dados").Range("D" + contador).formulaRICI = textbox_val_text

Worksheets("dados").Range("E" + contador).formulaRICI = textbox_qtd_text

TextBox_cl.Text = ""

TextBox_prod.Text = ""

TextBox_val.Text = ""

TextBox_qtd.Text = ""

textbox_des.SetFocus

fim = True

Else

Microsoft 365 e Office | Excel | Para uso doméstico | Windows

Pergunta bloqueada. Essa pergunta foi migrada da Comunidade de Suporte da Microsoft. É possível votar se é útil, mas não é possível adicionar comentários ou respostas ou seguir a pergunta.

0 comentários Sem comentários
Resposta aceita pelo autor da pergunta
Anônima
2011-05-31T19:29:13+00:00

Raque,

não havia nada em amarelo, mas vamos lá:

-> Dim contador As StringPrivate Sub Pesquisar_Click()

Esta declaração de variável está errada. Você não pode ter um início de Subprocedure dentro de uma declaração de variável. Adicionalmente você está declarando contador como String e logo adiante declara ele como Integer. Desta forma sugiro que esta linha se ja inteira excluída.

-> MsgBox (Worksheets("dados").Range("B" + linha).formulaRICI)

Não há como esta linha funcionar, pois a variável linha ainda não possui nenhum conteúdo e já está sendo chamada aqui.

-> Do While fim = False

Toda vez que se utiliza o laço Do While deve haver o comando Loop ao final dele, senão o Excel nunca saberá qual parte do código deve ser submetida ao laço.

Esta resposta foi útil?

0 comentários Sem comentários

0 respostas adicionais

Classificar por: Mais útil