Caros,
Estou usando a macro abaixo para excluir linhas em branco para uma determinada coluna, estava funcionando normalmente, mas agora passou a dar o erro em anexo.
A MACRO É A SEGUINTE:
Sub tratar()
Sheets("PLAN1").Select
ActiveCell.SpecialCells(xlLastCell).Select
Range("a1" & ActiveCell.Row + 1).Value = "fim de arquivo"
Range("a1").Select
Do While ActiveCell.Value <> "fim de arquivo"
If ActiveCell.Value = "" Then
Selection.EntireRow.Delete
Else
ActiveCell.Offset(1, 0).Select
End If
Loop
End Sub
Alguém sabe me explicar o que está errado? o erro está em anexo:
ps: Não posso postar a planilha, pois contém algumas informações confidenciais da empresa, possui 106332 linhas.
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Boa tarde!!
Para mim não houve erro!!
Att
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Pra mim está retornando erro nessa planilha em específico.
O que poderia ser?
Teria outra macro para excluir as células em branco da coluna A ?
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Me parece que o metodo para incluir o valor na ultima linha deveria ser
Range("A" & ActiveCell.Row + 1).Value = "fim de arquivo" ou seja se a ultima linha for 106331, será inclido em A106332 a informação
assim: Range("a1" & ActiveCell.Row + 1).Value = "fim de arquivo" será incluido a infomaçao na celula A1106332 (A1 & 106332)
Então é possivel que esteja ultrapassando os limites de sua planilha
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Boa noite!!
Que versão você está usando?
Att
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Reinaldo, deve ficar assim é isso? está dando erro 400.
Range("a" & ActiveCell.Row + 1).Value = "fim de arquivo"
Range("a").Select
Alexandre,
Versão 2010
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Boa noite!!
Tente adaptar esse...
Public Sub Teste() Dim R As Long Dim C As Range Dim n As Long Dim rng As Range On Error GoTo skip Application.ScreenUpdating = False Application.Calculation = xlCalculationManual If Selection.Rows.Count > 1 Then Set rng = Selection Else Set rng = ActiveSheet.UsedRange.Rows End If n = 0 For R = rng.Rows.Count To 1 Step -1 If Application.WorksheetFunction.CountA(rng.Rows(R).EntireRow) = 0 Then rng.Rows(R).EntireRow.Delete n = n + 1 End If Next R skip: Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic End Sub
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Alexandre,
Esta está dando erro:
O sistema está criticando a linha: Public Sub Teste()
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Alterando a linha conforme informei a outra (select) permanece como sendo Range("a1").Select (tem como objetivo reposicionar o foco na primeira linha)
Quanto ao codigo do colega Alexandre, aqui (excel 2003 e 2010) funciona normal. Qual a mensagem de erro retornada ?
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Bom dia!!
No topo tente assim...
Option Explicit Public Sub Test()
Ou...
Option Explicit Sub Test()
Eu não testei!
Att
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Bom dia!!
Ou use esse..
Sub DeletearVazio() On Error Resume Next Range("A:A").Select Selection.EntireRow.SpecialCells(xlBlanks).EntireRow.Delete On Error GoTo 0 End Sub
Att
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Caros, Acredito que o problema seja a quantidade de linhas da planilha, pois em planilhas pequenas está ok.
Testei assim e não funcionou:
Option Explicit
Sub Test()
Public Sub Teste()
Dim R As Long
Dim C As Range
Dim n As Long
Dim rng As Range
On Error GoTo skip
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
If Selection.Rows.Count > 1 Then
Set rng = Selection
Else
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Bom dia!!
tente com o ultimo que eu postei...
Há algo de estranho, pois nos meus teste com sua rotina não tive problemas, para verificar isso detalhadamente, deveria mos ter um arquivo modelo compactado, para melhor analisar.
Att
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Alexandre,
A última que vc postou, quando eu executo, ela APAGA TODA a planilha.!
Sendo que eu preciso apenas excluir O QUE ESTIVER VAZIO NA COLUNA A.
Eu não posso postar a planilha, porque é o cadastro de clientes da empresa, pode me prejudicar entendeu?!
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Bom dia!!
Foi por isso que eu deixei em negrito modelo compactado, não precisa ser os mesmo dados.
Exemplo, como eu vou saber se em seu arquivo em milhões de células não tem um ou outra linha ou coluna que tem células mescladas, isso também poderia gerar o erro.
Eu não posso adivinha, visto que nos meus teste eu não tive o mesmo problema, a parte que me falta para ter erro, está em seu arquivo.
Vamos aguardar quem realmente endente de VBA, para te ajudar!
Abraços at+++
Att
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel