Ir ao conteúdo

Loop VBA


hudhc

Posts recomendados

Postado

Olá,

Eu tenho o seguinte código em VBA:

Private Sub Worksheet_Change(ByVal Target As Range)

If Range("C1").Value = "" Then

Columns("C").Hidden = True

End If

End Sub

Ele faz o seguinte, quando a célula "C1" estiver vazia, a coluna "C" fica oculta.

Eu gostaria de saber se da para fazer um loop ou qualquer outro código que de para estender o código para o restante da planilha. Tipo assim, célula "D1" para a coluna "D" e assim por diante. Claro que da para fazer um por um, mas isso vai ser bastante inconveniente.

Então se alguém puder me ajudar, desde já eu agradeço.

Postado

Olá,

Eu tenho o seguinte código em VBA:

Private Sub Worksheet_Change(ByVal Target As Range)

If Range("C1").Value = "" Then

Columns("C").Hidden = True

End If

End Sub

Ele faz o seguinte, quando a célula "C1" estiver vazia, a coluna "C" fica oculta.

Eu gostaria de saber se da para fazer um loop ou qualquer outro código que de para estender o código para o restante da planilha. Tipo assim, célula "D1" para a coluna "D" e assim por diante. Claro que da para fazer um por um, mas isso vai ser bastante inconveniente.

Então se alguém puder me ajudar, desde já eu agradeço.

Tente o seguinte código:

Dim LR As Long, k As Long

LR = Cells(1, Columns.Count).End(xlUp).Row

For k = 1 To LR

If Cells(1, k).Value = "" Then

Columns(k).Delete

End If

Next k

Postado
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Row > 1 Then Exit Sub
If Target.Value = "" Then
Columns(Target.Column).Hidden = True
End If
End Sub

Postado

osvaldomp o código funcionou, só queria mais uma coisa. Após ocultar a coluna, gostaria que ela fosse reexibida quando escrevesse alguma coisa nela, mais ou menos o inverso desse código ae.

Mais ou menos o seguinte, a coluna "C" está oculta e quando a célula "C1" for preenchida, a coluna "C" fica visível novamente.

AlysonR, cara eu não consegui aplicar o seu código, não manjo muito de promagramação rsrsrs. Se você pudesse explicar mais ou menos como esse código funciona seria legal. Valeu.

Postado
... só queria mais uma coisa. Após ocultar a coluna, gostaria que ela fosse reexibida quando escrevesse alguma coisa nela, mais ou menos o inverso desse código ae.

Mais ou menos o seguinte, a coluna "C" está oculta e quando a célula "C1" for preenchida, a coluna "C" fica visível novamente.

Antes, você poderia explicar,... mais ou menos ..., qual a mágica que você pretende fazer para conseguir preencher 'C1' estando a coluna 'C' oculta?

Postado
Antes, você poderia explicar,... mais ou menos ..., qual a mágica que você pretende fazer para conseguir preencher 'C1' estando a coluna 'C' oculta?

kkk... tenho um formulário em vba que preenche algumas células pré determinadas.

uso um código parecido com esse:

Sheets("Plan1").Range("C1").Value = TextBox.Value

Ai digito no textbox e com o botão eu gravo na célula

Postado
...Ai digito no textbox e com o botão eu gravo na célula

kkkkkkkk ... Cheguei a pensar que você fosse o He Man, com superpoderes ...

Testaí... acrescentei a linha em vermelho.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Row > 1 Then Exit Sub
If Target.Value = "" Then
Columns(Target.Column).Hidden = True
[COLOR="Red"]Else: Columns(Target.Column).Hidden = False[/COLOR]
End If
End Sub

Postado
kkkkkkkk ... Cheguei a pensar que você fosse o He Man, com superpoderes ...

Testaí... acrescentei a linha em vermelho.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Row > 1 Then Exit Sub
If Target.Value = "" Then
Columns(Target.Column).Hidden = True
[COLOR="Red"]Else: Columns(Target.Column).Hidden = False[/COLOR]
End If
End Sub

Cara OBRIGADO, foi de muita ajuda!!!

He-Man?? To quase la kkkkkk.

Valeu

Cara ocorreu algo inesperado. O código só funciona quando eu preencho ou deixo em branco célula por célula, e quando eu tento fazer em mais de uma ele não funciona.

Exemplo:

As células da linha 1 estão preenchidas da coluna A até a E, ai eu seleciono todas (A1;B1;C1;D1;E1) e apago o conteúdo delas e o código não funciona.

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!