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

Работа с OLE сервер Excel: пропуск строк

17.05.2014, 11:16. Показов 1640. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер)))
столкнулся с такой проблемой.
выгружаю данные в Excel из Builder те поля, которые я выбрал в списке.

Как "сказать ему" чтобы он пропустил в 2 строки в Excel и пошел дальше выгружать, заранее спасибо
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.05.2014, 11:16
Ответы с готовыми решениями:

OLE-сервер Excel в XE7
Пишу проект в C++ Builder XE7 . В конце решил сделать отчет через Excel. Начал изучать как это...

OLE-сервер Excel. Builder c++
Всем добрый вечер работаю с Ole сервер Excel есть код: //создание объекта Excel.Application ...

Работа с Excel через OLE
Здравствуйте Использую C++ Builder 6, пытаюсь подключится к уже запущеному Excel приложению,...

Работа с OLE-сервером Excel - "Неверный тип переменной"
Здравствуйте! Никак не могу понять почему возникает ошибка "Неверный тип переменной" void...

5
260 / 192 / 60
Регистрация: 12.05.2013
Сообщений: 857
17.05.2014, 16:35 2
Within_t, Добрый!
А сначала ответь на 1 вопрос, Как "заставить его" не плодить одинаковых тем?
Можно же просто предыдущую тему up-нуть
Работа с Excel
0
34 / 21 / 11
Регистрация: 20.10.2013
Сообщений: 577
23.05.2014, 21:46  [ТС] 3
Цитата Сообщение от demon_7 Посмотреть сообщение
тему up-нуть
если бы я знал как это реализовать, я не создавал бы тему (и для справки, я знаю и без тебя что нужен обработчик)
Тема создавалась с целью помощи в реализации кода знающих программистов, а не ее обсуждения как сделать обработчик.
0
Эксперт С++
8482 / 6149 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
24.05.2014, 00:36 4
Within_t, Ну постарался хотя бы нормальным языком задачу объяснить.
0
260 / 192 / 60
Регистрация: 12.05.2013
Сообщений: 857
24.05.2014, 09:03 5
Цитата Сообщение от Within_t Посмотреть сообщение
Тема создавалась с целью помощи в реализации кода знающих программистов, а не ее обсуждения как сделать обработчик.
Я Вам намекал как сделать так чтоб Вы приблизились к цели
Цитата Сообщение от demon_7 Посмотреть сообщение
Без кода и конкретного примера как Вы выгружаете можно только порассуждать на эту тему.
0
34 / 21 / 11
Регистрация: 20.10.2013
Сообщений: 577
25.05.2014, 16:55  [ТС] 6
Вот код, который выгружает данные Excel:

*.cpp
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
//создание объекта Excel.Application
 if(!fStart)
 {
   try
   {
     vVarApp=CreateOleObject("Excel.Application");
     fStart=true;
   }
   catch(...)
   {
     MessageBox(0, "Ошибка при открытии сервера Excel", "Ошибка", MB_OK);
     return;
   }
 }
 
 //установка свойства
 vVarApp.OlePropertySet("Visible",true);
 //Переменной vVarBooks присваивается значение Workbooks - свойство
 //объекта Excel.Application, содержащее набор рабочих книг Excel.
 vVarBooks=vVarApp.OlePropertyGet("Workbooks");
 //SheetsInNewWorkbook задает количество листов в создаваемой книге,
 //пусть в первой книге их будет 1 страница (лист)
 vVarApp.OlePropertySet("SheetsInNewWorkbook",1);
 //Добавляем книгу из 1 листов в объект vVarBooks.
 vVarBooks.OleProcedure("Add");
 //Переменная vVarBook содержит ссылку на текущую книгу.
 //(Пусть текущая книга будет первая).
 vVarBook=vVarBooks.OlePropertyGet("Item",1);
 //Переменной vVarSheets присваиваем значение
 //Worksheets - свойство объекта Excel.Application,
 //содержащее набор страниц книги Excel.
 vVarSheets=vVarBook.OlePropertyGet("Worksheets");
 //берем первый лист
 vVarSheet=vVarSheets.OlePropertyGet("Item",1);
 //задаем новое имя листу
 vVarSheet.OlePropertySet("Name","Данные");
 
 //НАЗВАНИЕ ЗАПРОСА
 vVarSheet=vVarSheets.OlePropertyGet("Item",1);
 //выбираем группу ячеек (для объединения)
 vVarCell=vVarSheet.OlePropertyGet("Range","A2:C3");
 vVarCell.OleProcedure("Merge");
 //устанавливаем режим выравнивания текста в ячейке (ячейках) по левому краю
 vVarCell.OlePropertySet("VerticalAlignment",-4108);
 //устанавливаем размер шрифта
 vVarCell.OlePropertyGet("Font").OlePropertySet("Size",16);
 //устанавливаем цвет шрифта ячейки
 vVarCell.OlePropertyGet("Font").OlePropertySet("Color",clRed);
 //устанавливаем стиль шрифта ячейки (жирный)
 vVarCell.OlePropertyGet("Font").OlePropertySet("Bold",true);
 //устанавливаем имя шрифта ячейки
 vVarCell.OlePropertyGet("Font").OlePropertySet("Name","Times New Roman");
 //устанавливаем значение данных
 vVarCell.OlePropertySet("Value","Списки жильцов");
 
//вывод ФИО
      vVarCell=vVarSheet.OlePropertyGet("Range","A4");
      vVarCell.OleProcedure("Merge");
      vVarCell.OlePropertySet("RowHeight", 15);
      vVarCell.OlePropertySet("ColumnWidth",34);
      vVarCell.OlePropertyGet("Font").OlePropertySet("Bold",true);
      vVarCell.OlePropertyGet("Font").OlePropertySet("Size",12);
      vVarCell.OlePropertySet("HorizontalAlignment",-4108);
      vVarCell.OlePropertySet("VerticalAlignment",-4108);
      vVarCell.OlePropertySet("Value","ФИО");
      vVarCell.OlePropertyGet("Font").OlePropertySet("Color",clBlack);
      ADOQuery5->First();
      int fio = 5;
      AnsiString s;
      s= "A" +IntToStr(fio);
      while(!ADOQuery5->Eof)
        {
          vVarCell = vVarSheet.OlePropertyGet("Range",s.c_str());
          vVarCell.OlePropertySet("Value", ADOQuery5->FieldByName("Name")->AsString.c_str());
          ADOQuery5->Next();
          fio++;
          s = "A"+IntToStr(fio);
        }
*.h
C++
1
2
3
4
5
6
7
8
9
private:    // User declarations
Variant  vVarApp,  //приложение
         vVarBooks, //набор книг
         vVarBook, // книга
         vVarSheets,//набор страниц
         vVarSheet, //страница
         vVarCells,//ячейки
         vVarCell; //ячейка
bool     fStart; // служит индикатором того, что сервер запущен
После того как он выгрузил список, надо:
1. пропустить 2 строки в Excel
2. написать название столбца и отправлять новые данные (не важно какие)
0
25.05.2014, 16:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.05.2014, 16:55
Помогаю со студенческими работами здесь

Работа с OLE сервер Excel / Builder c++ / установка денежного формата для ячейки
Всем добрый вечер, помогите с такой фигней))) имеется код по надстройке запуска excel //создание...

Задание диапазона ячеек при объединении (OLE-сервер Excel)
Добрый день. Столкнулась с такой проблемой: при работе с OLE-сервером Excel, при задании диапазона...

работа с объектом класса Internetexplorer.application как с Ole-сервер
Привет всем. Подскажите пожалуйста несколько примеров программной работы с OLE-объектом...

Работа с Word/Excel через Ole/иные способы
Добрый день, товарищи. Да, много читал всего интересного в Интернет по этому вопросу - и тут, и...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru