Страница 1 из 2

Как вывести Excel формулу в SLK?

Добавлено: 12 окт 2005, 12:40
scanner
Нужно вывести вормулу, причем чтоб по ней происходил расчет средствами Excel

Например, такого содержания
=ЕСЛИ(G41="";A41;B41)

Добавлено: 12 окт 2005, 13:00
san
продолжение темы как вывести 12345678901234567890 :-D

Добавлено: 12 окт 2005, 13:15
scanner
san
а что просто написать не дает?

Добавлено: 12 окт 2005, 13:38
St.Anislav
Изучаем вот это:
http://www.tyumbit.ru/gal_forum/viewtopic.php?t=2786

Может, это поможет:
Function xlSetCellFormula(sFormula : string; RawU : longint; ColL : longint; RawD : longint; ColR : longint) : boolean;

Добавлено: 12 окт 2005, 14:35
scanner
san
Сорри. А никто не пробовал просто зайти в Excel, создать новую книгу и написать в ячейке "12345678901234567890", а потом посмотреть на содержимое. Так у меня последние нулики вышли. И галактика тут не при чем :(

Добавлено: 12 окт 2005, 15:31
WiRuc
Нечего на Эксель наезжать :grin:
Поставьте формат ячейки "Текстовой" и будет вам счастье :smile:
Автоформат-то никто не отменял...

Добавлено: 12 окт 2005, 16:29
St.Anislav
и будет вам счастье
Будет, но неполное - арифм. действия с такими ячейками, увы, невозможны...

Добавлено: 12 окт 2005, 17:21
WiRuc
St.Anislav писал(а):
и будет вам счастье
Будет, но неполное - арифм. действия с такими ячейками, увы, невозможны...
2^53 стандартная точность вычислений для многих программ. Только специализированные могут обработать большую разрядность:)

Добавлено: 12 окт 2005, 20:28
Seybukan
Slk все обсчитает, но только то что выше и левее!
Причем если при написании формы это будет строка 52, а после вывода 33, то если в исходнике поставить формулу В52, то при выводе формы будет В33.
А вот если указать В$52$ то при печати будет то же самое.

Добавлено: 12 окт 2005, 20:46
Seybukan
St.Anislav писал(а):Будет, но неполное - арифм. действия с такими ячейками, увы, невозможны...
А зачем считать данные где более 15 разрядов.
Интересно у кого-то такие обороты есть или еще чего.
Я так полагаю тут речь идет о выводе инвентарных номеров или номеров карточек или кодов классификаторов или еще чего.
Но все это же текстовая информация поэтому и выводить ее мона в тексте, так как нет над ними арифметических действий.

Добавлено: 12 окт 2005, 22:45
Diman
St.Anislav
А где dll-ки взять то?

Добавлено: 13 окт 2005, 07:40
san
Diman писал(а): А где dll-ки взять то?
поставляются с галактикой

Добавлено: 13 окт 2005, 07:45
scanner
St.Anislav писал(а):Изучаем вот это:
http://www.tyumbit.ru/gal_forum/viewtopic.php?t=2786

Может, это поможет:
Function xlSetCellFormula(sFormula : string; RawU : longint; ColL : longint; RawD : longint; ColR : longint) : boolean;
А можно примерчик использования для SLK отчетов?
Допустим вывести формулу типа ="as"+$A1

Seybukan
Slk все обсчитает, но только то что выше и левее!
Причем если при написании формы это будет строка 52, а после вывода 33, то если в исходнике поставить формулу В52, то при выводе формы будет В33.
А вот если указать В$52$ то при печати будет то же самое.
Да вот как раз с этим и столкнулся, только не все так просто. Пишу А40 и выводит А40, а пишу А4 выводит А65504. И еще при выводе ковычек двойных Excel пишет, что ошибка в формуле.

Добавлено: 13 окт 2005, 09:05
scanner
Ну вот приходиться извращаться подобным образом :???:
=ЕСЛИ(ИЛИ($A40=СИМВОЛ(94);$A40=0);СИМВОЛ(32);$B40)
и все для того чтобы избежать ковычек.

Добавлено: 13 окт 2005, 10:30
St.Anislav
А можно примерчик использования для SLK отчетов?
Допустим вывести формулу типа ="as"+$A1
xl* функции - не для SLK отчетов (к которым у меня личная неприязнь), а для построения произвольных EXCELевских с любым форматированием и т.д.