C++ Builder: как получить переменную из Excel

Для получения переменной из Excel в среде C++ Builder используется технология OLE (технология связи и внедрения объектов или Object Linking and Embedding). Именно благодаря использованию данной технологии можно создавать документы, которые будут в качестве элементов содержать объекты, созданные при помощи других приложений.

В этой заметке я расскажу о том, как самым простым способом получить переменную из книги Excel.

Прежде всего, в создаваемое приложение необходимо включить такие модули:

1
2
#include "ComObj.hpp"
#include "utilcls.h"

После этого необходимо создать переменную типа Variant предназначенную для сохранения результатов вызова функции CreateOleObject. Выглядит это так:

1
2
Variant Excel;
Excel=CreateOleObject("Excel.Application");

Теперь необходимо открыть файл. Сделать это можно следующим образом:

1
2
AnsiString FileName=GetCurrentDir()+"\\File.xls";
Excel.OlePropertyGet("Workbooks").OleProcedure("Open",FileName.c_str());

Для того, чтоб сделать открытую страницу невидимой используется такая строка:

1
Excel.OlePropertySet("Visible",false);

Непосредственное получение переменной производится так:

1
String p=Excel.OlePropertyGet("Cells",1,1);

При этом будет выбрана ячейка А:1 (т.е. нумерация ячеек по вертикали и горизонтали начинается не с 0, а с 1).

Удачных экспериментов!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *