Проблемы с надстройками автоматизации C # и Excel - PullRequest
0 голосов
/ 07 сентября 2011

Я новичок в c # и пытаюсь создать надстройку автоматизации для Excel, и я следовал инструкциям, приведенным в этой статье

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

 =MultiplyNTimes(3,7,8)

, но когда я использую адреса ячейки

=MultiplyNTimes(A1,B2,C3)

excel не распознает функцию и выдает ошибку #NAME.

Отладка в VS, я вижу, что функция даже не вызывается.

Ответы [ 3 ]

1 голос
/ 07 сентября 2011

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

public double MultiplyNTimes(double number1, double number2, double timesToMultiply)

до

public double MultiplyNTimes(Excel.Range number1, Excel.Range number2, Excel.Range timesToMultiply)

.. чтобы он принимал адреса ячеек таблицы вместо числовых значений.

0 голосов
/ 23 ноября 2011

Я недавно использовал эту статью и смог отладить код, используя Excel 2007 и VS 2010. В настройках проекта, Debug> Start External program> Excel.exe.

Excel 2003 не поддерживается в VS2010, не уверен, что это является причиной проблемы.

0 голосов
/ 07 сентября 2011

Не очень элегантно, но попробуйте это:

=MultiplyNTimes(VALUE(A1),VALUE(B2),VALUE(C3))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...