Я уже ответил на это для Word, но это также относится и к Excel:
Если вы хотите выполнить развертывание в Office 2010 и 2007, необходимо добавить ссылки на сборки v12.0 ( Microsoft.Office.Interop.Excel и Office ).
Теперь по-прежнему существует проблема, заключающаяся в том, что вашему надстройке потребуется PIA 2007 года, но они не будут установлены, если у вас есть только Office 2010 на целевом компьютере (потому что у них есть Office 2007 в качестве предварительного условия).
Чтобы решить эту проблему, вы должны установить Embed Interop Assemblies = true для этих двух dll (в ссылочных свойствах) и использовать dynamic
для типов, которые вы больше не можете напрямую ссылаться.
Это вызывает некоторые «странности», когда Intellisense не находит методы и т. Д., Но это не должно быть большой проблемой - по крайней мере, теперь PIA больше не требуется, и ваше дополнение будет развернуто как в 2007, так и в 2010 году (вам придется позаботьтесь и об установщике, но это уже совсем другая история).
Это немного беспорядок, но если вы работаете с VSTO, я полагаю, вы привыкли к таким вещам: -)