@RobsonT, tem que Desproteger a planilha, e depois proteger…
'================================================|
Sub RemoverLinhasEmBranco
' observação: Remove Linhas Em Branco de toda planilha ativa
'================================================|
' Macro que remove linhas em branco em uma planilha '
' Desenvolvida incialmente por Noelson Duarte em 02/06/2005. '
' Alterada por Francival Lima em 01/03/2008 '
'---------------------------------------------------------'
Call DesprotegerPlanilha "Planilha", "Senha"
Dim oDoc As Object
Dim oControlador As Object
Dim oPlan As Object
Dim oCursor As Object
Dim vEnd As Object
Dim oExt As Object
Dim oLinhas As Object
Dim nTotal As integer 'As Object
Dim nFlags As Boolean 'As Object
oDoc = thisComponent
oControlador =oDoc.getCurrentController()
'-----Retorna o controlador do Documento aberto.
oPlan = oControlador.getActiveSheet()
'-----Retorna a planilha ativa.
oCursor = oPlan.createCursor()
'-----Cria um cursor
oCursor.gotoEndOfUsedArea(False)
vEnd = oCursor.getRangeAddress()
oExt = oPlan.getCellRangeByPosition(0,0,vEnd.EndColumn,vEnd.EndRow)
oLinhas = oExt.getRows()
nTotal = oLinhas.getCount() - 1
nFlags = com.sun.star.sheet.CellFlags.VALUE OR _
com.sun.star.sheet.CellFlags.DATETIME OR _
com.sun.star.sheet.CellFlags.STRING OR _
com.sun.star.sheet.CellFlags.ANNOTATION OR _
com.sun.star.sheet.CellFlags.FORMULA
For i = nTotal To 0 Step -1
oExtLin = oPlan.getCellRangeByPosition(0, i, vEnd.EndColumn, i)
oCelulasNaoVazias = oExtLin.queryContentCells(nFlags)
If oCelulasNaoVazias.getCount() = 0 Then
oLinhas.removeByIndex(i, 1)
End If
Next i
Call ProtegerPlanilha "Planilha", "Senha"
End Sub
Incluida no inicio Desproteger e no final Proteger
'================================================|
Sub DesprotegerPlanilha ( xPlanilha As String, xsenha As string )
'================================================|
Dim oDoc As Object, oPlan As Object
Dim Senha as String
oDoc = ThisComponent
oPlan = oDoc.Sheets.getByName( xPlanilha )
Senha = xsenha '<= AQUI É A SENHA........
' Despoteger a planilha
oPlan.Unprotect(Senha)
End Sub
'================================================|
Sub ProtegerPlanilha ( xPlanilha As String, xsenha As string )
'================================================|
Dim oDoc As Object, oPlan As Object
Dim Senha as String
oDoc = ThisComponent
oPlan = oDoc.Sheets.getByName( xPlanilha )
Senha = xsenha '<= AQUI É A SENHA........
' Proteger a planilha
oPlan.Protect(Senha)
End Sub
ATENÇÂO:: Para dar mais detalhes a sua pergunta, use na pergunta ou abaixo. Não use Adicionar resposta para comentário. Grato.
Caso a resposta atendeu sua necessidade, por gentileza, click na bolinha a esquerda da resposta, para finalizar a pergunta.
.