none
VBA Correção no código,não contar células vazias RRS feed

  • Pergunta

  • Ola a todos estou com dificuldade de achar um código para fazer a planilha funcional,o userform que fiz tem 20 caixas de listagem para o controle de itens porem não é toda vez que a ficha vai ser preenchida com os 20 itens e nesses espaços quando colados na planilha fazem ficar com espaços em branco. Já tentei contar linhas em branco mais o problema persiste ele conta essas linhas que não ha nd escrito.

    ActiveSheet.Range("A1048576").Select
    Selection.End(xlUp).Select
    ActiveCell.Offset(1, 0).Select
    
    ActiveCell = LISTA1
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA2
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA3
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA4
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA5
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA6
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA7
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA8
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA9
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA10
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA11
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA12
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA13
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA14
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA15
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA16
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA17
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA18
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA19
    ActiveCell.Offset(1, 0).Select
    ActiveCell = LISTA20
    Columns("a:a").Select
    Selection.SpecialCells(xlCellTypeBlanks).Select
    Selection.EntireRow.Delete

    Eu quero que toda vez que clicar em salvar ele colocar as informações no canto da tabela ,uma abaixo da outra sem deixar campos vazios ,funciona na primeira vez porem na segunda ele conta de forma errada os campos em branco considerando que uns em branco são validos

    • Editado GGROCHAFER sexta-feira, 27 de outubro de 2017 16:19
    quarta-feira, 25 de outubro de 2017 17:03

Respostas

  • If LISTA1 <> "" Then
    ActiveCell = LISTA1
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA2 <> "" Then
    ActiveCell = LISTA2
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA3 <> "" Then
    ActiveCell = LISTA3
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA4 <> "" Then
    ActiveCell = LISTA4
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA1 <> "" Then
    ActiveCell = LISTA1
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA5 <> "" Then
    ActiveCell = LISTA5
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA1 <> "" Then
    ActiveCell = LISTA1
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA6 <> "" Then
    ActiveCell = LISTA6
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA1 <> "" Then
    ActiveCell = LISTA1
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA7 <> "" Then
    ActiveCell = LISTA7
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA1 <> "" Then
    ActiveCell = LISTA1
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA8 <> "" Then
    ActiveCell = LISTA8
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA9 <> "" Then
    ActiveCell = LISTA9
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA10 <> "" Then
    ActiveCell = LISTA10
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA1 <> "" Then
    ActiveCell = LISTA1
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA11 <> "" Then
    ActiveCell = LISTA11
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA12 <> "" Then
    ActiveCell = LISTA12
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA13 <> "" Then
    ActiveCell = LISTA13
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA14 <> "" Then
    ActiveCell = LISTA14
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA15 <> "" Then
    ActiveCell = LISTA15
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA16 <> "" Then
    ActiveCell = LISTA16
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA17 <> "" Then
    ActiveCell = LISTA17
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA18 <> "" Then
    ActiveCell = LISTA18
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA19 <> "" Then
    ActiveCell = LISTA19
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA20 <> "" Then
    ActiveCell = LISTA20
    
    End If


    Anderson Diniz

    • Sugerido como Resposta AndersonFDiniz2 sexta-feira, 27 de outubro de 2017 17:06
    • Marcado como Resposta GGROCHAFER sexta-feira, 27 de outubro de 2017 19:31
    sexta-feira, 27 de outubro de 2017 17:06

Todas as Respostas

  • Eu quero que ele copie as informações de um user form para a planilha. Não consigo enviar imagem ele diz que n foi verificado ...sendo que não chegou nada em meu e-mail.  
    sexta-feira, 27 de outubro de 2017 16:41
  • If LISTA1 <> "" Then
    ActiveCell = LISTA1
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA2 <> "" Then
    ActiveCell = LISTA2
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA3 <> "" Then
    ActiveCell = LISTA3
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA4 <> "" Then
    ActiveCell = LISTA4
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA1 <> "" Then
    ActiveCell = LISTA1
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA5 <> "" Then
    ActiveCell = LISTA5
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA1 <> "" Then
    ActiveCell = LISTA1
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA6 <> "" Then
    ActiveCell = LISTA6
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA1 <> "" Then
    ActiveCell = LISTA1
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA7 <> "" Then
    ActiveCell = LISTA7
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA1 <> "" Then
    ActiveCell = LISTA1
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA8 <> "" Then
    ActiveCell = LISTA8
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA9 <> "" Then
    ActiveCell = LISTA9
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA10 <> "" Then
    ActiveCell = LISTA10
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA1 <> "" Then
    ActiveCell = LISTA1
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA11 <> "" Then
    ActiveCell = LISTA11
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA12 <> "" Then
    ActiveCell = LISTA12
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA13 <> "" Then
    ActiveCell = LISTA13
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA14 <> "" Then
    ActiveCell = LISTA14
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA15 <> "" Then
    ActiveCell = LISTA15
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA16 <> "" Then
    ActiveCell = LISTA16
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA17 <> "" Then
    ActiveCell = LISTA17
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA18 <> "" Then
    ActiveCell = LISTA18
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA19 <> "" Then
    ActiveCell = LISTA19
    ActiveCell.Offset(1, 0).Select
    End If
    If LISTA20 <> "" Then
    ActiveCell = LISTA20
    
    End If


    Anderson Diniz

    • Sugerido como Resposta AndersonFDiniz2 sexta-feira, 27 de outubro de 2017 17:06
    • Marcado como Resposta GGROCHAFER sexta-feira, 27 de outubro de 2017 19:31
    sexta-feira, 27 de outubro de 2017 17:06
  • Muito obrigado ! funcionou ! 
    sexta-feira, 27 de outubro de 2017 19:32