Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
#59357
Boas,

Eu gostava de pedir uma ajuda, necessito fazer uma macro que me permita ocultar uma linha se numa determinada célula estiver escrito "OK", e voltar a mostrar se necessário através de uma botão ocultar e outro mostrar.
Imaginando que os meus dados começam na linha 5 e que na coluna D da linha 5 está OK essa linha deveria ser ocultada, se estiver "NOK" fica visível.

Podem ajudar-me
#59359
Experimente:
Código: Selecionar todos
Sub OcultaLinhas()
 Dim v As Long
  For v = 5 To Cells(Rows.Count, 4).End(3).Row
   Rows(v).Hidden = Cells(v, 4) = "OK"
  Next v
End Sub
Código: Selecionar todos
Sub ReexibeLinhas()
 Rows.Hidden = False
End Sub
AnaGalveias agradeceu por isso
#59366
por osvaldomp » 01 Out 2020 às 19:53
Experimente:

CÓDIGO: SELECIONAR TODOS
Sub OcultaLinhas()
Dim v As Long
For v = 5 To Cells(Rows.Count, 4).End(3).Row
Rows(v).Hidden = Cells(v, 4) = "OK"
Next v
End Sub


CÓDIGO: SELECIONAR TODOS
Sub ReexibeLinhas()
Rows.Hidden = False
End Sub


Tenho as células unidas o que altera a macro, pode ajudar? envio em anexo o documento
Você não está autorizado a ver ou baixar esse anexo.
#59370
Código: Selecionar todos
Sub OcultaLinhasV2()
 Dim v As Long
  For v = 4 To Cells(Rows.Count, 4).End(3).Row Step 2
   Rows(v & ":" & v + 1).Hidden = Cells(v, 4) = "OK"
  Next v
End Sub
dica - para responder não faça copiar/colar, clique em +Resposta localizado abaixo da última postagem
AnaGalveias agradeceu por isso
#59398
Disponibilize diretamente aqui no fórum o seu arquivo Excel com os códigos instalados.
AnaGalveias agradeceu por isso
#59531
AnaGalveias escreveu: É normal que fique mais lento quando oculta as linhas?
Não.
Código: Selecionar todos
Sub OcultaLinhasV3()
 Dim v As Long
  For v = 15 To Cells(Rows.Count, 13).End(3).Row Step 8
   Rows(v & ":" & v + 7).Hidden = Cells(v, 13) = "OK"
  Next v
End Sub
Porque você disponibilizou antes um arquivo com planilha completamente diferente desta última :?: :?: :?: :o :shock:
AnaGalveias agradeceu por isso
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord