Notifications
Clear all

Estrutura For IF NEXT mais de uma Condição

4 Posts
2 Usuários
0 Reactions
1,298 Visualizações
 guma
(@guma)
Posts: 135
Estimable Member
Topic starter
 

Boa Tarde

Estou começando a aprender vba e não consigo compreender o que há de errado com a seguinte estrutura.
Sempre que rodo a macro o vba acusa NEXT SEM FOR.

For r = j To 4 Step -1
If Not Range("H" & r).Value = 0 Then 'Range("H" & r).EntireRow.Delete
  ElseIf Not Range("E" & r).Value = "" Then
    ElseIf Not Range("F" & r).Value = "" Then
           Else
           Range("H" & r).EntireRow.Delete
           Range("H" & r).Value = ""
Next r

Se Alguém puder me Explicar.

 
Postado : 06/05/2013 1:59 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Você precisa fechar o IF

If <condição01> then
elseif <condição02> then
elseif <condição03> then
END IF

neste caso, o interpretador do VBE está tentando rodar um Next, mas não tem nenhum FOR dentro do ultimo ELSEIF.... daí ele reclama q tem Next sem For...

Feche com um End IF antes do Next, que vai funcionar...

 
Postado : 06/05/2013 2:04 pm
 guma
(@guma)
Posts: 135
Estimable Member
Topic starter
 

Fernando Valeu mesmo. Deu Certo e acho que entendi.

Obrigado.

 
Postado : 06/05/2013 6:05 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member