Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
1 / 1 / 0
Регистрация: 01.04.2012
Сообщений: 34

Дружба Builder с Access, Word, Excel

05.11.2013, 20:55. Показов 2194. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток форумучане.
Выпала мне доля писать дипломный проект с расчётом данных из БД Access с созданием отчётов в Word, Excel.
Задача такова:
Данные заносятся в таблицу Access и после всех заполненных данных производятся вычисления.
Затем всё что рассчиталось, нужно оформить отчётов в M Word (сделанный уже шаблон) или сгенирированный программой и так же в отчёт Excel.
Если кто-то уже сталкивался с этим или же с половиной то что приведено, расскажите как сделайт или же может у Вас есть пример то буду благодарен за него.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.11.2013, 20:55
Ответы с готовыми решениями:

Word и Excel в C++ Builder
Всем привет! Заранее скажу, что только начинаю изучать С++ и поэтому буду рад любой помощи. Появилась необходимость с помощью...

MS Word и C++ Builder
Всем доброго времени суток! Есть база в MS SQL. подключена к C++ Builder c помощью ADO. На форме есть dbgrid. из него данные нужно...

Access закрытие процессов Excel, Word
Здравствуйте форумчане! Есть такая проблема как висячие процессы ворда и екселя после их программного закрытия. Перечитал кучу...

6
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
05.11.2013, 21:06
Ну с Word и Excel можно через OLE работать, кроме того если я не ошибаюсь с Excel можно работать через компоненты БД.

Есть еще такой вариант- создавать xml по формату Word/Excel а затем сжимать его в zip-архив в итоге получим нужный файл который можно будет открыть в Word/Excel
0
1 / 1 / 0
Регистрация: 01.04.2012
Сообщений: 34
05.11.2013, 21:21  [ТС]
Цитата Сообщение от Avazart Посмотреть сообщение
Ну с Word и Excel можно через OLE работать, кроме того если я не ошибаюсь с Excel можно работать через компоненты БД.
Да, использовать OLE компонент можно, но мне нужны разные варианты для решения задачи.
То что будет твориться в БД это уже дело моё, главное сделать отчёты в Word и Excel вот это меня больше заботит.

Добавлено через 12 минут
Мне нужно не открывать Word или Excel.
Как в случае с Excel то только выстроить таблицу и занести данные.
С Word'om уже другая проблема, нужно построить отчёт по ГОСТ"у или в шаблон записать данные.
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
05.11.2013, 21:32
Цитата Сообщение от Krapters Посмотреть сообщение
Мне нужно не открывать Word или Excel.
Ну в Вашем случае думаю только через OLE и можно сделать.
0
1 / 1 / 0
Регистрация: 01.04.2012
Сообщений: 34
05.11.2013, 21:36  [ТС]
А примерчик с Word и Excel где можно взять работающий ?
0
 Аватар для gumi250
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
06.11.2013, 00:18
http://wladm.narod.ru/Borland/olebegin.html
1
0 / 0 / 1
Регистрация: 13.01.2013
Сообщений: 34
20.11.2013, 15:33
Доброе времени суток. Прошу помощи у знающих! Сделал экспорт БД в Excel.

C++
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
AnsiString sFile;
sFile = GetCurrentDir()+"\\Шаблон.xlt";
 
 Variant App;
if(!fStart)
 {
 try
 {
App = Variant::CreateObject("Excel.Application");
fStart=true;
 }
 catch(...)
 {
 MessageBox(0, "Не открывается сервер Excel",
 "Внимание", MB_OK);
 return;
 }
 }
 
Variant XLBook = App.OlePropertyGet("WorkBooks");
 
Variant Sh;
Procedure Open("Open");
XLBook.Exec(Open<<sFile);
Sh = XLBook.OlePropertyGet("Count");
Sh = App.OlePropertyGet("WorkSheets",1);
 
App.OlePropertySet("Visible",Variant(true));
 
 
String Str;
String Str2;
String Str3;
String Str4;
String Str5;
String Str6;
String Str7;
String Str8;
 
int index;
int i;
AnsiString ran;
index=4;
Form1->ADOTable1->First();
 for(i=1;i<=Form1->ADOTable1->RecordCount;i++)
{
Str = Form1->ADOTable1->Fields->Fields[0]->AsString;
Str2 = Form1->ADOTable1->Fields->Fields[1]->AsString;
Str3 = Form1->ADOTable1->Fields->Fields[11]->AsString;
Str4 = Form1->ADOTable1->Fields->Fields[4]->AsString;
Str5 = Form1->ADOTable1->Fields->Fields[5]->AsString;
Str6 = Form1->ADOTable1->Fields->Fields[7]->AsString;
Str7 = Form1->ADOTable1->Fields->Fields[12]->AsString;
Str8 = Form1->ADOTable1->Fields->Fields[13]->AsString;
Sh.OlePropertyGet("Cells",index,2).OlePropertySet("Value",Str.c_str());
Sh.OlePropertyGet("Cells",index,3).OlePropertySet("Value",Str2.c_str());
Sh.OlePropertyGet("Cells",index,4).OlePropertySet("Value",Str3.c_str());
Sh.OlePropertyGet("Cells",index,5).OlePropertySet("Value",Str4.c_str());
Sh.OlePropertyGet("Cells",index,6).OlePropertySet("Value",Str5.c_str());
Sh.OlePropertyGet("Cells",index,7).OlePropertySet("Value",Str6.c_str());
Sh.OlePropertyGet("Cells",index,8).OlePropertySet("Value",Str7.c_str());
Sh.OlePropertyGet("Cells",index,9).OlePropertySet("Value",Str8.c_str());
 
ran="B4:I"+IntToStr(index);
Sh.OlePropertyGet("Range",ran.c_str()).OlePropertyGet("Borders",9).
         OlePropertySet("LineStyle",1);
Sh.OlePropertyGet("Range",ran.c_str()).OlePropertyGet("Borders",9).
         OlePropertySet("Weight",2);
Sh.OlePropertyGet("Range",ran.c_str()).OlePropertyGet("Borders",9).
         OlePropertySet("ColorIndex",1);
 
index=index+1;
Form1->ADOTable1->Next();
}
...
}
Так вот все работает прекрасно, но только первый раз!! При попытке нажать на кнопку второй раз вылетает ошибка
"IsBound() @ c:\\bcb\emuvcl\utilcls.h/4249 Press[Y]es to terminate, [N]o to continue and [C]ancel to Debug"
Что неправильно написал? Подскажи, плиз!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.11.2013, 15:33
Помогаю со студенческими работами здесь

Импорт и Экспорт в Word,Excel,Access
Прошу помочь с лабами бд.на форме есть Table,DBGrid,DataSource.Таблицы сделаны в Paradoxe.как сделать импорт и экспорт.может ссылку на...

Добавление и извлечение документов (Word, Excel) из БД MS Access
Доброго времени суток. Есть задача хранить и извлекать документы из БД. Потом, возможно заказчик захочет модифицировать и заливать...

Добавление и извлечение документов (Word, Excel) из БД на MS Access
Доброго времени суток. Есть задача хранить и извлекать документы из БД. Надо именно хранение в БД, по другому никак. Программа...

Связь в одном приложении MS Word, Excel и Access, используя технологию ADO
Доброго времени суток, форумчане! Не могли бы показать пример комплексного приложения, в котором связаны MS Word, Excel и Acess,...

Что лучше использовать для приложения, взаимодействующего с Word, Excel и Access?
Здравствуйте! Имеется задача: есть файл excel, нужно на основании данных в нем, и ответов на вопросы от программы пользователю, создать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru