On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 22.09.05 14:58. Заголовок: Report from Clipper to Excel


Есть Clipper-ный отчёт с упрощенной (для внутреннего употребления) шапкой, который Clipper автоматом перегоняет в Excel. Но налоговая хочет еметь его с очень навороченной шапкой ( http://webfile.ru/533208 ).
На скорую руку склепал генерацию .html файла в стиле Excel. Работает, но прога внутри выглядит жутко, да и неудобно это клепать.
Вопрос: как к этой шапке по-эллегантнее подгрузить данные из отчёта ( путём генерации из Clipper-а какого-либо скрипта и его запуска ).

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 44 , стр: 1 2 3 All [только новые]





Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 22.09.05 15:33. Заголовок: Re:


1. можно написать в excel'е на VBA скрипт (функцию), которая загрузит данные из dbf и расставит их в нужные клетки страницы листа экселя.. или можно этот же скрипт написать vb-script (*.vbs): открыть лист, открыть dbf-таблицу, и в цикле по таблице отобрать нужные записи.. единственная проблема -- в VBA (jet ole db) криво работают индексы (я пример выложил в webfile.ru/533312)

2. можно изпользовать мою халявную прогу rec3p.exe: в программе на клиппере далаешь отчёт в текстовый файл с использованием псевдографики, табуляции, всяких межстрочных интервалов и узких шрифтов -- и вызываешь rec3p с именем файла твоего отчёта. правда, в этом случае отчёт будет распечатан, а не сохранён в эксель..

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 23.09.05 09:08. Заголовок: Re:


_sergey пишет:
цитата
можно этот же скрипт написать vb-script (*.vbs): открыть лист, открыть dbf-таблицу, и в цикле по таблице отобрать нужные записи..

Спасибо за примеры. Это то что мне и надо. Если не влом - подскажи, где взять нормальное описание объекта "Excel.Application". Просмотрел кучу док - все мура. Т.к. это офтопик - давай в мыло les@azovmash.com или ICQ (149-152-548).


Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 23.09.05 17:12. Заголовок: Re:


самое простое -- запускаешь word или excel, жмёшь alt+F11 (редактор VBA), ctrl+r, enter, пишешь название объекта, жмёшь F1. если помощь для VBA установлена (выбирается при установке офиса), то откроется то, что надо. можно ещё в MSDN опискать, или на сайте microsoft.com в разделе MSDN (должен быт такой)

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 26.09.05 10:29. Заголовок: Re:


_sergey пишет:
цитата
самое простое -- запускаешь word или excel, жмёшь alt+F11 (редактор VBA), ctrl+r, enter, пишешь название объекта, жмёшь F1.

Спасибо.
Я ведь спрашивал про НОРМАЛЬНОЕ описание.
Вопрос решен. Никому не советую идти путем *.vbs.
Clipper это делает примерно в 50 раз быстрее.

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 26.09.05 17:16. Заголовок: Re:


там (в справке VBA в excel) "родное" описание, чего такого в нём ненормального?

цитата
Вопрос решен. Никому не советую идти путем *.vbs.
Clipper это делает примерно в 50 раз быстрее.


VBA (да и вообще OLE) вставляет ячейки в страницу excel'я действительно медленно, хотя есть разные способы для ускорения, например, отключить прорисовку листа.. Интересно, как ты из прогарммы на клиппере создаёшь лист эекселя? я знаю только о создания файлов excel'я формата BIF, обычной записью бинарный данных в файл (хоть из клиппера, хотя пример я видел на паскале), но ведь тебе

les пишет:
цитата
Но налоговая хочет еметь его с очень навороченной шапкой


так что, кроме как открыть лист через OLE (или DDE, или прямой доступ к формату BIF) и изменять его содержимое -- что-то не вижу

можно ещё так поступить! заполнить буфер обмена данными (разделитель между элементами в одной строке -- табуляция, разделитель между строками -- перевод строки (chr(13)+chr(10)) ), а затем вставить всё это в нужную ячейку.. данные "правильно" распределятся по ячейкам листа! (только что пробовал). так что можно на VBA, например, считать файл, выгруженный предварительно clipper'ом, скопировать его в буфер обмена, а потом вставить в лист.


Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 27.09.05 10:09. Заголовок: Re:


_sergey пишет:
цитата
Интересно, как ты из прогарммы на клиппере создаёшь лист эекселя?

нарисовал шапку руками, довавил строку с данными, отформатировал, сохранил в формате *.html, из Clipper-а по образу и подобию дописываю нужные данные и открываю в Excel. Геморойно, но работает довольно шустро.

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 27.09.05 11:06. Заголовок: Re:


здорово, html-файлы сохраняют форматирование! правда, на office-97 не всё форматирование восстановилось при excel xp->html->excel (а именно, границы и раскраска фона ячеек)

всякими *.csv и *.txt такого не добиться! (сохранения форматирования)

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 28.09.05 10:41. Заголовок: Re:


Почему не в Харборе отчет? Харбор прекрасно работает с Excel.Основная программа на Клиппере, а некоторые отчеты делаю в небольшой проге на Харбор.К сожалению консольный Харбор Клиппер еще не догнал, поэтому полностью на Харбор не перехожу.

Спасибо: 0 
Цитата Ответить





Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 28.09.05 11:46. Заголовок: чего не хватает в Харборе?


Упомянут именно Харбор? или более продвинутый xХарбор?

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 28.09.05 11:48. Заголовок: Re:


2 Vlad04: если требуется работать в winapi или ole, то (мне) проще писать программу на с(c++) + winapi или на дельфи или на VBA.. всё равно код harbour транслируется на c++

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 28.09.05 13:39. Заголовок: Re:


Vlad04 пишет:
цитата
Харбор прекрасно работает с Excel

Сам-то проверял?
У меня в harbour на P4 2GHz через
oExcel := TOleAuto():New( "Excel.Application" )
и т.д.
отчет 14 столбцов х 1200 строк грузится в Excel около 2х минут - Clipper-e секуд 5.
_sergey пишет:
цитата
VBA (да и вообще OLE) вставляет ячейки в страницу excel'я действительно медленно

согласен на все 100

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 03.10.05 06:49. Заголовок: Re:


Сам все проверял. Имеется ввиду xХарбор.Для выгрузки больших отчетов использую библиотеку XlsRep.dll. Она упоминалась здесь на форумах.

Спасибо: 0 
Цитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 03.10.05 14:55. Заголовок: Re:


2 Vlad04: а можно посмотреть на эту xlsrep.dll? и есть ли исходники? а то интересно! там файл с отчётом заново создаётся (например, в формате BIF, что меня и интересует), или дописывается в существующий, например, в шаблон? (что с использованием только формата BIF не получится)

формат BIF тем удобен, что excel его понимает, он задокументирован, а создавать его можно как обычный двоичный DOS-файл (а не OLE-хранилице, как в случае с обычным xls-файлом)

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 04.10.05 06:04. Заголовок: Re:


Исходников нет.Автор: nik_x@hotbox.ru - обратись к нему.Он писал , что библиотека получила дальнейшее развитие.
Так же можешь посмотреть сайт Водоносова : http://vodonosov.nm.ru/develop/develop.htm.
Там есть так же программка для прямого доступа к файлам Excel в Клиппере . Для Харбор ее надо немного подправить.

Спасибо: 0 
Цитата Ответить
администратор




Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 04.10.05 08:20. Заголовок: Re:


Кстати использую исходники Водоносова , скорость супер.......ну это и понятно если исходник глянуть.

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 04.10.05 16:47. Заголовок: Re:


Dima пишет:
цитата
Кстати использую исходники Водоносова , скорость супер.......
Я некоторое время использовал этот метод - спасибо Водоносову.
Потом отказался - совершенно нет форматирования отчета :(

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 14.10.05 07:58. Заголовок: Re:


les пишет:
цитата
нарисовал шапку руками, довавил строку с данными, отформатировал, сохранил в формате *.html, из Clipper-а по образу и подобию дописываю нужные данные и открываю в Excel.

а нужные данные дописываешь в какой кодировке? В виндовой, каким образом?

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 14.10.05 08:47. Заголовок: Re:


deep пишет:
цитата
а нужные данные дописываешь в какой кодировке? В виндовой, каким образом?
Конечно в cp1251, используя OemToAnsi()

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 14.10.05 08:53. Заголовок: Re:


А в какой библиотеке эта функция? В поставке клиппер 5.01 она есть?

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 17.10.05 16:32. Заголовок: Re:


deep пишет:
цитата
А в какой библиотеке эта функция? В поставке клиппер 5.01 она есть?
В Clipper-е её нет. Но есть много самописных вариантов



Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 19.10.05 15:22. Заголовок: Re:


Может это поможет. Я использовал такой способ:

1. Clipper делает ТЕКСТОВЫЙ ФАЙЛ в виде форматированной пробелами таблицы (лучше без вертикальных разделителей столбцов, хотя можно и с ними, но их можно использовать в качестве разделителей, см. ниже) или ТЕКСТОВЫЙ ФАЙЛ с данными, разделёнными каким-либо символом разделителем, желательно таким, который не используется в текстовом представлении данных. Это может быть в простейщем случае запятая или ; $ #.
Пример:
6211 332346 РУБ 15853.080 0.000
6211 456456 РУБ 0.000 11048.000
6211 023458 РУБ 98648.000 0.000
или
0011;000006;РУБ;1615853.080;0.000;739096811;1
0011;000007;РУБ;211048.000;0.000;738934901;1
0011;000008;РУБ;98648.000;0.000;738968054;1
0011;000009;РУБ;630462.000;0.000;738923079;1
0011;000010;РУБ;685899.000;0.000;738973451;1

2. Создаётся файл Excel с указанной СУПЕРШАПКОЙ и ПРОСТЫМ макросом, который

2.1. открывает указанный ТЕКСТОВЫЙ ФАЙЛ, причём его кодировка может бытьи 1251 и 866 (!)
в указанном вами режиме - фиксированная ширина столбцов

Пример:
Workbooks.OpenText Filename:="C:\Temp\AAAA.txt", Origin:=866, StartRow:=1 _
, DataType:=xlFixedWidth, FieldInfo:=Array(Array(0, 2), Array(5, 9), Array(12, 2 _
), Array(18, 9), Array(20, 2), Array(23, 9), Array(26, 9), Array(36, 2), Array(47, 9), Array _
(60, 2), Array(68, 9), Array(78, 1), Array(100, 1)), TrailingMinusNumbers:=True

или в режиме "с разделителями"
Workbooks.OpenText Filename:="C:\Temp\AAAA1.txt", Origin:=932, StartRow:= _
1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=True, Comma:=False, _
Space:=False, Other:=False, FieldInfo:=Array(Array(1, 2), Array(2, 2), Array( _
3, 2), Array(4, 2), Array(5, 2), Array(6, 2), Array(7, 1)), TrailingMinusNumbers:=True

2.2. КОПИРУЕТ все строки с первой или со второй (если пропускаем заголовки столбцов)
на страницу с шапкой.

2.3. Скопированное оформляется по вкусу (рамки, цвета, шрифты).

Это РЕАЛЬНО быстрый способ.

Если надо, могу подробнее.

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 20.10.05 12:32. Заголовок: Re:


высё равно на оформление тоже много времени уйдёт (поцессорного), ведь, как я понял, оформление предполагается производить с использованием VBA?

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 20.10.05 15:35. Заголовок: Re:


Нет, оформление тоже надо копировать из имеющегося где-то шаблона, например с другого листа.
Сделать там нужное оформление первой строки после шапки, внутренних строк и "подвала".

Главное не делать никаких программных циклов.
Копировать не в цикле, а сразу для диапазона. Внутренние циклы Excel, реализованные внутри exe-шника работают существенно быстрее, чем VBA.
Для того, чтобы понять сколько строк/столбцов надо копировать бес подсчёта в цикле есть спец. способ в Excel:

Function mlast_row(bname, shname)
mlast_row = Workbooks(bname).Worksheets(shname).Cells.SpecialCells(xlCellTypeLastCell).row
End Function

Function mlast_col(bname, shname)
mlast_col = Workbooks(bname).Worksheets(shname).Cells.SpecialCells(xlCellTypeLastCell).Column
End Function

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 21.10.05 14:05. Заголовок: Re:


понятно. а отключение прорисовки листа не ускоряет заполение? я где-то видел команду типа Application.ScreenUpdating

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 24.10.05 14:44. Заголовок: Re:


А то!
И весьма!

Application.ScreenUpdating = False выключил

сделал

Application.ScreenUpdating = True включил

Увидел, прослезился


Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 24.10.05 17:34. Заголовок: Re:


тогды лучше Application.ScreenUpdating так и оставить =false

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 04.11.05 11:16. Заголовок: Подскажите как в html...


Лично я формирую отчеты в html, а потом просматриваю хоть в бровзере, хоть в Excel...
Однако, с firefox (в отличие от IE) возникла проблема. Неверно обрезает страницы, переносит таблицу на следующую страницу, оставляя заголовок на предыдущей. Если есть знатоки, гляньте, может я несведущий забыл вставить какие-нибудь "заклинания".

<HTML>
<head>
<title></title>
<meta name="Author" CONTENT="">
<meta name="GENERATOR" CONTENT="TB2Html for CAVO">
<meta HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
<style>
td {font-size:70%;COLOR: black;font-family:"Times New Roman"}
.n {font-size:70%;color:#aa0000;font-weight:bold;font-family:"Times New Roman" }
.m {font-size:75%;font-weight:bold;font-family:"Times New Roman" }
.m1 { color:#AA0000; font-size: 10px;font-weight:bold;font-family: Verdana, Arial, Tahoma, Sans Serif;}
</style>
</head>
<BODY BGCOLOR="" TEXT="black">
<center>ЗАТ СК "ПРОБА". Перiод 01.06.2001-30.06.2005</center><CENTER>

======= а то, что дальше переносит на следующую страницу в случае, если страниц больше одной =========


<TABLE BGCOLOR="silver" BORDER=2 FRAME=ALL CellSpacing=0 CellPadding=0 COLS=8>
<CAPTION ALIGN=TOP><B> ЗВIТ ПРО НАДХОДЖЕННЯ СТРАХОВИХ ПЛАТЕЖIВ </B></CAPTION>
<TR><Td COLSPAN=1 VALIGN=CENTER class=m> Група </Td>
<Td COLSPAN=1 VALIGN=CENTER class=m> Код </Td>
<Td COLSPAN=1 VALIGN=CENTER class=m>Вид страхування</Td>
<Td COLSPAN=1 VALIGN=CENTER class=m>Сума платежiв</Td>
<Td COLSPAN=1 VALIGN=CENTER class=m>Кiлькість</Td>
<Td COLSPAN=1 VALIGN=CENTER class=m>Страхова сума</Td>
<Td COLSPAN=1 VALIGN=CENTER class=m>На ведення справи</Td>
<Td COLSPAN=1 VALIGN=CENTER class=m>% на ведення справи</Td>

skip



Спасибо: 0 
Цитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 07.03.06 02:18. Заголовок: Re:


А где сейчас сайт Водоносова? Хочется тоже посмотреть эту программку прямого доступа к Екселю

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 07.03.06 07:47. Заголовок: Re:


Где и был http://vodonosov.nm.ru/develop/develop.htm
Но он сейчас замороченный, но вопросы почти не реагирует

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 07.03.06 08:52. Заголовок: Re:


Утром что-то не открывался, а сейчас работает

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 5
Зарегистрирован: 13.03.09
ссылка на сообщение  Отправлено: 15.03.09 18:22. Заголовок: Цитата: les пишет: ..


Цитата: les пишет: _sergey пишет: цитатаИнтересно, как ты из прогарммы на клиппере создаёшь лист эекселя? нарисовал шапку руками, довавил строку с данными, отформатировал, сохранил в формате *.html, из Clipper-а по образу и подобию дописываю нужные данные и открываю в Excel. Геморойно, но работает довольно шустро.

Зачем открывать html в Excel'e?????? Проще, скопировать..... Открываете Интернет Експлорером html, выделить все, копировать, перейти в Excel и вставить... обрамление и
все.
Я в такой способ делаю праткически со всеми отчетами (и внутренними и внешними.....) :-))))))))


Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 7
Зарегистрирован: 16.12.09
ссылка на сообщение  Отправлено: 16.12.09 17:00. Заголовок: Clip_msk.lib работае..


Clip_msk.lib работает с Excel

Смотри http://nova-mir.narod.ru

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 8
Зарегистрирован: 16.12.09
ссылка на сообщение  Отправлено: 16.12.09 17:04. Заголовок: Clip_msk.lib работае..


Clip_msk.lib работает с Excel

Смотри http://nova-mir.narod.ru

P.S.
Почему-то многие ссылки ведут совсем не туда, куда указывают авторы

вот и эта тоже

http://vodonosov.nm.ru/develop/develop.htm


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1495
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 28.03.10 20:20. Заголовок: les пишет: Я некото..


les пишет:

 цитата:
Я некоторое время использовал этот метод - спасибо Водоносову.
Потом отказался - совершенно нет форматирования отчета :(


Кажется я нашел нормальный выход.
Текст формируем в формате HTM (есть форматирование и все что надо и даже больше)
И далее если по простому то так:
Файлик сохраняем с расширением XLS
swpruncmd(GetEnv("SYSTEMROOT")+"\system32\cmd.exe /c start test.xls"
Excel его покажет как родной и внешне он ни чем не отличается если смотреть его через какой либо
браузер.
Пример
 
<HTML>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<CAPTION><B><Center>Типа тест</Center></B></CAPTION>
<table border="1">
<tr style="font-weight:bold" bgcolor="#EEAEEE">
<td colspan="2" align="center">Итоги</td><td>&nbsp;</td>
</tr>

<tr style="font-weight:bold">
<td>Колонка1</td><td>Колонка2</td> <td>Колонка 3 </td>
</tr>
<tr>

<td>данные1</td><td>данные 2</td><td>данные 3</td>
</tr>
<tr>
<td>данные1</td><td>данные 2</td> <td>данные 3</td>
</tr>
<tr>
<td>данные1</td><td>данные 2</td> <td>данные 3</td>
</tr>
</table>


</HTML>



Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 348
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 28.03.10 21:03. Заголовок: XML тоже в тему... :..


XML тоже в тему... :)
Его и OpenOffice Calc без вопросов откроет.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1496
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 28.03.10 21:24. Заголовок: PSP Примерчик покаж..


PSP
Примерчик покажешь , что бы можно было получить похожую табличку как в моем примере ?

ЗЫ
И чем потом его открыть что бы увидеть таблицу а не код в XML

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 350
Зарегистрирован: 27.01.07
ссылка на сообщение  Отправлено: 29.03.10 11:50. Заголовок: Dima, в нете много п..


Dima, в нете много примеров. Хотя бы ВОТ

PS: переименованный в xls файл корректно открывает только Excel (как формат html, так и xml).
OO Calc открывает эти файлы только с "правильным расширением".

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 1498
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 29.03.10 17:24. Заголовок: PSP Пасиб :sm12: ..


PSP
Пасиб

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 145
Зарегистрирован: 24.09.05
ссылка на сообщение  Отправлено: 02.04.10 17:16. Заголовок: вставлю свои 5 копее..


вставлю свои 5 копеек

есть таблица xls, на первом листе - уже готовое оформление. на второй лист экспорируются данные из текстового файла, которые подготавливает программа. это могут быть как записи базы данных, так и отдельные конкретные числа и тд. Макрос на экселе откывает текст, экспортирует его содержимое на 2й лист, далее распихивает как надо по первому листу. Отключение прорисовки экрана (screenupdating=false) конечно же существенно ускоряет процесс. На хорошем компьютере эксель запускается в фоне, формирует + печатает форму и закрывается менее чем за секунду

Тонкости.

1) На рабстанциях в экселе может быть установлен запрет на испольование макросов экселя, поэтому программа на клиппер предварительно проверяет эту установку и в случае необходимости пишет в реестр виндовс разрешение на использование макросов.

