Ресурсы для изучения c# Excel interop [закрытый]

Как будто вы пытаетесь получить доступ к объекту, который является null. Рассмотрим ниже пример:

TypeA objA;

. В это время вы только что объявили этот объект, но не инициализировали или не инициализировали. И всякий раз, когда вы пытаетесь получить доступ к каким-либо свойствам или методам в нем, он будет генерировать NullPointerException, что имеет смысл.

См. Также этот пример:

String a = null;
System.out.println(a.toString()); // NullPointerException will be thrown
24
задан pnuts 11 September 2015 в 06:22
поделиться

7 ответов

Статья , Понимая Excel Object Model из Visual Studio 2005 Перспектива Разработчика Ken Getz касается объектной модели Excel подробно. Примеры кода находятся и в VB.NET и в C#.

Некоторые важные протесты покрыты в C# и VBA: Как Нефть и Вода , также Ken Getz.

я также видел бы статью: , Как создать Office дополнение COM при помощи Визуальной.NET C# .

HTH...

11
ответ дан Mike Rosenblum 29 November 2019 в 00:17
поделиться

1) Первая вещь сначала; Загрузите Office блоки Interop , от которого Вы получите доступ ко всем объектам, свойствам и методам в Excel interop и соответствующих ссылках на Ваш проект. ЗНАТЬ: Любой машине, что Вы намереваетесь работать на своем коде, будут нужны эти блоки, установленные также. Можно или включать их в пакет установки, или они идут с платформой.NET 1.1, поэтому если клиентам установят это, у них, вероятно, будут interop блоки.

2) существует богатство знания о MSDN... в значительной степени все объекты и методы, которые Вы будете использовать, будет хорошо зарегистрирован там.

3) ПРИМЕЧАНИЕ: Одна странная небольшая вещь об использовании Interop с C# состоит в том, что необходимо предоставить "недостающие" ссылки для вызовов interop вручную... т.е. При использовании функций в VBA (если Вы привыкли делать это), если вызовы метода 3 аргументов и последних двух являются дополнительными, можно "пропустить их" в VBA (т.е. MyMethod argumentOne)... это не работает от.NET , это - одна вещь, которая смутила меня некоторое время, когда я начал использовать блоки Interop; необходимо вручную создать недостающий объект как это (пример из Word Interop, но те же принципалы относятся к Excel или любому другому офису пакет Interop (и также необходимо упаковать некоторые аргументы и пройти мимо них касательно как ниже):

object missing = System.Reflection.Missing.Value;
string somestring = "string";
object refstring = (object)s;
wrd.Selection.Hyperlinks.Add(wrd.Selection.Range, **ref refstring, ref missing, ref missing, ref missing, ref missing**);

я надеюсь, что это помогает.

7
ответ дан BKimmel 29 November 2019 в 00:17
поделиться

Если Вы надеетесь изучать Excel Object Model, справка VBA довольно хороша.

Вы могли бы использовать "Primary Interop Assemblies" для работы с Excel

2
ответ дан shahkalpesh 29 November 2019 в 00:17
поделиться

Можно изучить много путем записи макроса (в Excel) и анализа того, что произошло.

Мой основной язык программирования является C#, но для моей коммуникации к Excel (или другой Office/COM-объекты) я всегда использую VB.Net. Это облегчает передавать от VBA (зарегистрированного) к.Net.

VB.Net делает свое более легкое для работы с поздним связыванием. Сначала я использую раннее связывание (получает меня Intellisense), впоследствии я изменяю свои типы для Возражения, таким образом, я больше не завишу от определенной версии Office.

1
ответ дан GvS 29 November 2019 в 00:17
поделиться

MSDN всегда стоит чтения.

1
ответ дан Ben Hoffstein 29 November 2019 в 00:17
поделиться

Вот достойная статья с некоторыми полезными примерами.

1
ответ дан Lance Roberts 29 November 2019 в 00:17
поделиться

MSDN имеет богатство информации...

http://msdn.microsoft.com/en-us/library/ms173186 (По сравнению с 80) .aspx

0
ответ дан GEOCHET 29 November 2019 в 00:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: