definir variável de objeto

Olá pesoal

Criei um formulário com 1 botão de pressão e uma caixa de texto.

Ao clicar no botão de Nome TxtNome com o rótulo INICIAR, defini o evento executar ao link de 1 macro (Sub Iniciar), que abre cx. do inputbox, digito o nome e da o ERRO : Erro em tempo de execução do Basic. Variável do objeto não definida e mostra o módulo e a linha do erro sombreada ( TxtNome.Text = sNome)
Como defino uma variável a um objeto ? O QUE FALTA OU ???

Objeto é uma Caixa de texto, que foi definida:

Global oDoc As Object

Global oDocCrl As Object

Global oForm As Object

Global TxtNome As Object

Dim sNome 

Sub Form_Open

	
	oDoc = StarDesktop.CurrentComponent
	oDocCrl = oDoc.getCurrentController()
	oForm = oDoc.DrawPage.Forms.GetByIndex(0)
	
	TxtNome = oDocCrl.GetControl(oForm.getByName("TxtNome")

	TxtNome.Text = ""
	
End Sub

Sub Iniciar
	

	sNome = InputBox("Nome","Qual o seu nome")
	TxtNome.Text = sNome

End Sub

Com certeza um problema de escopo de suas variáveis… Busque a “macro Xray” no Google e instale no seu LibreOffice e siga as instruções para usa-la e inspecionar os objetos da API do LibreOffice.

“Ao clicar no botão de Nome TxtNome com o rótulo INICIAR,[…]” Uai, mas não deveria ser a caixa de texto se chamar “TxtNome”?

Use a propriedade .Value, acho que o .text é somente Leitura, portanto não dá pra atribuir valores, veja meu histórico de respostas que tem como usar o access2base, ele facilita pois fica a síntese proxima a do VBA.