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
Avatar do usuário
Por Dione
Posts Avatar
#43197
Boa noite galera,

Precisaria alterar esse código para um intervalo especifico (A9:A16), de modo que a célula que anteriormente tinha sido ocultada por constar o valor 0, seja reexibida quando o valor for diferente de 0.
Hoje quando altero o valor de 0 para 10 por exemplo, a célula continua oculta.

=====================================================================================================
Private Sub Worksheet_Change(ByVal Target As Range)
For i = [A65000].End(xlUp).Row To 1 Step -1

If Cells(i, 1) = 0 Then Rows(i).EntireRow.Hidden = True

Next i

End Sub
=====================================================================================================
Você não está autorizado a ver ou baixar esse anexo.
Editado pela última vez por Dione em 18 Abr 2019 às 22:47, em um total de 1 vez.
Por babdallas
#43198
Tente o seguinte:
Código: Selecionar todos
Private Sub Worksheet_Change(ByVal Target As Range)
          Dim rngIntervalo as Range, rngCelula as Range

         Set rngIntervalo = Range("A9:A16")

         For each rngCelula in rngIntervalo
                    If rngCelula.value2 = 0 then Rows(rngCelula.Row).EntireRow.Hidden = True
          next rngCelula

End Sub
Avatar do usuário
Por Dione
Posts Avatar
#43228
Boa noite babdallas,

Nesse código, quando o valor é 0, a célula é ocultada, porém quando informo um valor diferente de 0 ela não é reexibida. :(
Por osvaldomp
#43230
Dione escreveu: Hoje quando altero o valor de 0 para 10 por exemplo, a célula continua oculta
Como o valor é alterado, manualmente ou por fórmula ?

Se for manualmente, o seu código deveria funcionar corretamente, ou seja, desde que a linha esteja visível (e imagino que esteja, pois só assim a célula poderá ser alterada manualmente), somente se a célula estiver vazia ou com zero é que a linha será ocultada.

Por exemplo, supondo que A5 = 0, então a linha 5 estará oculta. Como exatamente você faz para alterar para A5 = 10 ?
Avatar do usuário
Por Dione
Posts Avatar
#43234
Boa noite,

Anexei um arquivo para exemplificar. Gostaria que ao informar a quantidade para zero na plan1 replique na plan2 e fique oculta. E quando mudar pra qualquer outro valor diferente de zero na plan1 , a linha seja reexibida na plan2.
Por osvaldomp
#43241
Dione escreveu: Gostaria que ao informar a quantidade para zero na plan1 replique na plan2 ...
Fazendo dessa forma a coluna Quantidade da Planilha2 ficará sempre com valor zero. É isso que você quer?
O código abaixo faz o que você pediu na última postagem.
Instale uma cópia dele no módulo da Planilha1.
Antes de testar, na Planilha2 inverta A8 com B8 para ficar igual à Planilha1.
Se houver registros repetidos na Planilha2, no caso de reexibir o registro naquela planilha, o código irá buscar o primeiro, então, se existe essa possibilidade de registros repetidos, você precisa criar um identificador único para cada registro.

Código: Selecionar todos
Private Sub Worksheet_Change(ByVal Target As Range)
 Dim c As Range
  If Target.Column <> 2 Then Exit Sub
  If Target.Value = 0 Then
   Cells(Target.Row, 1).Resize(, 7).Copy Sheets("Planilha2").Cells(Rows.Count, 1).End(3)(2)
   Sheets("Planilha2").Rows(Sheets("Planilha2").Cells(Rows.Count, 1).End(3).Row).Hidden = True
  Else
   Set c = Sheets("Planilha2").[A:A].Find(Cells(Target.Row, 1))
   If Not c Is Nothing Then
    Sheets("Planilha2").Rows(c.Row).Hidden = False
   End If
 End If
End Sub

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