Usar variábeis
A continuación descrÃbese o uso básico das variábeis en LibreOffice Basic.
Convencións de nomeamento das variábeis
O nome dunha variábel pode consistir nun máximo de 255 caracteres. O primeiro carácter do nome dunha variábel debe ser unha letra A-Z ou a-z. Tamén se poden empregar números no nome dunha variábel, mais os sÃmbolos de puntuación e os caracteres especiais non están permitidos, coa excepción do trazo de subliñado ou guión baixo («_»). No Basic do LibreOffice os identificadores de variábeis non diferencian entre maiúsculas e minúsculas. Os nomes das variábeis poden conter espazos, mais neste caso deben ir metidas entre corchetes.
Exemplos de identificadores de variábeis:
MyNumber=5 |
Correcto |
MyNumber5=15 |
Correcto |
MyNumber_5=20 |
Correcto |
My Number=20 |
Incorrecto, as variábeis que conteñen espazos deben situarse entre corchetes |
[My Number]=12 |
Correcto |
Déjà Vu=25 |
Incorrecto, non se permiten caracteres especiais |
5MyNumber=12 |
Incorrecto, as variábeis non poden comezar por un número |
Number,Mine=12 |
Incorrecto, non se permiten sinais de puntuación |
Declaración de variábeis
No Basic do LibreOffice non hai que declarar as variábeis explicitamente. Pódese realizar unha declaración dunha variábel coa declaración Dim. Pódese declarar máis de unha variábel por vez, separando os nomes con vÃrgulas. Para definir o tipo de variábel, empregue un sÃmbolo de declaración de tipo a continuación do nome ou empregue a palabra chave apropiada.
Exemplos de declaracións de variábeis:
Dim a$ |
Declara a variábel «a» como String (cadea) |
Dim a As String |
Declara a variábel «a» como String (cadea) |
Dim a$, b As Integer |
Declara unha variábel como String (cadea) e outra como Integer (enteiro) |
Dim c As Boolean |
Declara c como variábel lóxica que é VERDADEIRA ou FALSA |
Ao declarar variábeis, é moi importante que utilice sempre o carácter de declaración de tipo, mesmo que se usase na declaración en vez dunha palabra chave. Deste modo, as seguintes instrucións non son válidas:
Dim a$ |
Declara «a» como String (cadea) |
a="TestString" |
Ausencia de declaración de tipo: «a$=» |

