Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
Selecionar até última célula preenchida
Selecionar até última célula preenchida
Saudações,
Estou em busca de um código para Selecionar um intervalo que inicia-se em A2 e vai até a última célula preenchida da coluna A.
Consegui o seguinte código abaixo:
Range("A2:A" & Range("A2").End(xlDown).Row).Select
Mas este código NÃO seleciona só até a última célula preenchida da coluna A, ele seleciona Também as células vazias que contém fórmulas abaixo da última preenchida.
Eu preciso que selecione de A2 até a última célula preenchida da coluna A, desconsiderando se houver células vazias com fórmulas abaixo da última preenchida.
Podem me ajudar ?
Estou em busca de um código para Selecionar um intervalo que inicia-se em A2 e vai até a última célula preenchida da coluna A.
Consegui o seguinte código abaixo:
Range("A2:A" & Range("A2").End(xlDown).Row).Select
Mas este código NÃO seleciona só até a última célula preenchida da coluna A, ele seleciona Também as células vazias que contém fórmulas abaixo da última preenchida.
Eu preciso que selecione de A2 até a última célula preenchida da coluna A, desconsiderando se houver células vazias com fórmulas abaixo da última preenchida.
Podem me ajudar ?
-
- Colaborador
- Mensagens: 72
- Registrado em: Ter Fev 10, 2015 8:53 pm
Re: Selecionar até última célula preenchida
Código: Selecionar todos
Dim ultima
ultima = Range("A2").End(xlDown).Row
Range("A2:A" & ultima).Select
Selecionar até última célula preenchida
sr. messiasmbm,
usei o seu código sugerido, MAS ainda está selecionando as células vazias com fórmulas.
vou explicar melhor :
tenho um código VBA que busca na coluna A (inicio em A2) de uma planilha informações e cola em outra planilha.
na coluna A (da planilha fonte) eu tenho informações preenchidas que vão até umas 200 linhas, MAS esta mesma coluna tem fórmulas que vão de A2 até A15000 (cujas células sem informações encontram-se vazias).
preciso que o código que estou buscando selecione só as informações preenchidas da coluna A (inicio em A2), ...MAS o seu código sugerido ainda está buscando até a linha 15000 (até onde vão as fórmulas).
E só quero que selecione até onde tem as informações preenchidas.
obrigado pela atenção.
usei o seu código sugerido, MAS ainda está selecionando as células vazias com fórmulas.
vou explicar melhor :
tenho um código VBA que busca na coluna A (inicio em A2) de uma planilha informações e cola em outra planilha.
na coluna A (da planilha fonte) eu tenho informações preenchidas que vão até umas 200 linhas, MAS esta mesma coluna tem fórmulas que vão de A2 até A15000 (cujas células sem informações encontram-se vazias).
preciso que o código que estou buscando selecione só as informações preenchidas da coluna A (inicio em A2), ...MAS o seu código sugerido ainda está buscando até a linha 15000 (até onde vão as fórmulas).
E só quero que selecione até onde tem as informações preenchidas.
obrigado pela atenção.
- Reinaldo
- Jedi
- Mensagens: 1537
- Registrado em: Sex Ago 01, 2014 4:09 pm
- Localização: Garça - SP / SCS - SP
Re: Selecionar até última célula preenchida
Creio estar havendo um equivoco, células com formulas estão, para todos os efeitos, preenchidas e fazem parte do "UsedRange".
Aparentemente o que deseja é selecionar células sem valor "aparente". Dependendo do método de retorno das formulas nessa células, pode-se utilizar, por exemplo a função cont.valores para determinar qual a range desejada. Com um modelo ficará muito mais simples obter um retorno que lhe atenda
Aparentemente o que deseja é selecionar células sem valor "aparente". Dependendo do método de retorno das formulas nessa células, pode-se utilizar, por exemplo a função cont.valores para determinar qual a range desejada. Com um modelo ficará muito mais simples obter um retorno que lhe atenda
Selecionar até última célula preenchida
sr. Rmarco,
Creio realmente que a solução está em utilizar a função cont.valores no código VBA para determinar qual a range desejada.
Mas não consegui adaptar essa função no código VBA. Se o senhor puder me ajudar, ficarei agradecido.
segue um modelo do código inteiro (o qual copia da Plan1 e cola os valores na Plan2):
Sub Copiar_Colar()
Sheets("Plan1").Select
Range("A2:A" & Range("A2").End(xlDown).Row).Select 'esse é o código que precisa selecionar só as células preenchidas.
Application.CutCopyMode = False
Selection.Copy
Sheets("Plan2").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub
Creio realmente que a solução está em utilizar a função cont.valores no código VBA para determinar qual a range desejada.
Mas não consegui adaptar essa função no código VBA. Se o senhor puder me ajudar, ficarei agradecido.
segue um modelo do código inteiro (o qual copia da Plan1 e cola os valores na Plan2):
Sub Copiar_Colar()
Sheets("Plan1").Select
Range("A2:A" & Range("A2").End(xlDown).Row).Select 'esse é o código que precisa selecionar só as células preenchidas.
Application.CutCopyMode = False
Selection.Copy
Sheets("Plan2").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub
- Reinaldo
- Jedi
- Mensagens: 1537
- Registrado em: Sex Ago 01, 2014 4:09 pm
- Localização: Garça - SP / SCS - SP
Re: Selecionar até última célula preenchida
Com disse sem visualizar os dados de sua planilha fica muito dificil, ficamos no achometro
a maneira de contar os valores seria
a maneira de contar os valores seria
Código: Selecionar todos
Sub Copiar_Colar()
Dim uLin As Long
uLin = Application.WorksheetFunction.Count(Sheets("plan1").Range("A:A"))
Sheets("Plan1").Select
Range("A2:A" & uLin).Select 'esse é o código que precisa selecionar só as células preenchidas.
Application.CutCopyMode = False
Selection.Copy
Sheets("Plan2").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub
[RESOLVIDO] Selecionar até última célula preenchida
sr. Rmarco,
muito obrigado....
era isso mesmo que eu estava buscando para este código VBA !
muito obrigado....
era isso mesmo que eu estava buscando para este código VBA !
Re: Selecionar até última célula preenchida
Bom dia Tomás! Estou tendo a seguinte dificuldade com o código VBA selecionar células preenchidas, abaixo reproduzida: SEMPRE FICA A ÚLTIMA LINHA PREENCHIDA DE FORA da área selecionada.
˜Sub Copiar_Colar()
Dim uLin As Long
uLin = Application.WorksheetFunction.Count(Sheets("plan1").Range("A:A"))
Sheets("Plan1").Select
Range("A2:A" & uLin).Select 'esse é o código que precisa selecionar só as células preenchidas.
Application.CutCopyMode = False
Selection.Copy
Sheets("Plan2").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub˜
Vc pode me ajudar, por favor?
Obrigado.
Lourenço
˜Sub Copiar_Colar()
Dim uLin As Long
uLin = Application.WorksheetFunction.Count(Sheets("plan1").Range("A:A"))
Sheets("Plan1").Select
Range("A2:A" & uLin).Select 'esse é o código que precisa selecionar só as células preenchidas.
Application.CutCopyMode = False
Selection.Copy
Sheets("Plan2").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub˜
Vc pode me ajudar, por favor?
Obrigado.
Lourenço
- Reinaldo
- Jedi
- Mensagens: 1537
- Registrado em: Sex Ago 01, 2014 4:09 pm
- Localização: Garça - SP / SCS - SP
Re: Selecionar até última célula preenchida
Verifique se a coluna A e a que determina a ultima linha, ou se e outra coluna
Caso seja outra altere em -->.Count(Sheets("plan1").Range("A:A")
Uma outra possibilidade, se sempre for a ultima linha, e acrescentar +1 na seleção
--> Range("A2:A" & uLin + 1)
Caso seja outra altere em -->.Count(Sheets("plan1").Range("A:A")
Uma outra possibilidade, se sempre for a ultima linha, e acrescentar +1 na seleção
--> Range("A2:A" & uLin + 1)
Re: Selecionar até última célula preenchida
Ola Reinaldo.
Obrigado pela dica.
Foi exatamente a segunda opção, eu tenho um cabeçalho na planilha que não estava considerando.
Valou.
Lourenço
Obrigado pela dica.
Foi exatamente a segunda opção, eu tenho um cabeçalho na planilha que não estava considerando.
Valou.
Lourenço