Possibilidade de alterar a altura de vários "campos de rótulo" (etiqueta) de uma só vez.

Olá! :slight_smile:

Eu fiz uma espécie de questionário, utilizando os rótulos, caixas de texto e “check box”, porém, ao finalizar, percebi que poderia ter economizado um pouco de espaço, ocorre que será muito trabalhoso editar um por um, sem contar que tenho que editar as “check box” também.

Alguém saberia dizer-me se há alguma forma de fazer isso de forma conjunta?

Obrigado!

Não sei, mas eu faria o seguinte:

  • gravaria uma macro (Ferramentas>Gravar macro)
  • pesquisaria como setar uma variável como uma lista de todos os objetos de mesmo tipo.
  • depois inseriria uma iteração(looping) para mudar cada elemento com o nome de acordo com a regra desejada.

Olá!

Obrigado pela resposta.

Eu pensei em gravar a macro, mas não vejo como fazer a regra para que cada elemento identificado seja alterado apenas sua altura, de “x” para “y”. :confused:

De qualquer forma, obrigado pela contribuição, ajuda, disposição e atenção!

Tudo de bom!

/#UsePFF2.

/#UsemPFF2.

Pensei que o laço For Each fosse fácil, mas não tenho muita familiaridade com objetos dentro da planilha, como deve ser seu caso, mas a ideia inicial seria essa:

Sub frmMouseMove
Dim ws As Object
Dim oForm As Object
Dim bt As Object

ws = ThisComponent.Sheets.getByName(“BaseDados”)
oForm = ws.DrawPage.Forms.getByName( “Formulário” )

For Each bt In oForm
If bt.ImplementationName = “com.sun.star.form.OCheckBoxModel” Then
bt.BackgroundColor = RGB ( 100 , 255 , 200 )
bt.TextColor = RGB ( 255 , 10 , 10 )
bt.Label = “Teste”
'bt.PositionX = 22
End If
Next bt
End Sub

O problema do ImplentationName utilizado no código se refere ao Model do objeto, porém a propriedade PositionX está relacionada ao objeto “pai”, digamos assim.

Se alguém souber como referenciar o objeto pai dentro de uma planilha, ajudaria bastante.