Conteúdo
Índice 🔎︎

# Princípios básicos

Esta secção proporciona as bases para trabalhar com o LibreOffice Basic.

O código Basic no LibreOffice baseia-se em sub-rotinas e funções especificadas entre as secções sub...end sub e function...end function. Cada Sub ou Função pode invocar outras Sub ou Funções. Se tiver o cuidado de escrever códigos genéricos para uma Sub ou Função, poderá provavelmente reutilizá-los noutros programas. Consulte também Procedimentos e funções.

Aplicam-se algumas restrições aos números de variáveis públicas, subs, e funções. Não se deve usar o mesmo nome que outro módulo da mesma biblioteca.

## O que é uma Sub?

Sub é a abreviatura de sub-rotina, que é utilizada para manipular uma certa tarefa num programa. As subs são utilizadas para dividir uma tarefa em procedimentos individuais. Dividir um programa em procedimentos e sub-procedimentos facilita a leitura e reduz a probabilidade de erro. Uma sub pode utilizar alguns argumentos como parâmetros mas não devolve quaisquer valores à sub ou função de chamada, como por exemplo:

DoSomethingWithTheValues(MyFirstValue,MySecondValue)

## O que é uma função?

Uma função é, essencialmente, uma sub que devolve um valor. Pode utilizar uma função no lado direito de uma declaração de variáveis ou noutros locais onde normalmente utilize valores, como por exemplo:

MySecondValue = myFunction(MyFirstValue)

## Variáveis locais e globais

As variáveis globais são válidas para todas as subs e funções que se encontrem dentro de um módulo. São definidas no início de um módulo antes do início da primeira sub ou função.

As variáveis declaradas numa sub ou função só são válidas nesta mesma sub ou função. Estas variáveis sobrepõem-se às variáveis globais com o mesmo nome e às variáveis locais com o mesmo nome a ter origem nas subs ou funções de nível superior.

## Estruturação

Depois de separar o programa em procedimentos e funções (Subs e Funções), pode guardar estes procedimentos e funções como ficheiros para reutilização noutros projetos. O LibreOffice Basic tem suporte a Módulos e bibliotecas. As subs e as funções estão sempre dentro de módulos. Pode definir os módulos para serem globais ou para fazerem parte do documento. Podem ser combinados vários módulos numa biblioteca.

Pode copiar ou mover subs, funções, módulos e bibliotecas de um ficheiro para outro utilizando a caixa de diálogo Macro.