Funções de texto

Esta secção contém descrições das funções de texto.

Para aceder a este comando...

Inserir - Função - Categoria Texto


REGEX

Procura e extrai ou, opcionalmente, substitui texto usando de expressões regulares.

SERVIÇOWEB

Devolve os dados de um serviço web, através do seu URL.

FILTRARXML

Devolve os dados específicos do conteúdo XML utilizando um XPath.

CODIFICAÇÃOURL

Devolve uma cadeia com codificação URL.

ASC

A função ASC converte caracteres ASCII e Katakana de largura completa em caracteres com metade da largura. Devolve uma cadeia de texto.

Consulte https://wiki.documentfoundation.org/Calc/Features/JIS_and_ASC_functions para ver a tabela de conversões.

Sintaxe

ASC("texto")

texto é o texto que inclui os caracteres a serem convertidos.

Consulte igualmente a função JIS.

JIS

A função JIS converte caracteres ASCII e Katakana com metade da largura em caracteres de largura completa. Devolve uma cadeia de texto.

Consulte https://wiki.documentfoundation.org/Calc/Features/JIS_and_ASC_functions para ver a tabela de conversões.

Sintaxe

JIS("texto")

texto é o texto que inclui os caracteres a serem convertidos.

Consulte igualmente a função ASC.

ÁRABE

Calcula o valor de um numeral romano. O valor deve situar-se entre 0 e 3999.

Sintaxe

ÁRABE("texto")

texto é o texto que representa um número romano.

Exemplo

=ÁRABE("MXIV") devolve 1014

=ÁRABE("MMII") devolve 2002

MAIÚSCULAS

Coloca a cadeia especificada no campo texto em maiúsculas.

Sintaxe

MAIÚSCULAS("texto")

texto são as letras minúsculas que pretende converter em maiúsculas.

Exemplo

=MAIÚSCULAS("Bom dia") resulta em BOM DIA.

CONCATENAR

Combina várias cadeias de texto numa única cadeia.

Sintaxe

CONCATENATE(String 1 [; String 2 [; … [; String 255]]])

String 1[; String 2][; … ;[String 255]] are strings or references to cells containing strings.

Exemplo

=CONCATENAR("Bom ";"dia ";"Dona ";"Joana") devolve: Bom dia Dona Joana.

EXATO

Compara duas cadeias de texto e devolve VERDADEIRO se forem idênticas. Esta função diferencia maiúsculas e minúsculas.

Sintaxe

EXATO("texto1"; "texto2")

texto1 refere-se ao primeiro texto a comparar.

texto2 é o segundo texto a comparar.

Exemplo

=EXATO(" microsistemas";" Microsistemas") devolve FALSO.

UNICARÁT

Converte o número de um código num carácter ou letra Unicode.

Sintaxe

UNICARÁT(número)

Exemplo

=UNICARÁT(169) devolve o carácter de Copyright ©.

tip

Consulte também a função UNICODE().


DECIMAL

Converte texto com caracteres de um sistema numérico para um número inteiro positivo na base da raiz especificada. A raiz tem de se encontrar no intervalo entre 2 e 36. Os espaços e tabulações são ignorados. O campo Texto não diferencia maiúsculas de minúsculas.

Se a raiz for 16, um x, X, 0x ou 0X à esquerda da sequência ou um h ou H à direita serão ignorado. Se a raiz for 2, será ignorado qualquer b ou B à direita da sequência. Quaisquer outros caracteres que não pertençam ao sistema numérico geram erro.

Sintaxe

DECIMAL("texto"; base_numérica)

texto é o texto a ser convertido. Para diferenciar entre um número hexadecimal, tal como A1, e a referência à célula A1, tem de colocar o número entre aspas, por exemplo, "A1" ou "FACE".

base_numérica indica a base numérica do sistema. Pode ser qualquer número inteiro positivo entre 2 e 36.

Exemplo

=DECIMAL("17";10) devolve 17.

=DECIMAL("FACE";16) devolve 64206.

=DECIMAL("0101";2) devolve 5.

MINÚSCULAS

Converte todas as letras maiúsculas em minúsculas num determinado texto.

Sintaxe

MINÚSCULAS("texto")

texto é o texto a ser convertido.

Exemplo

=MINÚSCULAS("Sol") resulta em sol.

MOEDA

Converte um número de um formato monetário, arredondado às casas decimais especificadas. No campo valor introduza o número a ser convertido para o formato monetário. Opcionalmente, pode introduzir o número de casas decimais no campo casas_decimais. Se não especificar qualquer valor, todos os números mostrados terão duas casas decimais.

