none
VBA não roda macro Excel RRS feed

  • Pergunta

  • Olá, boa tarde!

    Não consegui acertar a sub abaixo no Excel.

    Private Sub Worksheet_Change(ByVal alvo As Range) If alvo.Cells.Count > 1 Or IsEmpty(alvo) Then Exit Sub If alvo.Column = 2 And alvo.Row >= 16 And alvo.Row <= 25 And alvo.Value = "ad valorem" Then Call cel ElseIf alvo.Column = 2 And alvo.Row >= 16 And alvo.Row <= 25 And alvo.Value = "estadias" Then

    call cel ElseIf alvo.Column = 2 And alvo.Row >= 16 And alvo.Row <= 25 And alvo.Value = "motoboy" Then Call cel

    Else: Call insere
    End If
    End Sub


    A macro só roda perfeitamente quando as clélulas são alteradas para o valor "ad valorem".

    Quando altero os valores para os outros valores, ela lê como Else: e ao invés de chamar a sub cel() ela chama a sub insere().

    Alguém teria uma opção de montagem desse código?

    Obrigado!

    quarta-feira, 12 de março de 2014 19:45

Todas as Respostas

  • Rafael,

    Insira um Msgbox para validar o conteúdo do "alvo.Value" em comparação com cada string.

    Talvez seja necessário utilizar os métodos TRIM e UPPER para manter os valores idênticos em cada célula de cada linha/coluna.

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    quinta-feira, 13 de março de 2014 14:35
  • Durval, obrigado pela ajuda!

    No entanto o problema persiste. :(

    Vou tentando aqui e se conseguir algum avanço eu posto para finalizar o tópico.

    Até mais.

    quarta-feira, 19 de março de 2014 11:47