2) Поскольку программы могут выполняться на терминальном сервере, программа сначала копирует таблицу эксель и данные для нее из основной папки в уникальный для пользователя темповый каталог. Чтобы понять в каком каталоге нужно искать данные, в экселе есть соотв функции получения папки, в которой открыта таблица.

3) Способ "все отчеты через эксель" кроме прочего хорош тем, что позволяет без проблем печатать на локальном принтере из терминальной сессии на удаленном компьютере. Аналогичная печать из ДОС декларируется но не работает. Поэтому для печати отчетов, формирующихся в клиппер традиционным способом, мне пришлось писать сервер поддержки удаленной печати. Это заморочь, но иногда этого не избежать, например, если имеются мегабайты кода, который что-то там считает и постепенно выводит на принтер.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 2592
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 27.12.12 12:50. Заголовок: Krosh пишет: Appli..


Krosh пишет:

 цитата:

Application.ScreenUpdating = False выключил

сделал

Application.ScreenUpdating = True включил



Что то разницы по времени работы я не увидел.

Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 27.06.13 09:23. Заголовок: В библиотеке?


CA-Clipper Tools version 3.0
Очень много подходящего.

Спасибо: 0 
Цитата Ответить



Пост N: 170
Зарегистрирован: 07.08.06
ссылка на сообщение  Отправлено: 20.10.13 23:53. Заголовок: --- Dima, 28.03.10 2..


