Komentáře Programovanie makier v LibreOffice: Formátovanie čísel (2) – CSng, CDbl, CBool

user avatar lp.
Odpovědět
Programovanie makier v LibreOffice: Formátovanie čísel (2) – CSng, CDbl, CBool
24. 11. 2017, 08:50:24
Add "překvapení", že CSng, CDbl "neumí" číslo z řetězce.

Tyto (C-)funkce pracují nastaveným prostředím (oddělovače, datumy).

podle:
https://help.libreoffice.org/3.5/Basic/CSng_Function_Runtime/cs

"Parametry:

Výraz: Řetězec nebo číselný výraz, který chcete převést. Pro převod řetězce musíte číslo zadat jako normální text ("123.5") ve formátu, jaký používá váš operační systém."

Tj. CSng("1212,455") funguje podle očekávání.

Z tohoto d;vodu je poněkud nestandardní chování CBool (která má mimochodem i další syntaxi)

Podle nápovědy v tomto případě je syntaxe CBool(číslo).
To, jak má zacházet s řetězci nápověda neuvádí, očekával bych chybu). CBool se ovšem nejprve pokouší převést text na číslo. Bohužel hledá číslo v angličtině:

CBool("0.000") = false
CBool("1.000") = true
CBool("0,000") = chyba
 
 
woo jaw demo hz