Ir ao conteúdo
  • Cadastre-se

VisualG função if / elseif vba


Posts recomendados

Boa tarde! 

 

estou precisando de ajuda em uma função onde desejo gravar a resposta "SIM" ou "NÃO" preenchida em uma planilha "A" em uma planilha "B" condicionada a seleção de uma célula em uma lista suspensa.

Meinha planilha A é o seguinte: tenho várias disciplinas de projetos, a pessoa escolhe qual disciplina e automaticamente o formulário é preenchido com a lista da disciplina em questão através da função desloc.+corresp. Até aí tudo está funcionando perfeitamente. 

Porém, desejo que os dados preenchidos na disciplina em questão fiquem gravados na planilha B (base de dados) - para que o usuário consiga ter acesso ao preenchimento de todas as disciplinas em uma mesma pasta de excel. 

 

Usando a função IF e elseif:

 

Sub Macro4()
'
' Macro4 Macro
'
    Sheets("ANÁLISE").Select
    Range("K10:L66").Select
    Selection.Copy
    Sheets("Base").Select
    
If (ag8 = E8) Then

    Sheets("Base").Select
    Range("F9").Select
    ActiveSheet.Paste
    
ElseIf (ag8 = h8) Then
    
    Sheets("Base").Select
    Range("I9").Select
    ActiveSheet.Paste
        
ElseIf (ag8 = k8) Then
        
    Sheets("Base").Select
    Range("L9").Select
    ActiveSheet.Paste
        
ElseIf (ag8 = n8) Then
        
    Sheets("Base").Select
    Range("O9").Select
    ActiveSheet.Paste
    
ElseIf (ag8 = q8) Then
        
    Sheets("Base").Select
    Range("R9").Select
    ActiveSheet.Paste
        
ElseIf (ag8 = t8) Then
        
    Sheets("Base").Select
    Range("U9").Select
    ActiveSheet.Paste
       
ElseIf (ag8 = w8) Then
       
    Sheets("Base").Select
    Range("X9").Select
    ActiveSheet.Paste
        
ElseIf (ag8 = z8) Then
        
    Sheets("Base").Select
    Range("AA9").Select
    ActiveSheet.Paste
    
ElseIf (ag8 = ac8) Then
        
    Sheets("Base").Select
    Range("AD9").Select
    ActiveSheet.Paste
    
    Else
MsgBox "ERRO"
    
    End If
'
  
        
End Sub
 

 

Porém, quando executo a macro ou ela não roda ou então ela cumpre a primeira função 

"If (ag8 = E8) Then

    Sheets("Base").Select
    Range("F9").Select
    ActiveSheet.Paste"

independente se ag8=e8. 

 

Alguém consegue me ajudar? 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...