Посмотрите на этой статье MSDN Running Solutions in Different Versions of Microsoft Office
В основном то, что Microsoft говорит, что это возможно ПРЕДОСТАВЛЯЕМЫХ функции вы используете в своих надстройках в работы в обеих версиях офисной программы 2007 и 2010 (в вашем случае Excel)
Я не уверен относительно масштаба проекта, который вы пытаетесь построить, но из личного опыта. Мне всегда приходилось создавать две отдельные версии надстройки для целей 2007 и 2010 годов версии Office
Только что выяснилось, что номер версии можно получить из объекта Application. Я не успел поиграть с этим, но я предполагаю, что вы можете использовать ниже в случаях, когда код 2010 года несовместим с 2007 годом и выполняет код для соответствующей версии:
Microsoft.Office.Interop.Excel.Application app = Globals.ThisAddIn.Application;
string version = app.Version;
if (version == "14.0")
{
//If Excel 2010 do something
}
else if (version == "12.0")
{
//If Excel 2007 do something else
}