Pode estabelecer o formato monetário nas definições do sistema.

Sintaxe

DOLLAR(Value [; Decimals])

valoré um número, uma referência a uma célula com um número ou a uma fórmula que devolve um número.

casas_decimais é o número opcional de casas decimais.

Exemplo

=MOEDA(255) devolve 255,00 €.

=MOEDA(367,456;2) devolve 367,46 €. Utilize o separador decimal que corresponde à definição de configuração regional atual.

TEXTO.BAHT

Converte um número em texto tailandês, incluindo os nomes da moeda tailandesa.

Sintaxe

TEXTO.BAHT(número)

número corresponde a qualquer número. "Baht" será anexado à parte inteira do número, e "Satang" será anexado à parte decimal.

Exemplo

=TEXTO.BAHT(12,65) devolve uma cadeia em caracteres tailandeses com o significado "Doze Baht e sessenta e cinco Satang".

BASE

Converte um número inteiro positivo para uma base especificada, com o resultado a se mostrado como texto a partir do sistema de numeração. Utilizam-se os dígitos 0-9 e as letras A-Z.

Sintaxe

BASE(Number; Radix [; MinimumLength])

número é o número inteiro positivo a ser convertido.

base_numérica indica a base numérica do sistema. Pode ser qualquer número inteiro positivo entre 2 e 36.

comp_mínimo (opcional) determina o comprimento mínimo da sequência de caracteres criada. Se o texto for mais pequeno do que o comprimento mínimo indicado, são adicionados zeros à esquerda da cadeia.

Exemplo

=BASE(17;10;4) devolve 0017 no sistema decimal.

=BASE(17;2) devolve 10001 no sistema binário.

=BASE(255;16;4) devolve 00FF no sistema hexadecimal.

CARÁCT

Converte um número num carácter de acordo com a tabela de código ativa. O número pode ser um inteiro com dois ou três dígitos.

Os códigos superiores a 127 poderão depender do mapa de caracteres do sistema (por exemplo iso-8859-1, iso-8859-2, Windows-1252, Windows-1250) e, por este motivo, poderão não ser portáteis.

Sintaxe

CARÁCT(número)

número corresponde a um número entre 1 e 255 que representa o valor do código do carácter.

Exemplo

=CARÁCT(100) devolve o carácter d.

="abc" & CARÁCT(10) & "def" insere um novo carácter de linha na cadeia.

ROMANO

Converte um número num numeral romano. O valor deve situar-se entre 0 e 3999; o modo pode ser um número inteiro entre 0 e 4.

Sintaxe

ROMAN(Number [; Mode])

número é o número que se pretende converter em números romanos.

modo (opcional) indica o grau de simplificação. Quanto maior for o valor, maior será a simplificação do número romano.

Exemplo

=ROMANO(999) devolve CMXCIX

=ROMANO(999;0) devolve CMXCIX

=ROMANO (999;1) devolve LMVLIV

=ROMANO(999;2) devolve XMIX

=ROMANO(999;3) devolve VMIV

=ROMANO(999;4) devolve IM

VALOR

Converte uma cadeia num número.

Sintaxe

VALOR("texto")

texto é o texto a ser convertido num número.

Exemplo

=VALOR("4321") devolve 4321.

TEXTO

Converts a value into text according to a given format.

Sintaxe

TEXT(Value; Format)

Value is the value (numerical or textual) to be converted.

formato é o texto que define o formato. Utilize separadores decimais e de milhares de acordo com a definição de idioma do formato da célula.

Exemplo

=TEXTO(12,34567;"###.##") devolve o texto 12,35

=TEXTO(12,34567;"000,00") devolve o texto 012,35

=TEXT("xyz";"=== @ ===") returns the text === xyz ===

tip

Consulte também Códigos de formato numérico: códigos de formato numérico personalizados definidos pelo utilizador.


REPT

Copia uma cadeia de caracteres um determinado número de vezes.

Sintaxe

REPT("texto"; número)

texto é o texto a ser repetido.

número é o número de repetições.

O resultado pode ter um máximo de 255 caracteres.

Exemplo

=REPT("Bom dia";2) devolve Bom diaBom dia.

PROCURAR

Devolve a posição de um segmento de texto dentro de uma cadeia de caracteres. É possível definir o início da procura, como opção. O texto de procura pode ser um número ou qualquer cadeia de caracteres. A procura não diferencia maiúsculas e minúsculas. Se o texto não for encontrado, devolve o erro 519 (#VALOR).

Nas pesquisas pode utilizar caracteres universais e expressões regulares. Com as expressões regulares ativadas, pode inserir "all.*", por exemplo, para encontrar a primeira ocorrência de "all" seguida de qualquer outro carácter. Se quiser pesquisar por um texto que também é uma expressão regular, deve preceder cada carácter com "\"ou incluir o texto entre \Q...\E. Pode ativar a avaliação de caracteres universais ou expressões regulares em - LibreOffice Calc - Calcular.

warning

Ao usar funções onde um ou mais argumentos são textos que representem uma expressão regular, a primeira tentativa é de converter o texto do critério em número. Por exemplo, ".0" se converterá em 0.0 e assim por diante. Se tiver sucesso, a verificação não será por expressão regular, mas por conversão numérica. Contudo, se mudar de configuração regional e o separador decimal não for o ponto, a expressão regular será utilizada. Para forçar a avaliação da expressão regular em vez de uma expressão numérica, utilize uma expressão que não possa ser confundida com um número como, por exemplo, .[0]" ou ".\0" or mesmo "(?i).0".


Sintaxe

SEARCH("FindText"; "Text" [; Position])

texto_a_localizar é o texto que deve ser procurado.

texto é o texto onde a procura será realizada.

posição (opcional) é a posição no texto onde a procura deve começar.

Exemplo

=PROCURAR(54;998877665544) devolve 10.

LEFTB

Devolve número especificado de caracteres no início de uma cadeia de texto, baseado no número de bytes especificados.

tip

Esta função está disponível desde o LibreOffice 4.2.


Sintaxe

LEFTB("Text" [; Number_bytes])

texto é a cadeia de texto cujas letras iniciais pretende determinar.

número (opcional) especifica o número de caracteres a devolver. Se omisso, devolve 1 carácter.

Exemplo

ESQUERDAB("中国";1) devolve " " (1 byte é apenas meio carácter DBCS e a função devolve um espaço vazio).

ESQUERDAB("中国";2) devolve "中" (2 bytes são um carácter completo DBCS).

ESQUERDAB("中国";3) devolve "中 " (3 bytes são um carácter e meio DBCS; o último carácter devolvido é um espaço vazio).

ESQUERDAB("中国";4) devolve "中国" (4 bytes são dois caracteres DBCS completos).

ESQUERDAB("office";3) devolve "off" (3 caracteres não DBCS, sendo cada um constituído por 1 byte).

NÚM.CARACT

Devolve o comprimento de uma cadeia, incluindo os espaços.

Sintaxe

NÚM.CARACT("texto")

texto é o texto cujo comprimento se pretende determinar.

Exemplo

=NÚM.CARACT("Boa tarde") devolve 9.

=NÚM.CARACT(12345,67) devolve 8.

UNICODE

Devolve o código numérico correspondente ao primeiro carácter Unicode numa cadeia de texto.

Sintaxe

UNICODE("texto")

Exemplo

=UNICODE("©") devolve o número Unicode 169 para o carácter de Copyright.

tip

Consulte também a função UNICARÁT()


LENB

Devolve o número de bytes utilizado para representar os carateres numa cadeia de texto.

tip

Esta função está disponível desde o LibreOffice 4.2.


Sintaxe

NÚM.CARACTB("texto")

texto é o texto cujo comprimento se pretende determinar.

Exemplo

NÚM.CARACTB("中") devolve 2 (1 carácter DBCS constituído por 2 bytes).

NÚM.CARACTB("中国") devolve 4 (2 caracteres DBCS, sendo cada um constituído por 2 bytes).

NÚM.CARACTB("office") devolve 6 (6 caracteres não DBCS, sendo cada um constituído por 1 byte).

=NÚM.CARACTB("Boa tarde") devolve 9.

=NÚM.CARACTB(12345,67) devolve 8.

ESQUERDA

Devolve o primeiro carácter ou caracteres de um texto.

Sintaxe

LEFT("Text" [; Number])

texto é o texto em relação ao qual se pretende determinar as palavras parciais iniciais.

número (opcional) especifica o número de caracteres do texto inicial. Se este parâmetro não estiver definido, é devolvido apenas um carácter.

Exemplo

=ESQUERDA("libre";3) devolve “lib”.

DIREITA

Devolve o último carácter ou caracteres de um texto.

Sintaxe

RIGHT("Text" [; Number])

texto é o texto em relação ao qual se pretende determinar a parte à direita.

número (opcional) é o número de caracteres na parte direita do texto.

Exemplo

=DIREITA("Sol";2) devolve ol.

RIGHTB

Devolve o último caráter ou carateres numa cadeia de texto, baseado no número de bytes especificados.

tip

Esta função está disponível desde o LibreOffice 4.2.


Sintaxe

RIGHTB("Text" [; Number_bytes])

texto é a cadeia de texto cujos caracteres finais pretende determinar.

número (opcional) especifica o número de caracteres a devolver. Se omisso, devolve 1 carácter.

Exemplo

DIREITAB("中国";1) devolve " " (1 byte é apenas meio carácter DBCS e a função devolve um espaço vazio).

DIREITAB("中国";2) devolve "国" (2 bytes são um carácter completo DBCS).

DIREITAB("中国";3) devolve " 国" (3 bytes são um carácter e meio DBCS; o primeiro carácter devolvido é um espaço vazio).

DIREITAB("中国";4) devolve "中国" (4 bytes são dois caracteres DBCS completos).

DIREITAB("office";3) devolve "ice" (3 caracteres não DBCS, sendo cada um constituído por 1 byte).

CÓDIGO

Devolve um código numérico correspondente ao primeiro carácter de uma cadeia.

Sintaxe

CÓDIGO("texto")

texto é o texto em relação ao qual se pretende encontrar o código do primeiro carácter.

Os códigos superiores a 127 poderão depender do mapa de caracteres do sistema (por exemplo iso-8859-1, iso-8859-2, Windows-1252, Windows-1250) e, por este motivo, poderão não ser portáteis.

Exemplo

=CÓDIGO("Helsínquia") devolve 72, =CÓDIGO("hieroglífico") devolve 104.

note

O código utilizado não corresponde ao ASCII, mas à tabela de código que está carregada.


FIXA

Devolve um número como texto para um número especificado de casas decimais e separador de milhares opcionais.

Sintaxe

FIXED(Number; Decimals [; NoThousandsSeparators])

número é o número a ser formatado.

casas_decimais refere-se ao número de casas decimais a mostrar.

sem_separador_milhares (opcional) determina se a separador de milhares é utilizado. Se o parâmetro corresponder a um número diferente de 0, o separador de milhares é suprimido. Se o parâmetro for igual a 0 ou se omisso, será mostrado o separador de milhares da configuração regional atual.

Exemplo

=FIXA(1234567,89;3) devolve 1 234 567,890 como cadeia de texto.

=FIXA(1234567,89;3;1) 1234567,890 como uma cadeia de texto.

MIDB

Devolve um número específico de carateres de uma cadeia de texto, começando na posição que especificar, com base no número de bytes especificado.

tip

Esta função está disponível desde o LibreOffice 4.2.


Sintaxe

EXT.TEXTOB("texto"; posição_inicial; número)

texto é o texto que contém os caracteres a extrair.

posição_inicial especifica a posição do primeiro carácter a determinar.

número especifica o número de caracteres a devolver. Se omisso, devolve 1 carácter.

Exemplo

EXT.TEXTOB("中国";1;0) devolve "" (0 bytes são sempre uma cadeia vazia).

EXT.TEXTOB("中国";1;1) devolve " " (1 byte é apenas meio carácter DBCS e a função devolve um espaço vazio).

EXT.TEXTOB("中国";1;2) devolve "中" (2 bytes são um carácter completo DBCS).

EXT.TEXTOB("中国";1;3) devolve "中 " (3 bytes são um carácter e meio DBCS; o último carácter devolvido é um espaço vazio).

EXT.TEXTOB("中国";1;4) devolve "中国" (4 bytes são dois caracteres DBCS completos).

EXT.TEXTOB("中国";2;1) devolve " " (o byte na posição 2 não está no início de um carácter de uma cadeia DBCS e a função devolve um espaço vazio).

EXT.TEXTOB("中国";2;2) devolve " " (o byte na posição 2 aponta para a última metade do primeiro carácter na cadeia DBCS; os dois bytes solicitados constituem o último byte do primeiro carácter e a primeira metade do segundo carácter na cadeia e a função devolve dois espaços vazios).

EXT.TEXTOB("中国";2;3) devolve " 国" (o byte na posição 2 não está no início de um carácter na cadeia DBCS e a função devolve um espaço vazio na posição 2).

EXT.TEXTOB("中国";3;1) devolve " " (o byte na posição 3 está no início de um carácter na cadeia DBCS, mas 1 byte é apenas metade de um carácter DBCS e a função devolve um espaço vazio).

EXT.TEXTOB("中国";3;2) devolve "国" (o byte na posição 3 está no início de um carácter na cadeia DBCS, e 2 bytes constituem um carácter DBCS).

EXT.TEXTOB("office";2;3) devolve "ffi" (o byte na posição 2 está no início de um carácter numa cadeia que não é DBCS, e 3 bytes de uma cadeia não DBCS constituem 3 caracteres).

EXT.TEXTO

Devolve uma cadeia de texto de um texto. Os parâmetros especificam a posição inicial e o número de caracteres.

Sintaxe

EXT.TEXTO("texto"; posição_inicial; número)

texto é o texto que contém os caracteres a extrair.

posição_inicial é a posição do primeiro carácter do texto a extrair.

número especifica o número de caracteres na parte do texto.

Exemplo

=EXT.TEXTO("escritório";2;2) devolve sc.

LOCALIZAR

Devolve uma cadeia de texto dentro de uma outra cadeia. Pode também definir onde pretende iniciar a procura. O termo de procura pode ser um número ou qualquer cadeia de caracteres. A procura diferencia maiúsculas e minúsculas.

Sintaxe

FIND("FindText"; "Text" [; Position])

texto_a_localizar refere-se ao texto a procurar.

texto é o texto onde a procura é realizada.

posição (opcional) é a posição no texto em que a procura é iniciada.

Exemplo

=LOCALIZAR(76;998877665544) devolve 6.

T

Esta função devolve um valor se for texto ou uma cadeia de texto vazia, se o não for.

Sintaxe

T(valor)

Se valor for uma cadeia de texto ou uma referência a uma cadeia de texto, devolve essa cadeia de texto. Caso contrário, devolve uma cadeia de texto vazia.

Exemplo

=T(12345) devolve uma cadeia vazia.

=T("12345") devolve a cadeia 12345.

COMPACTAR

Remove os espaços de uma cadeia, deixando apenas um carácter de espaço entre as palavras.

Sintaxe

COMPACTAR("texto")

texto é o texto em que os espaços serão removidos.

Exemplo

COMPACTAR(" Olá mundo ") devolve Olá mundo, sem os espaços antes e depois do texto e com apenas um espaço entre as palavras.

SUBSTITUIR

Substitui parte de uma cadeia por outra cadeia. Esta função pode ser utilizada para substituir caracteres e/ou números (automaticamente convertidos em texto). O resultado da função é sempre mostrado como texto. Se quiser executar mais cálculos com um número que foi substituído por texto, tem que converter o texto em número utilizando a função VALOR.

Qualquer texto que contenha números deve ser colocado entre aspas se não pretender que seja interpretado como um número e automaticamente convertido em texto.

Sintaxe

SUBSTITUIR("texto"; posição; tamanho; "novo_texto")

texto é o texto no qual uma parte será substituída.

posição é a posição no texto onde a substituição irá começar.

tamanho é o número de caracteres em texto a serem substituídos.

novo_texto é o texto que substitui o texto.

Exemplo

=SUBSTITUIR("1234567";1;1;"444") devolve "444234567". Um carácter na posição 1 é substituído pelo novo_texto completo.

SUBST

Substitui texto anterior com texto novo numa cadeia.

Sintaxe

SUBSTITUTE("Text"; "SearchText"; "NewText" [; Occurrence])

texto é o texto no qual se pretende trocar os segmentos de texto.

texto_antigo é o segmento de texto que se pretende substituir (um número de vezes).

novo_texto é o texto que deve substituir o segmento de texto.

ocorrência (opcional) indica a ocorrência do texto de procura que deve ser substituída. Se este parâmetro não estiver presente, todas as ocorrências do texto de procura são substituídas.

Exemplo

=SUBST("123123123";"3";"abc") devolve 12abc12abc12abc.

=SUBST("123123123";"3";"abc";2) devolve 12312abc123.

LIMPARB

Todos os caracteres não imprimíveis são eliminados da cadeia.

Sintaxe

LIMPARB("texto")

texto é o texto do qual se pretende remover todos os caracteres não imprimíveis.

INICIAL.MAIÚSCULA

Transforma as primeiras letras de todas as palavras numa cadeia em maiúsculas.

Sintaxe

INICIAL.MAIÚSCULA("texto")

texto é o texto a ser convertido.

Exemplo

=PROPER("the document foundation") returns The Document Foundation.

Necessitamos da sua ajuda!