Despois de declarar unha variábel como dun tipo especÃfico, non pode declarala de novo co mesmo nome e un tipo diferente!
Obrigatoriedade das declaracións de variábeis
Use a seguinte orde para forzar a declaración de variábeis:
Option Explicit
The Option Explicit statement has to be the first line in the module, before the first SUB. Generally, only arrays need to be declared explicitly. All other variables are declared according to the type-declaration character, or - if omitted - as the default type Single.
Tipos de variábeis
LibreOffice Basic admite catro clases de variábeis:
-
As variábeis numéricas poden conter valores numéricos. Algunhas variábeis empréganse para almacenar números grandes ou pequenos e outras empréganse para números de vÃrgula flutuante ou números fraccionarios.
-
As variábeis de cadea conteñen cadeas de caracteres.
-
As variábeis lóxicas conteñen ora o valor VERDADEIRO ora o FALSO.
-
As variábeis de obxecto poden almacenar obxectos de diversos tipos, como táboas e documentos dentro dun documento.
Variábeis enteiras
As variábeis enteiras comprenden o intervalo de -32768 a 32767. Se atribúe un valor de punto flotante a unha variábel de número enteiro, os decimais arredóndanse ao número enteiro máis próximo. As variábeis enteiras calcúlanse rapidamente nos procedementos e son apropiadas como variábeis contador en lazos. Esas variábeis só requiren dous bytes de memoria. O carácter de declaración de tipo desas variábeis é o «%».
Dim Variable%
Dim Variable As Integer
Variábeis enteiras longas
As variábeis enteiras longas comprenden o intervalo -2147483648 a 2147483647. Se atribúe un valor de punto flotante a unha variábel de número enteiro longo, os decimais arredóndanse ao número enteiro máis próximo. As variábeis enteiras longas calcúlanse rapidamente nos procedementos e son apropiadas para contadores por lazos con valores maiores. Esas variábeis requiren catro bytes de memoria. O carácter de declaración de tipo desas variábeis é o «&».
Dim Variable&
Dim Variable As Long
Variábeis decimais
As variábeis decimais poden tomar números positivos, negativos ou cero. A precisión chega aos vinte e nove dÃxitos.
Pódense empregar sÃmbolos de máis (+) ou menos (-) para os números decimais (con ou sen espazos).
Se un número decimal for asignado a unha variábel enteira, o Basic do LibreOffice arredonda o número por exceso ou por defecto.
Variábeis simples
As variábeis simples conteñen valores positivos ou negativos entre 3.402823 x 10E38 e 1.401298 x 10E-45. Son variábeis de punto flotante onde a precisión decimal diminúe cando a parte non decimal aumenta. Son apropiadas para cálculos matemáticos de precisión mediana. Os cálculos precisan de máis tempo que as variábeis enteiras aÃnda que son máis rápidos que con variábeis duplas. As variábeis simples requiren 4 bytes de memoria. O carácter de declaración de tipo é «!».
Dim Variable!
Dim Variable As Single
Variábeis duplas
As variábeis duplas conteñen valores positivos ou negativos entre 1.79769313486232 x 10E308 e 4.94065645841247 x 10E-324. Son variábeis de punto flotante onde a precisión decimal diminúe cando a parte non decimal aumenta. Son útiles para cálculos precisos. Estes cálculos demoran máis que coas variábeis simples. As variábeis duplas requiren 8 bytes de memoria. O carácter de declaración de tipo é «#».
Dim Variable#
Dim Variable As Double
Variábeis monetarias
As variábeis monetarias almacénanse internamente como números de 64 bits (8 Bytes) e móstranse como un número decimal fixo con 15 dÃxitos non decimais e 4 decimais. Os valores varÃan desde -922337203685477.5808 a +922337203685477.5807. Úsanse para calcular valores monetarios con alta precisión. O carácter de declaración de tipo é «@».
Dim Variable@
Dim Variable As Currency
Variábeis de cadea
As variábeis de cadea almacenan cadeas de ata 65.535 caracteres. Cada carácter almacénase segundo o seu correspondente valor Unicode. Son útiles para o procesamento de textos dentro de programas e para o almacenamento temporal de caracteres non imprimÃbeis de ata 64 Kbytes como máximo. A memoria esixida para o almacenamento destas variábeis depende do número de caracteres que conteña. O carácter de declaración de tipo é o «$».
Dim Variable$
Dim Variable As String
Variábeis lóxicas
As variábeis lóxicas almacenan só un destes valores: VERDADEIRO (TRUE) ou FALSO (FALSE). Un número 0 avalÃase como FALSO, mestres que os outros valores avalÃanse como VERDADEIRO.
Dim Variable As Boolean
Variábeis de data
As variábeis de data poden conter só valores de data e hora almacenados nun formato interno. Os valores atribuÃdos ás variábeis de tipo Data con Dateserial, Datevalue, Timeserial ou Timevalue son convertidas automaticamente para o formato interno. As variábeis de tipo Data son convertidas para números normais utilizando a función Day, Month, Year ou Hour, Minute, Second. O formato interno permite unha comparación de valores de data/hora calculando a diferenza entre dous números. Esas variábeis pode ser declaradas apenas coa palabra chave Date.
Dim Variable As Date
Valores iniciais das variábeis
Tras declarar a variábel, o seu valor defÃnese automaticamente como «Nulo». Teña en conta as seguintes convencións:
As variábeis numéricas reciben automaticamente o valor «0» asà que son declaradas.
As variábeis de data reciben internamente o valor de 0; equivale a converter o valor en «0» coa función Day, Month, Year ou Hour, Minute, Second.
As variábeis de cadea reciben unha cadea baleira («») cando son declaradas.
Matrices
LibreOffice Basic recoñece matrices unidimensionais ou multidimensionais definidas por un tipo de variábel especificado. Son útiles para editar listas e táboas en programas. Pode acceder a elementos individuais dunha matriz por medio dun Ãndice numérico.
As matrices teñen que ser declaradas coa declaración Dim. Existen varias maneiras de definir o intervalo do Ãndice dunha matriz:
Dim Text$(20) |
21 elementos numerados de 0 a 20 |
Dim Text$(5,4) |
30 elementos (unha matriz de 6 x 5 elementos) |
Dim Text$(5 To 25) |
21 elementos numerados de 5 a 25 |
Dim Text$(-15 To 5) |
21 elementos (incluÃdo o 0), numerados de -15 a 5 |
O intervalo do Ãndice pode incluÃr tanto números positivos como negativos.
Constantes
As constantes teñen un valor fixo. DefÃnense só unha vez no programa e non poden redefinirse posteriormente:
Const ConstName=Expression