35136

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

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

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

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

Русский

2013-09-09

45.5 KB

5 чел.

Практическая работа №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. Создание нового листа книги. Генерация таблицы из двух столбцов: порядковый номер и значение (в качестве значения можно взять, например, арифметическую или геометрическую прогрессию, последовательность Фибоначчи и пр.). Построение диаграммы по таблице. Вычисление дисперсии в столбце, выбранном пользователем, с занесением в его последнюю ячейку. Печать таблицы. Сохранение книги.


 

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

23271. Поняття філософії економіки 29 KB
  По б у то в ий це рівень філософії людини яка прагне шляхом генерування і реалізації своїх ідей забезпечити собі та своїй сімї нормальне життя. Державний рівень церівень державного мислення сконцентрованих дій спрямованих на розвиток економіки всієї країни зростання продуктивних сил і національного багатства підвищення добробуту народу. Державний рівень економічної філософії найважливий рівень який є філософською основою розвитку.
23272. Бальзак 31.47 KB
  На початку 30х років у Бальзака виникає задум створити цикл романів в яких він хотів змалювати сучасну йому Францію дослідити суспільство визначити рушійні сили його розвитку основні типи і характери людей. Остаточно зміст і структуру цього твору Бальзак визначив на початку 40х років тоді ж і виникла назва Людська комедія . Бальзак порівнює життя суспільства з життям природи тому ставить собі за мету описати його визначити основні види типи на які поділяється суспільство. Вміння Бальзака розкривати органічний взаємозв'язок окремого...
23274. Історичні романи В.Скотта 18.43 KB
  Історизм Скотта не тільки антикварний а й те як люди виявляли себе в той чи інший період. Позиція Скотта ніколи не переміщувати обєкт погляду на історію власний погляд на рух історії історія ніколи не йде крайнощами вона завжди знайде десь серединний шлях. В його пригодах найбільше приваблює читача не розповідь про кохання до шляхетної і цнотливої леді Ровени з якою Айвенго врештірешт щасливо одружується а його романтична закоханість у красунюєврейку Ревекку один з найпривабливіших жіночих характерів у Скотта дівчину із...
23275. Гофман 20.18 KB
  Гротескнофантастичний романтизм Гофмана На останньому етапі творчості Гофмана остаточно визначається його гротескнофантастичний романтизм. Але найуживанішим і найефективнішим художнім засобом стає у Гофмана гротескгротеск це вільне й примхливе поєднання різних образів і мотивів вільна гра з ними викличне ігнорування раціоналістичної розсудливості й зовнішньої правдоподібності. У цьому плані дуже характерним твором Гофмана є повістьказка Малюк Цахес яка повністю складається з образівгротесків гротескних ситуацій і вся є...
23276. Гюго 22.53 KB
  Гюго Оди й різні вірші 1822 до якої ввійшли вірші створені переважно за правилами класицизму. Відкинувши класицистичну нормативність Гюго ввів у французьку поезію нові форми й розміри створив нову систему віршування велику увагу приділив звуковій організації вірша його ритмомелодиці. останній роман Гюго присвячений революції 93 рік 1874 р. Поезія Гюго.
23277. Диккенс 23.65 KB
  Діккенса можна поділити на чотири періоди. Показовим для цього періоду творчості Діккенса є побудований на матеріалах побутового нарису роман Посмертні нотатки Піквікського клубу 1837. Другий період творчості Чарлза Діккенса Другий період творчості письменника значною мірою пов'язаний з закордонними подорожами письменника по Італії Швейцарії Франції США. У цей час ще яскравіше проявився талант Діккенсапубліциста Американські замітки майстра нарисів Картини Італії .
23278. Едгар По Творчий доробок 19.49 KB
  По 373839 Творчий доробок його талант багатогранний це проза поезія літкритичні статті рецензії науковоастрономічна поема засновник детективного жанру у літру ввійшов як новеліст 64 новели перша Рукопис знайдений у пляшці одне з найкращий оповідань Золотий жук двотомна збірка оповідань Гротески та арабески поезія Крук Оповідання По відрізняються одне від одного сюжетом настроєм тональністю так що здається важко знайти для них якийсь тематичний і стилістичний спільний знаменник за яким ми пізнаємо руку того...