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


 

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

26387. Анализатор: анатомический состав 21 KB
  – ветви глазничной. Иннервация: 1 нервы расположенные по поверхности мышц глазного яблока: слёзный и лобный нервы от глазничной ветви тройничного скуловой от в челюстной ветви тройничного блоковый н. 4 пара; 2 под мышцами глазного яблока: 3 пара – глазодвигательный 4 – отводящий носоресничный от глазничной ветви тройничного 2 – зрительный.
26388. Анатомия как наука 20.5 KB
  Как наука она вскрывает закономерности строения организма животных обусловленные функцией и факторами окружающей внешней среды.
26389. БРЮШНАЯ ПОЛОСТЬ (cavum abdominis) и паховый канал 24.5 KB
  В этой области выделяют область мечевидного хряща regio xiphoidea и два подреберья regio hypochondrica dextra et sinistra. Чревная область mesogastrium от реберной дуги до маклока tuber coxae В ней выделяют пупочную область regio umbilicalis и два подвздоха regio iliaca dextra et sinistra. Здесь выделяют лонную область regio pubica и два паха regio inguinalis dextra et sinistra. На латеральной поверхности живота различают поясничную область regio lumbalis или почечную regio renalis и бедренную область regio femoralis.
26390. Виды соединения костей 21.5 KB
  Костные синостозы кости черепа таза эпифиз и диафиз трубчатой кости у взрослых. Компоненты сустава: сочленяющиеся кости покрытые гиалиновым хрящём суставная сумка капсула суставная полость заполненная синовиальной жидкостью.
26391. Волосы (pili) 20.5 KB
  Есть подниматель волоса из гладкой мышцы m. Стержень: сердцевина определяет толщину волоса отсутствует в пуховых волосах корковое вещество определяет прочность упругость растяжимость и гибкость волоса содержит пигмент и кутикула – чешуйчатый слой защищает от влаги микрофлоры определяет рисунок волоса.
26392. Вспомогательные приспособления глаза 20 KB
  Наружная поверхность век покрыта волосатой кожей а внутренняя слсзистой – конъюнктивой которая переходит на глазное яблоко. По краю века около границы с конъюнктивой – ресницы у плотоядных и свиней на нижнем веке их нет. На внутреннем ребре края век открываются сальные железы их секрет предотвращают скатывание слёз через край век.
26393. Вспомогательные приспособления мышц 21 KB
  Каждая мышца упакована глубокой фасцией которая имеет футлярное строение. Она препятствует распространению инфекции экономит силу мышечного сокращения имеет собственные сосуды и нервы поэтому интегрирует функционирование костей связок и мышц. Могут находиться под кожей под мышцей под связкой под фасцией под сухожилием.
26394. Головная кишка 21 KB
  ответ и глотки. Глотка pharynx полостной орган в котором перекрещиваются дыхательный и пищеварительный пути: воздух из хоан через глотку проходит в гортань расположенную в вентральной части ее мощная мускулатура передвигает корм из глотки в пищевод расположенный над гортанью. Стенки глотки состоят из 3 слоев: а слизистая оболочка; 6 мышечный слой состоит из парных правых и левых поперечно исчерченных мышц заканчивающихся на дорсальном сухожильном шве глотки raphe pharyngis.
26395. Головной мозг (encephalon) и черепные нервы 22.5 KB
  Ромбовидный мозг представлен продолговатым отходят с 6 по 12 пары черепных нервов и задним мозгом а задний cocтоит из мозжечка и мозгового моста отходит 5 пара черепных нервов. Большой мозг представлен средним отходят 3 и 4 пары нервов промежуточным 2 пара нервов и концевым 1 пара черепных нервов В ромбовидном мозге расположен 4й мозговой желудочек в среднеммозговой водопровод в промежуточном 3й а в концевом 1й и 2й мозговые желудочки.