Макрос для сравнения

Автор dimmon777, 27 июля 2016, 11:15

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

dimmon777

Добрый день!  Помогите реализовать макрос. 
Если значение в ячейке больше 1000, то выполняются другие действия.
oRange= thisComponent.Sheets(0).getCellRangeByName(A1)
T=1000
S=oRange.getString()
if String(S) >String(T)
......

Если значение в ячейке  А1 больше 64500, то вызывает ошибку: неправильный вызов процедуры!  Что я делаю не так?  :'( Помогите пожалуйста!

rami

Во-первых, адрес ячейки A1 нужно брать в кавычки:oRange= thisComponent.Sheets(0).getCellRangeByName("A1")
Во-вторых, функция String(n,s) принимает два аргумента: s — символ и n — число повторений этого символа. Результатом String(1000) будет пустая строка из 1000 элементов. В Бейсике строка ограничена по длине ~64000 символов, даже если она пустая. В данном примере вы сравниваете две пустые строки разной длины. ???

dimmon777

#2
Цитата: rami от 27 июля 2016, 12:02
Во-первых, адрес ячейки A1 нужно брать в кавычки:oRange= thisComponent.Sheets(0).getCellRangeByName("A1")
В данном примере вы сравниваете две пустые строки разной длины. ???

Пишу с телефона,  кавычки не указал.
Макрос работает,  но что касается больших чисел,  то выскакивает ошибка.

PS походу уже разобрался,  нужно было указать S= oRange.getValue()