bEbEr Postado Junho 26, 2006 Denunciar Share Postado Junho 26, 2006 Galera..to com a seguinte dúvida:como faço a condição no while.. puxando os dados diferentes de "VALOR" e igual a "" (VAZIO)?Tentei isso daqui:While ActiveSheet.Range("A" & i).Value <> "VALOR" And While ActiveSheet.Range("A" & i).Value = ""mas não obtive sucesso! ;~alguém ai me ajuda?!flwwww Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Junho 26, 2006 Denunciar Share Postado Junho 26, 2006 Não repete a palavra "While":While ActiveSheet.Range("A" & i).Value <> "VALOR" And ActiveSheet.Range("A" & i).Value = ""Sendo que a condição é essa mesmo? Ela é estranha... :blink: Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bEbEr Postado Junho 26, 2006 Autor Denunciar Share Postado Junho 26, 2006 Desculpe, me enganei.. não exatamente este o erro.Tipo assim. Na coluna A tem os seguintes valores:A1 = TIAGOA2 = VALORA3 = "" (VAZIO)A4 = TIAGOA5 = VALORA6 = TIAGOA7 = "" (VAZIO)A8 = VALOREu montei a seguinte condição:i=1While ActiveSheet.Range("A" & i).Value <> "VALOR"ActiveSheet.Range("A" & i).Value = "deleta"WendOu seja, os valores que forem diferente de VALOR, ele põe o nome de DELETA. Mais o que acontecendo é o seguinte, ele altera o nome pra DELETA só até no A1 e depois a célula A3 fica ativa, porque o A2 é VALOR então ele diz que termino.. segundo a condição que eu montei.. mas tem mais valores para ele verificar..Como faço pra verificar um po um?falou Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis_Rave Postado Junho 26, 2006 Denunciar Share Postado Junho 26, 2006 Por que você não tenta usar um laço For?Tipo, primeiro voce armazena o numero de linhas que voce quer fazer (no caso 8), joga em uma variavel e dps:For i = 1 to linhas If ActiveSheet.Range("A" & i).Value <> "VALOR" then ActiveSheet.Range("A" & i).Value = "deleta" End if Next acho que seria mais apropriado, já que você sabe em quantas linhas quer fazer Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Junho 26, 2006 Denunciar Share Postado Junho 26, 2006 Você precisa ter um jeito de dizer qual é o final da lista ou então verificar todas as linhas. O ideal seria verificar até que a célula fosse vazia, mas no caso, vazio é um valor possível para uma célula, então não se pode utilizá-lo como delimitador. Para verificar todas as células de uma coluna você pode fazer: coluna = "A:A" Range(coluna).Select qt = Selection.Count For i = 1 To qt If Selection.Item(i) = "VALOR" Then Selection.Item(i) = "DELETA" End If Next iSó vai levar um tempinho porque são 65536 linhas para serem verificadas (pelo menos é isso aqui no Excel 2003).Certo? ;)Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 bEbEr Postado Junho 26, 2006 Autor Denunciar Share Postado Junho 26, 2006 Graymalkin, deu certo! ;)Queria sabe também, como faço pra excluir uma coluna inteira em VBa. Como faço?Tipo, tem como criar uma barra de processamento ali naquele processo que ele faz?falou Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Graymalkin Postado Junho 26, 2006 Denunciar Share Postado Junho 26, 2006 Graymalkin, deu certo! ;):)Queria sabe também, como faço pra excluir uma coluna inteira em VBa. Como faço?Assim: Range("A:A").Select Selection.DeleteMas, qualquer coisa que você quiser fazer em VBA é só gravar uma Macro realizando a ação desejada e depois olhar o código gerado para ela (no editor do VBA - ALT+F11).Tipo, tem como criar uma barra de processamento ali naquele processo que ele faz?Sim, se você colocar uma ProgressBar na planilha, bastará definir a sua propriedade Max com o total e depois incrementar a propriedade Value para ela "encher". Acredito que vá ser necessário chamar DoEvents dentro do loop para liberar o processamento a fim de encher a barra.Abraços,Graymalkin Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
bEbEr
Galera..
to com a seguinte dúvida:
como faço a condição no while.. puxando os dados diferentes de "VALOR" e igual a "" (VAZIO)?
Tentei isso daqui:
mas não obtive sucesso! ;~
alguém ai me ajuda?!
flwwww
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.