Ir para conteúdo
Fórum Script Brasil

Jahezer Franciz Capelari

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre Jahezer Franciz Capelari

  • Data de Nascimento 12/07/1994

Perfil

  • Gender
    Male
  • Interests
    🎯🔎👉Instagram: @jahezerfranciz/

    "O céu deixou de ser o limite quando o homem deixou suas pegadas na lua."

Jahezer Franciz Capelari's Achievements

0

Reputação

  1. Ola rafra, veja se o código abaixo te ajuda. Estou anexando um GIF que mostra o resultado obtido ao aplicar o código abaixo. Dessa forma é possível fazer com que as linhas sejam exibidas ou não, de acordo com o preenchimento em determinada célula que pode ser adequada por intermédio do código. O código abaixo deverá ser inserido seguindo os passos abaixo: 1. Com o Excel aberto, 2. Pressione Alt+F11 3. No lado esquerdo estará o Projeto - VBAProject 4. Abra a pasta Microsoft Excel Objetos 5. Clique duas vezes em EstaPasta_de_trabalho 6. Cole o código abaixo 7. No código defini o nome da guia para reconhecimento com o nome "Ocultar" (altere para o nome da sua guia) 8. Defini a célula que deve estar preenchida (ou não) na variável vLinhas_ColunaI, caso seja outra célula, altere o range definido. 9. Se manter esse código, adeque o nome da guia e preencha ou não a célula I7 que o efeito será aplicado conforme o GIF. ' vgLoop = Usado para estrutura de repetição. Dim vgLoop As Long Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) ' vLinhas_ColunaI = Usado para definir quais linhas da coluna I deverão ser verificadas caso ocorra alteração. ' vRow = Usado para varrer todas as linhas do RANGE que será definido na variável vLinhas_ColunaI. Dim vLinhas_ColunaI As Range Dim vRow As Variant Set vLinhas_ColunaI = Range("I7") ' Valida apenas se ocorreu alteração no range acima. If Not Intersect(Range(Target.AddressLocal), vLinhas_ColunaI) Is Nothing Then ' Varre todas as linhas do range. For Each vRow In vLinhas_ColunaI.Rows ' Caso alguma linha contenha informação, então exibe as linhas. If vRow.Value2 <> "" And IsNull(vRow.Value2) = False Then Call fsOcultarLinhas("Ocultar", True) ' Finaliza execução da SUB. Exit Sub End If Next ' Se chegou até aqui, então na estrutura FOR não foi encontrado nenhum valor preenchido. Logo, oculta as linhas. Call fsOcultarLinhas("Ocultar") End If End Sub Sub fsOcultarLinhas(ByVal vpNomeGuia As String, Optional ByVal vpExibirLinhas As Boolean = False) ' vpNomeGuia = Nome da guia que terá as células ocultas. ' vpExibirLinhas = Define se deve ser exibido ou não as linhas caso seja necessário (TRUE se sim, FALSE se não). ' Variável OPCIONAL com valor padrão = FALSE. ' Seleciona a guia. Sheets(vpNomeGuia).Select ' Seleciona as linhas Rows("8:28").Select ' Define se oculta ou não as linhas de acordo com o vpExibirLinhas. If vpExibirLinhas = True Then Selection.EntireRow.Hidden = False Else Selection.EntireRow.Hidden = True End If End Sub
×
×
  • Criar Novo...