--- Dima, 28.03.10 21:20 ---
Текст формируем в формате HTM (есть форматирование и все что надо и даже больше)
---

Народ, подскажите, плз: можно ли затолкать в HTML-код "что-то такое", что заставит эксель открыть таблицу с фиксированным заголовком, т.е. чтобы при вертикальной прокрутке он не уезжал ?

ЗЫ. 2 Dima: за показ способа - мегареспект, спасибо! :-)

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 171
Зарегистрирован: 07.08.06
ссылка на сообщение  Отправлено: 21.10.13 21:08. Заголовок: PS... PlanMaker-pro ..


PS... PlanMaker-pro (2012) - не пропускает этот фокус, говорит: "неопознанный формат файла"

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 52
Зарегистрирован: 05.10.06
ссылка на сообщение  Отправлено: 25.10.13 14:30. Заголовок: Народ, подскажите, п..



 цитата:
Народ, подскажите, плз: можно ли затолкать в HTML-код "что-то такое", что заставит эксель открыть таблицу с фиксированным заголовком, т.е. чтобы при вертикальной прокрутке он не уезжал ?



Рисуешь табличку в Excell, закрепляешь заголовки или столбцы. Сохраняешь в HTML формате, смотриш его в текстовом редакторе. Нужные команды в таблице стилей будут. Но на сколько помню у Excell немного другие, свои таблицы стилей чем у обычного HTML...

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 44 , стр: 1 2 3 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 698
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет