:: Архив конференции по VFP до 2005 года
Re: передача dbf в xls
snoop
Автор

Сообщений: 378
Дата регистрации: 14.11.2002
вашь пример не очкнь, в том смысле что, вдруг у меня не определенно кл-во строк и ячеек заранее??
Ratings: 0 negative/0 positive
Re: передача dbf в xls
snoop
Автор

Сообщений: 378
Дата регистрации: 14.11.2002
просто я думал есть какойто "внутренний" способ экспорта
Ratings: 0 negative/0 positive
Re: передача dbf в xls
snoop
Автор

Сообщений: 378
Дата регистрации: 14.11.2002
а как в "копи то" избавиться от заголовком таблици?
Ratings: 0 negative/0 positive
Re: передача dbf в xls
Владимир Максимов

Сообщений: 14095
Откуда: Москва
Дата регистрации: 02.09.2000
"Нешто я должОн министру, разъяснять любой пустяк" (с)

Неужели так трудно сообразить, что буфер обмена формируется из исходной таблицы?

LOCAL lcString, lnI
select MyTab
SCAN
lcString = m.lcString + chr(13) + TransForm(Evaluate(Fields(1)))
FOR lnI = 2 TO FCOUNT()
lcString = m.lcString +chr(9) + TransForm(Evaluate(Fields(m.lnI)))
ENDFOR
ENDSCAN




------------------
Ratings: 0 negative/0 positive
Re: передача dbf в xls
Божья_коровка

Сообщений: 25720
Дата регистрации: 23.08.2001
Цитата:
а то выйдит новый ексель и все привет
Какой привет? Не думаю чтобы в новой выерсии экселя не поддерживался формат пятого экселя. Единственное что не очень удобно, что при корректировки этого документа и последующем сохранении изменений он спрашивает будите ли вы пересохранять данный документ в текущей версии Вот и весь привет А экспорт происходит отлично, на моей практике у меня не было проблем с "копи то эксель5".
Ratings: 0 negative/0 positive
Re: передача dbf в xls
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
Hi, snoop!

Способы можно и НУЖНО комбинировать. Т.е. самая медленная часть - это
заполнение собственно таблицы с данными - значит это делаем через COPY TO (я
предпочитаю TYPE FOX2X AS 866 - он в старых версиях фокса позволял все 65000
строк получить, ибо к TYPE XL5 только в VFP8 добавили возможность выкинуть >
16000 строк), или буфер обмена, или массив (это получится только в VFP7 и
старше через особый трюк с функцией возвращающей массив - подробности в
ПОИСКЕ).
А вот форматирование, удаление ненужной строки заголовков или замена её на
свою, пересохранение в наисвежайшем формате (чтоб потом Excel не ругался о
том что дескать не все фишки можно сохранить) - это можно сделать через COM.
Кроме того я например предпочитаю ФОРМИРОВАТЬ отчёт отдельно от его показа -
т.е. после всех манипуляций сохраняю отчёт, закрываю свой рабочий экземпляр
Excel-я, и запускаю готовый xls через ShellExecute - он тогда откроется в
том же экземпляре, который уже запустил пользователь (если же не было
запущено Excel-я, то запустит новый экземпляр).




------------------
WBR, Igor
Ratings: 0 negative/0 positive


Извините, но у вас нет прав для того, чтобы оставлять сообщения в этом форуме.

On-line: 9 (Гостей: 9)

© 2000-2024 Fox Club 
Яндекс.Метрика