ff= ROUND(2,348;2)

Автор Vlad55515, 21 ноября 2019, 10:45

0 Пользователи и 1 гость просматривают эту тему.

Vlad55515

Кто знает, что за ошибка, пишу в макросе

ff= ROUND(2,348;2)

ругается пишет непарный скобки, уже и не знаю что делать

bigor

#1
В формулах макросов разделитель запятая, а у вас точка с запятой

ps не уверен что в макросах поддерживается round
Поддержать разработчиков LibreOffice можно можно тут, а наш форум вот тут

Yakov

#2
Надо так:

BasicLibraries.LoadLibrary("Tools")
ff=Strings.ROUND(2.348,1)

Round есть в библиотеке Strings

bigor

Цитата: Yakov от 21 ноября 2019, 11:37Round есть в библиотеке Strings
не нашел у себя такой. Ее нужно доустанавливать?
Поддержать разработчиков LibreOffice можно можно тут, а наш форум вот тут

Yakov

#4
Модуль Strings стандартный, из библиотеки Tools, только его надо подгрузить:

BasicLibraries.LoadLibrary("Tools")


bigor

Разобрался. Спасибо
Поддержать разработчиков LibreOffice можно можно тут, а наш форум вот тут

Vlad55515

Спасибо большое, за подсказку в конечном итоге получилось


BasicLibraries.LoadLibrary("Tools")
ff=Strings.ROUND(oCell1.getValue,1)

подсказали за функцию ROUND,

а ROUNDDOWN есть?

rami

Цитата: Vlad55515 от 21 ноября 2019, 18:28а ROUNDDOWN есть?
А потом вы захотите ещё кучу других функций...
Тогда уж сразу:
Sub Main
Dim serv, n
serv = createUnoService("com.sun.star.sheet.FunctionAccess")
n = serv.callFunction("ROUND", Array(12.34567, 3))       'ROUND можно заменить любую функцию CALC (и соответствующие ей параметры)
Print n
End Sub

Yakov

Цитата: Vlad55515 от 21 ноября 2019, 18:28а ROUNDDOWN есть?
есть =int()  - отбросить дробную часть

Vlad55515

Благодарю за ответ INT пробовал значение -3,65 делает -4, а хотелось бы -3

mikekaganski

С уважением,
Михаил Каганский

Vlad55515

Благодарность спасибо за все ответы, но все равно проблема, в ячейках оказались не числа а текст вида 00003,65 при всех функциях значение дает 0

bigor

Поддержать разработчиков LibreOffice можно можно тут, а наш форум вот тут

Vlad55515

Попробовал дала 365))

Vlad55515

Запятую съедает