Pergunte aqui
2

Como Exibir/Ocultar guia específica de uma planilha Calc?

perguntadas 2017-10-17 19:28:31 +0200

imagem do gravatar de Júnio Vieira

updated 2019-03-01 19:08:57 +0200

Boa tarde, pessoal estou precisando de uma macro para exibir/ocultar uma aba especifica de uma planilha, por exemplo: tenho uma planilha com 3 abas; Plan1, Plan2 e Plan3, quero apenas exibir/ocultar a Plan2.

editar alterar tag assinalar como ofensivo fechar mesclar Excluir

4 Respostas

3

respondidas 2019-04-10 19:46:59 +0200

imagem do gravatar de Júnio Vieira

updated 2019-04-10 20:13:59 +0200

Encontrei outra forma de ocultar uma guia especifica,

Sub Ocultar

ThisComponent.Sheets.GetByName("nome da planilha").IsVisible = False '(para ocultar)

end Sub

.

Sub Mostrar

ThisComponent.Sheets.GetByName("nome da planilha").IsVisible = True '(para exibir)

ens Sub

.

editar assinalar como ofensivo Excluir Link mais

Comentários

Muito bem @Júnio Vieira, uma só linha, já substitui a minha.

imagem do gravatar de Gilberto SchiavinattoGilberto Schiavinatto ( 2019-04-10 20:08:32 +0200 )editar
0

respondidas 2017-10-17 23:19:19 +0200

imagem do gravatar de Grafeno

Boa noite,

Veja se é isso que procura:

Sub OcultarGuias
Dim oControlador As Object

  oControlador = ThisComponent.CurrentController
  oControlador.SheetTabs = False
End Sub


Sub ExibirGuias
Dim oControlador As Object

  oControlador = ThisComponent.CurrentController
  oControlador.SheetTabs = True
End Sub


Atte,

editar assinalar como ofensivo Excluir Link mais

Comentários

ola @Júnio Vieira, creio que estas macros possam ser úteis também, veja aqui https://ask.libreoffice.org/pt-br/que...

imagem do gravatar de Gilberto SchiavinattoGilberto Schiavinatto ( 2017-10-17 23:57:05 +0200 )editar

Gilberto obrigado pela sua resposta, porém não me expressei corretamente. O que realmente estou precisando é exibir/ocultar uma aba de planilha especifica, por exemplo: tenho Plan1, Plan2 e Plan3, quero apenas exibir/ocultar a Plan2. Entendeu?

imagem do gravatar de Júnio VieiraJúnio Vieira ( 2017-10-18 15:25:20 +0200 )editar
2

respondidas 2017-10-19 01:05:01 +0200

updated 2018-03-23 11:13:24 +0200

Oi @Júnio Vieira, segue as macros e arquivo teste

sub OcultarAba2
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "aTableName"
args1(0).Value = "Planilha2"      '<=========== aqui é o nome da aba.
dispatcher.executeDispatch(document, ".uno:Hide", "", 0, Array())
end sub

.

sub MostrarAba2
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "aTableName"
args1(0).Value = "Planilha2"  '<=========== aqui é o nome da aba.
dispatcher.executeDispatch(document, ".uno:Show", "", 0, args1())
end sub
editar assinalar como ofensivo Excluir Link mais

Comentários

Bom dia Gilberto, é exatamente o que eu precisava, obrigado.

imagem do gravatar de Júnio VieiraJúnio Vieira ( 2017-10-19 12:52:36 +0200 )editar

Ola @Júnio Vieira, por gentileza, click na bolinha Descrição da imagem a esquerda da resposta, para finalizar a pergunta.

imagem do gravatar de Gilberto SchiavinattoGilberto Schiavinatto ( 2017-10-19 17:24:27 +0200 )editar

@Gilberto Schiavinatto, por favor, pq para ocultar tem que utlizar o número da aba e para mostrar pode ser usado o nome da aba? pois eu preciso que funcione pelo nome da aba, e só funciona se coloco o número dela....no aguardo, agradeço!

imagem do gravatar de pauloftcampospauloftcampos ( 2018-03-22 20:50:35 +0200 )editar

@Júnio Vieira, ok, acerto feito. a macro Ocultar e Mostrar são identicas exceto a penultima linha "uno:Hide" = ocultar e "uno:Show" mostrar.

imagem do gravatar de Gilberto SchiavinattoGilberto Schiavinatto ( 2018-03-23 11:16:23 +0200 )editar
2

respondidas 2017-11-03 13:41:27 +0200

imagem do gravatar de Conrado

updated 2017-11-03 20:07:56 +0200

imagem do gravatar de Grafeno

Olá @Júnio Vieira, segue uma versão de macro 2007 acima, que funciona perfeitamente no libreoffice e para versões da Microsoft também.

Rem Attribute VBA_ModuleType=VBAModule

Option VBASupport 1

Sub Ocultar_Sheets ()

    Worksheets("Plan1").Visible = False
    Worksheets("Plan2").Visible = False
    Worksheets("Plan3").Visible = False 

End Sub


Sub Reexibir_Sheets ()

    Worksheets("Plan1").Visible = True
    Worksheets("Plan2").Visible = True
    Worksheets("Plan3").Visible = True  

End Sub

Observação: Copie deste a frase Rem Attribute VBA_ModuleType=VBAModule

editar assinalar como ofensivo Excluir Link mais
Login/Registrar para responder

Ferramentas de perguntas

1 seguidor

Estatísticas

Perguntadas: 2017-10-17 19:28:31 +0200

Lidas: 914 vezes

Última atualização: Apr 10