Ver rotina das Funções do LibreOffice

Ola @ohallot, esta e para ti…

Existe maneira de acessar as rotinas das Funções do LibreOffice Calc.

Só para xeretar como é escrita.

Obrigado

1 Like

Este é um exemplo dos arquivos a serem editados quando se implementa uma nova função. Clique nos arquivos para ver o que o programador fez.

https://gerrit.libreoffice.org/c/core/+/41900

Olá, boa tarde. Qual a fórmula para escrever uma data por extenso?
Exemplo: Na célula A1 tem a data 30/07/2021
Na célula B1 precisará constar trinta de julho de dois mil e vinte e um.

Ola @Mcf, segue uma sugestão, não é bonita mas funciona, razoavelmente.

=SEERRO(ESCOLHER(DIA(A1);"um ";"dois ";"tres ";"quatro ";"cinco ";"seis ";"sete ";"oito ";"nove ";"dez ";"onze ";"doze ";"treze ";"quatorze ";"quinze ";"desesseis ";"desessete ";"desoito ";"desenove ";"vinte ";"vinte e um ";"vinte e dois ";"vinte e tres ";"vinte e quatro ";"vinte e cinco ";"vinte e seis ";"vinte e sete ";"vinte e oito ";"vinte e nove ";"trinta ");"tinta e um ")&"de "&ESCOLHER(MÊS(A1);"janeiro ";"fevereiro ";"março ";"abril ";"maio ";"junho ";"julho ";"agosto ";"setembro ";"outubro ";"novembro ";"dezembro ")&"de "&ESCOLHER(ESQUERDA(ANO(A1);2);"cento ";"duzentos ";"tresentos ";"quatrocentos ";"quinhentos ";"seisentos ";"setecentos ";"oitocentos ";"novecentos ";"mil ";"mil e cem ";"mil e duzentos ";"mil e trezentos ";"mil e quatorcentos ";"mil e quinhentos ";"mil e seiscentos ";"mil e setecentos ";"mil e oitocentos ";"mil e novecentos ";"dois mil ";"dois mil e cem ";"dois mil e duzentos ";"dois mil e trezentos";"dois mil e quatrocentos";"dois mil e quinhentos ";"dois mil e seiscentos ";"dois mil e setecentos ";"dois mil e oitocentos ";"dois mil e novecentos ";"tres mil ")&SE(DIREITA(ANO(A1);2)="00";"";" e "&SEERRO(SEERRO(SEERRO(ESCOLHER(DIREITA(ANO(A1);2);"um ";"dois ";"tres ";"quatro ";"cinco ";"seis ";"sete ";"oito ";"nove ";"dez ";"onze ";"doze ";"treze ";"quatorze ";"quinze ";"desesseis ";"desessete ";"desoito ";"desenove";"vinte";"vinte e um";"vinte e dois";"vinte e tres";"vinte e quatro";"vinte e cinco";"vinte e seis";"vinte e sete";"vinte e oito";"vinte e nove";"trinta");ESCOLHER(DIREITA(ANO(A1);2)-30;"trinta e um ";"trinta e dois ";"trinta e tres ";"trinta e quatro ";"trinta e cinco ";"trinta e seis ";"trinta e sete ";"trinta e oito ";"trinta e nove ";"quarenta ";"quarenta e um ";"quarenta e dois ";"quarenta e tres ";"quarenta e quatro ";"quarenta e cinco ";"quarenta e seis ";"quarenta e sete ";"quarenta e oito ";"quarenta e nove ";"cincoenta ";"cincoenta e um ";"cincoenta e dois ";"cincoenta e tres ";"cincoenta e quatro ";"cincoenta e cinco ";"cincoenta e seis ";"cincoenta e sete ";"cincoenta e oito ";"cincoenta e nove ";"secenta "));ESCOLHER(DIREITA(ANO(A1);2)-60;"secenta e um ";"secenta e dois ";"secenta e tres ";"secenta e quatro ";"secenta e cinco ";"secenta e seis ";"secenta e sete ";"secenta e oito ";"secenta e nove ";"setenta ";"setenta e um ";"setenta e dois ";"setenta e tres ";"setenta e quatro ";"setenta e cinco ";"setenta e seis ";"setenta e sete ";"setenta e oito ";"setenta e nove ";"oitenta ";"oitenta e um ";"oitenta e dois ";"oitenta e tres ";"oitenta e quatro ";"oitenta e cinco ";"oitenta e seis ";"oitenta e sete ";"oitenta e oito ";"oitenta e nove ";"noventa "));ESCOLHER(DIREITA(ANO(A1);2)-90;"noventa e um ";"noventa e dois ";"noventa e tres ";"noventa e quatro ";"noventa e cinco ";"noventa e seis ";"noventa e sete ";"noventa e oito ";"noventa e nove ")))

Você pode ter a data de uma célula expressa na forma extensa com o seguinte código de formato:

[NatNum12 AAAA=cardinal, D=cardinal]D "de" MMMM "de" AAAA

Se colocar este formato na célula B1 e fizer a formula em B1 "=A1 ", então a célula A1 mostrará “30/6/21” e a célula B1 mostrará “trinta de junho de dois mil e vinte e um”

1 Like