powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как Grid экпортировать в exel ?
9 сообщений из 9, страница 1 из 1
Как Grid экпортировать в exel ?
    #34583672
Silvery_star
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребята может кто нибуд знает как экспортировать DBGridEh в exel ???
...
Рейтинг: 0 / 0
Как Grid экпортировать в exel ?
    #34583789
Фотография Zmeishe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
#include <DBGridEhImpExp.hpp>

void __fastcall TfrmMain::miExportClick(TObject *Sender)
{
 bool flag;

 if(SaveDialog1->Execute()){

  flag = (DBGrid->SelectedRows->Count ==  0 );

 switch(SaveDialog1->FilterIndex){
 case  1 :
 SaveDBGridEhToExportFile(__classid(TDBGridEhExportAsRTF),
   DBGrid, SaveDialog1->FileName, flag);
 break;
 case  2 :
 SaveDBGridEhToExportFile(__classid(TDBGridEhExportAsHTML),
   DBGrid, SaveDialog1->FileName, flag);
 break;
 case  3 :
 SaveDBGridEhToExportFile(__classid(TDBGridEhExportAsXLS),
   DBGrid, SaveDialog1->FileName, flag);
 break;
 case  4 :
 SaveDBGridEhToExportFile(__classid(TDBGridEhExportAsText),
   DBGrid, SaveDialog1->FileName, flag);
 break;
 case  5 :
 SaveDBGridEhToExportFile(__classid(TDBGridEhExportAsCSV),
   DBGrid, SaveDialog1->FileName, flag);
 break;
 }
 }
}
//---------------------------------------------------------------------------


void __fastcall TfrmMain::SaveDialog1TypeChange(TObject *Sender)
{
 switch(SaveDialog1->FilterIndex){
 case  1 :
 SaveDialog1->DefaultExt = "rtf";
 break;
 case  2 :
 SaveDialog1->DefaultExt = "htm";
 break;
 case  3 :
 SaveDialog1->DefaultExt = "xls";
 break;
 case  4 :
 SaveDialog1->DefaultExt = "txt";
 break;
 case  5 :
 SaveDialog1->DefaultExt = "csv";
 break;
 }
 SaveDialog1->FileName = ChangeFileExt(SaveDialog1->FileName, "");
}
//---------------------------------------------------------------------------
...
Рейтинг: 0 / 0
Как Grid экпортировать в exel ?
    #34584476
Silvery_star
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А когда количество строк больше 65000 ?
...
Рейтинг: 0 / 0
Как Grid экпортировать в exel ?
    #34584502
Фотография Zmeishe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Silvery_starА когда количество строк больше 65000 ?
Это ты у заказчика спроси.
Или у Билли
...
Рейтинг: 0 / 0
Как Grid экпортировать в exel ?
    #34584909
Silvery_star
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Когда количество строк больше 65000 тогда остальные записи должны перейти на следующий лист....
Вот эту функцию или опцию как можно настроит.....???
...
Рейтинг: 0 / 0
Как Grid экпортировать в exel ?
    #34584966
Фотография Zmeishe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если ты
свойством DBGrid->SelectedRows программно будешь рулить, то можешь выгружать в разные файлы.
Если оч. нАда на разные листы, то юзай OLE.
Либо ищи другой Grid вместо DBGridEh.

Непонятно, что потом делать с этим Екселем.
Умереть можно, пока он его открывать будет.
Или Windows скажет 'Out of memory' и пошлёт тебя аж дальше Туниса.
...
Рейтинг: 0 / 0
Как Grid экпортировать в exel ?
    #34585577
Silvery_star
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо ребята за помощь!
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Как Grid экпортировать в exel ?
    #39039839
Усейн Болт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Раньше стоял EhLib 6 и прекрасно работала вот такая конструкция:
SaveDBGridEhToExportFile(__classid(TDBGridEhExportAsXLS), DBGrid1, "C:\\1.xls", False);

Решил поставить EhLib 7 и стала возникать вот такая ошибка:
E2034 Cannot convert 'TMetaClass *' to 'TMetaClass'

Попробовал такой вариант:
SaveDBGridEhToExportFile(TDBGridEhExportAsXLS, DBGrid1, "C:\\1.xls", False);
Поручил такое:
E2108 Improper use of typedef 'TDBGridEhExportAsXLS'

Попробовал вот так:
SaveDBGridEhToExportFile(*__classid(TDBGridEhExportAsXLS), DBGrid1, "C:\\1.xls", False);
Получил такое:
[ilink32 Error] Error: Unresolved external '__fastcall Dbgridehimpexp::SaveDBGridEhToExportFile(System::TMetaClass, Dbgrideh::TCustomDBGridEh *, System::UnicodeString, bool)'...

Подскажите, как грамотно оформить вызов для 7-й версии?
...
Рейтинг: 0 / 0
Как Grid экпортировать в exel ?
    #39042757
Усейн Болт
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема решилась правкой исходника DBGridEhImpExp.hpp.

_DECLARE_METACLASS(System::TMetaClass, TDBGridEhExportClass);
заменил на:
typedef System::TMetaClass* TDBGridEhExportClass;

Ох, Дима!
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как Grid экпортировать в exel ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]