Как работать с объектами Excel без визуального отображения?
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



Как работать с объектами Excel без... Expand / Collapse
Автор
Сообщение
14.11.2005 18:03
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 16.12.2008 16:19
Сообщ.: 118, Visits: 1 577
На самом деле хотелось бы найти информацию как в памяти создавать рабочую книгу добавлять в нее листы и вписывать в ячейки этих листов данные.
Для начала.


xls = new Excel.Application(); //работает
а
book = new Excel.WorkbookClass(); //выкидывает ошибку

An unhandled exception of type 'System.Runtime.InteropServices.COMException' occurred in TestExcel.exe

Additional information: COM object with CLSID {00020819-0000-0000-C000-000000000046} is either not valid or not registered.


пространство имен Excel не подключено т.к. при подключенном пространстве ему не нравится [bold]Application[/bold] .Run(new Form1())
Сообщ. #884774
14.11.2005 18:20
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Для этого надо использовать методы самого Excel. Чтобы узнать какие именно - пользуйся макрорекордером. Например, создание новой книги создает код VBA
Workbooks.Add
Значит тебе надо написать
xls = new Excel.Application();
book = xls.Workbooks.Add();


Что касается ошибки появлюяйщеся при подключении пространтства имен Excel, то она ее причина в невозможности отличить класс System.Windows.Forms.Application от класса Application MS Excel. Компилятор просто не знает какой класс Application имеется в виду.

Выход простой - указать полное имя класса.
System.Windows.Forms.Application.Run(new Form1())
Сообщ. #884777
16.11.2005 11:55
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 16.12.2008 16:19
Сообщ.: 118, Visits: 1 577
Спасибо получилось!

А как форматировать текст и изменять параметры ячеек (столбцов, строк)?
Сообщ. #884912
16.11.2005 12:17
Supreme Being

Supreme Being

модератор
Last Login: 04.05.2008 13:32
Сообщ.: 7 240, Visits: 65 445
Пользуйся макрорекордером Excel, а затем переписывай код VBA на С#
Сообщ. #884915
16.11.2005 13:07
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 16.12.2008 16:19
Сообщ.: 118, Visits: 1 577
Понял спасибо!
Сообщ. #884922
21.11.2005 15:38
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 16.12.2008 16:19
Сообщ.: 118, Visits: 1 577
В макрорекордере выбор группы ячеек задается строкой вида "E6:J9" а как сделать подобное выделение на С#
Сообщ. #885260
21.11.2005 19:19
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 21.07.2006 17:11
Сообщ.: 484, Visits: 5 211
На РСДН недавно вышла статья по повроду работы с Ексель, возможно окажется полезной.

http://rsdn.ru/article/?697
Сообщ. #885273
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl

Время GMT +3:00, Сейчас 12:30