35136

Пример реализации обмена данными с Microsoft Excel

Практическая работа

Информатика, кибернетика и программирование

Создание новой книги Vrint MSBooks; MSBooks = MSExcel. Создание нового листа книги. Сохранение книги. Создание нового листа книги.

Русский

2013-09-09

45.5 KB

3 чел.

Практическая работа №9

Пример реализации обмена данными с Microsoft Excel

Работа с OLE- (COM-) серверами реализуется путем обращения к системным механизмам OLE, отыскивающим запись о сервере в реестре MS Windows по заданному глобально-уникальному идентификатору (GUID). Можно также реализовать так называемое позднее связывание, когда происходит двойное обращение к реестру: сначала для получения GUID по имени COM-сервера, а затем для получения ссылки на сам сервер по его GUID. Для этого в Borland C++Builder используется объект Variant.

Ниже приведены примеры работы с объектами MS Excel при помощи Variant:

#include <utilcls.h>

...

Variant MSExcel, MyBook, MySheet;

...

try

{ // Получить указатель на активный объект. MSExcel - загружен

 MSExcel = Variant::GetActiveObject("Excel.Application");

}

catch (...)

{

 MSExcel = Variant::CreateObject("Excel.Application");

}

MSExcel.OlePropertySet ( "Visible", true );

...

// Создание новой книги

Variant MSBooks;

 MSBooks = MSExcel.OlePropertyGet ("Workbooks");

MyBook = MSBooks.OleFunction ( "Add" );

...

// Создание страницы

Variant Sheets;

   Sheets = MyBook.OlePropertyGet ("Worksheets");

   MySheet = Sheets.OleFunction ("Add");

...

// Заполнение таблицы

Variant Range;

Range = MySheet.OlePropertyGet ( "Range", "B2" );

Range.OlePropertySet ( "FormulaR1C1", "1" );

...

// Создание диаграммы

Variant Charts, Chart, Ch, Range;

Charts = MySheet.OlePropertyGet ("ChartObjects");

Chart = Charts.OleFunction ( "Add", 300, 20, 300, 400 );

Ch = Chart.OlePropertyGet ( "Chart" );

Range = MySheet.OlePropertyGet ( "Range", "A2:B17" );

Ch.OleProcedure ( "SetSourceData", Range, "xlColumns" );

Таким образом, все обращение к OLE-серверу сводится к использованию функций Variant OlePropertyGet, OlePropertySet, OleFunctoin, OleProcedure.

Задание. Разработать визуальное приложение, позволяющие выполнять операции согласно варианту задания.

Вариант 1. Создание нового листа книги. Загрузка на лист содержимого БД формата DBF. Вычисление среднего значения в столбце, выбранном пользователем, с занесением в его последнюю ячейку. Сохранение книги.

Вариант 2. Создание нового листа книги. Генерация таблицы из двух столбцов: порядковый номер и значение (в качестве значения можно взять, например, арифметическую или геометрическую прогрессию, последовательность Фибоначчи и пр.). Сохранение листа в виде БД формата DBF. Вычисление суммарного значения в столбце, выбранном пользователем, с занесением в его последнюю ячейку.

Вариант 3. Создание нового листа книги. Создание таблицы путем копирования данных из таблиц аналогичной структуры, размещенных на листах книги, указанных пользователем. Вычисление дисперсии в столбце, выбранном пользователем, с занесением в его последнюю ячейку. Сохранение книги.

Вариант 4. Создание нового листа книги. Загрузка на лист содержимого БД формата DBF. Вычисление суммарного значения в столбце, выбранном пользователем, с занесением в его последнюю ячейку. Построение диаграммы по таблице. Сохранение книги.

Вариант 5. Создание нового листа книги. Создание таблицы путем копирования данных из таблиц аналогичной структуры, размещенных на листах книги, указанных пользователем. Построение диаграммы по таблице. Вычисление дисперсии в столбце, выбранном пользователем, с занесением в его последнюю ячейку. Сохранение книги.

Вариант 6. Создание нового листа книги. Создание таблицы путем копирования данных из таблиц аналогичной структуры, размещенных на листах книги, указанных пользователем. Вычисление среднего значения в столбце, выбранном пользователем, с занесением в его последнюю ячейку. Печать листа. Сохранение книги.

Вариант 7. Создание нового листа книги. Загрузка на лист содержимого БД формата DBF. Сохранение листа в виде БД формата DBF. Вычисление суммарного значения в столбце, выбранном пользователем, с занесением в его последнюю ячейку. Печать листа.

Вариант 8. Создание нового листа книги. Генерация таблицы из двух столбцов: порядковый номер и значение (в качестве значения можно взять, например, арифметическую или геометрическую прогрессию, последовательность Фибоначчи и пр.). Вычисление дисперсии в столбце, выбранном пользователем, с занесением в его последнюю ячейку. Печать листа. Сохранение книги.

Вариант 9. Создание нового листа книги. Загрузка на лист содержимого БД формата DBF. Вычисление среднего значения в столбце, выбранном пользователем, с занесением в его последнюю ячейку. Построение диаграммы по таблице. Печать таблицы. Сохранение книги.

Вариант 10. Создание нового листа книги. Создание таблицы путем копирования данных из таблиц аналогичной структуры, размещенных на листах книги, указанных пользователем. Построение диаграммы по таблице. Вычисление дисперсии в столбце, выбранном пользователем, с занесением в его последнюю ячейку. Печать графика. Сохранение книги.

Вариант 11. Создание нового листа книги. Загрузка на лист содержимого БД формата DBF. Вычисление суммарного значения в столбце, выбранном пользователем, с занесением в его последнюю ячейку. Построение диаграммы по таблице. Печать графика. Сохранение книги.

Вариант 12. Создание нового листа книги. Генерация таблицы из двух столбцов: порядковый номер и значение (в качестве значения можно взять, например, арифметическую или геометрическую прогрессию, последовательность Фибоначчи и пр.). Построение диаграммы по таблице. Вычисление дисперсии в столбце, выбранном пользователем, с занесением в его последнюю ячейку. Печать таблицы. Сохранение книги.


 

А также другие работы, которые могут Вас заинтересовать

71351. КУРС ЛЕКЦЫЙ “БІБЛІЯТЭКАЗНАЎСТВА. ГІСТОРЫЯ” 1.24 MB
  “Бібліятэказнаўства: Гісторыя” раскрывае сусветную гісторыю бібліятэчнай справы, вывучае патрэбнасці грамадства ў бібліятэцы, яе ролю ў вытворчым і культурным жыцці. Вывучэнне сусветнай гісторыі бібліятэчнай справы як састаўной часткі сусветнай культуры неабходна для разумення...
71352. Возникновение государства у восточных славян (VIII-IX века) 931 KB
  В течение веков город оставался крупным торговым политическим и военным центром на северо-западе России. Опричнина ухудшила экономическое и политическое положение России установила в ней режим страха и насилия укрепила личную власть Ивана Грозного.
71353. ПРЕДМЕТ И МЕТОДЫ ИСТОРИИ ЗЕМЕЛЬНО-ИМУЩЕСТВЕННЫХ ОТНОШЕНИЙ И ЗЕМЛЕУСТРОЙСТВА 588.5 KB
  Развитие любого общества немыслимо без использования земли. Земля выступает в качестве средства производства во всех отраслях и сферах деятельности людей. Роль земли в отдельных отраслях производства неодинакова.
71357. Основи системного адміністрування ОС FreeBSD Unix 1.55 MB
  Завдання на роботу Відповідно до варіанту: створити облікові записи груп користувачів; створити облікові записи користувачів; додати облікові записи користувачів в необхідні групи, символ «+» означає приналежність користувача групі; створити каталоги і встановити необхідні права доступу...
71358. Установка і початкове налаштування ОС FreeBSD Unix 8.71 MB
  Контрольні питання Визначте основні можливості операційної системи FreeBSD Unix. Які функції виконує менеджер завантаження FreeBSD? Вкажіть особливості виділення дискового простору для FreeBSD Unix. Яким чином ядро системи іменує IDE диски?
71359. Розміщення графіки на Web-сторінці 228 KB
  Цей необов’язковий елемент визначає текст, який буде відображений браузером, що не підтримуює відображення графіки або з відключеною підтримкою зображень. Звичайно, це короткий опис зображення, який користувач міг би, чи зможе побачити на екрані.