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

Re: Макросы VB в slk-отчетах

Добавлено: 20 дек 2002, 10:57
Саша Г.
И мне, если можно : AlexandrG@smw.ru
Заранее, благодарен!

Re: Макросы VB в slk-отчетах

Добавлено: 20 дек 2002, 12:31
m0p3e

Re: Макросы VB в slk-отчетах

Добавлено: 17 июн 2003, 22:13
Deinis
Судя по всему, файл отчета создается непосредственно в интерфейсе. А как можно скомпилить этот xls-файл, чтобы не пришлось в интерфейсе рисовать красивости, а можно их было нарисовать в самом xls (slk)-Файле и скомпилить его в ресурсник???
???
Если есть примеры, народ, поделитесь плиз!

Re: Макросы VB в slk-отчетах

Добавлено: 17 июн 2003, 23:56
m0p3e
Дейнис, Ты соственно о чем?
xl* функции работают напрямую с excel-eм. OLE там и прочая лабуда.
slk. Создается файл определенного формата (slk) и по окаонцанию формирования открывается ёкселем.
В чем вопрос?

Re: Макросы VB в slk-отчетах

Добавлено: 18 июн 2003, 01:50
Deinis
Думаю, мой вопрос будет понятен, если я уточню, что ни разу не делал отчета в Slk или Rtf формате. Все что я сделал в этой своей земной жизни ( ;) ) это один-единственный ard отчет, который имею желание выводить в Ёксель.
О формате slk знаю то, что в нем можно делать отчеты, просто скопировав туда построчно (по Ctrl+Ins) все, что написал в обычном текстовом файле и расставив выходные fields-ы каждый в свои ячейки с помощью "^". Тогда будет вызываться именно этот slk, то есть почти Эксель. В вышеприведенном фейсе от Bypasser видно, что xls-файл создается из самого интерфейса. А я хочу не просто его создать, а сделать там красивую шапку, красивое оформление. Это значит, что кроме функции создания на диске Ёксель-файла надо еще использовать кучу функций, которые обрамляют, раскрашивают в серый цвет то, что мне нужно и т.п. Если делать по-старинке, т.е. скопировать строки Ard-отчета в slk-файл, то там можно и обрамить и выделить и проч. И цифирки и слова разные будут выводиться в тот формат, который задан у ячеек этого файла в момент компиляции. Это я так думаю.
В этом же интерфейсе (от Bypasser), как я понимаю, ёксель-файл изначально не существует, а создается в момент работы отчета. Создается соответственно пустым потом его можно наполнять чем угодно, указывая непосредственные адреса ячеек. Ни тебе красивой шапочки, ни раскрасок никаких. Или же кроме rtf и slk можно еще и xls-файлы раскрасить, скопировать туда мой код из Ard и скомпилировать в res-файл, ? ???

Re: Макросы VB в slk-отчетах

Добавлено: 18 июн 2003, 09:16
Goblin
Деинис, раскрасить, скопировать код ты сможешь - но без толку, компилятор не поймет . Компилятор форм понимает открытые структурированные форматы RTF,SLK и текстовые(кстати, если нужны красивости с раскраской и даже картинками - то то обычную текстовую форму можно при определенном знании синтаксиса HTML переделать и просматривать в любом инет-браузере).

Вот бы полное описание функций нарыть - в DLL-ке их куча , а в доке некоторых нет :(

Re: Макросы VB в slk-отчетах

Добавлено: 18 июн 2003, 13:08
m0p3e
Дейнис.
Правильно. Файл не существует. Формируется в момент выполнения фейса. Разукрасить можно как угодно. Ну или почти как угодно. slk бедный родственник по сравнению с тем функционалом, что дают xl* функции.

Туманов О.В.
ИМХО, многие функции промежуточные.

ЗЫ Заметил что при выводе большого объема данных тормозится отчет. ( xl* ). Есть у кого-нибудь наработки? Например
26 столбцов
27000 строк
около часа. 30% заполнения формулы.

Re: Макросы VB в slk-отчетах

Добавлено: 21 ноя 2003, 09:18
GTHack
для быстрого вывода юзайте матричные функции
XLCREATEMATRIX
XLCLEARMATRIX
XLFREEMATRIX
XLSTWRITETOMATRIX
XLDOWRITETOMATRIX
XLREADFROMMATRIX
XLWRITEMATRIXTOEXCEL
XLREADMATRIXFROMEXCEL

26 столбцов
27000 строк - формирование 3 минуты
правда выводил данные не из базы, а в цикле
и красоту всякую ими не получится навести, но данные и формулы выводить советую только ими - реально раз в 10 быстрее выводится.

по поводу заготовки - кто мешает создать пустой xls файл шаблон, где и параметры страницы задать и шапку сваять - потом открыть с помощью xlCreateExcelWithTemplate и работать уже с ним (всё быстрее получится, чем эту же шапку xls функциями выводить, а параметры страницы макросами настраивать)

полным описанием ф-ий никто не разжился ?

Re: Макросы VB в slk-отчетах

Добавлено: 21 ноя 2003, 12:00
Max_Fin
Используя макросы скорость увеличивается в 1,5-2 раза, все что ты формировал за 3 минуты, сделать можно за ~1,5-2 минуты

Re: Макросы VB в slk-отчетах

Добавлено: 21 ноя 2003, 12:04
GTHack
допустим так - но если выводить данные не в цикле, как я делал для изучения скорости, а реальные данные из базы - как сюда приплести макросы ?

Re: Макросы VB в slk-отчетах

Добавлено: 21 ноя 2003, 23:43
Max_Fin
секрет фирмы - псевдокоманды, которые распознает твой макрос ;)

Re: Макросы VB в slk-отчетах

Добавлено: 23 ноя 2003, 00:27
m0p3e
Использование матрикс-функций на больших объемах данных дает ускорение в 50-150 раз. Когда получил инфу от разработчика не поверил. Когда проверил дико удивился... ;)