The Visual Studio 2013 documentation does not list Excel 2007 as one of the versions supported in the document-level customization solutions.
http://msdn.microsoft.com/en-us/library/aa942839.aspx
If I go the route of a document-level customization solution I will need it to be able to be deployed to Excel 2007 because that is the version of Office the users will have.
Do I need to develop in an earlier version of Visual Studio to get this to work? - or can I develop Excel 2007 document solutions in Visual Studio 2013? If so, will I need office 2007 installed on my development machine?
A similar question has been asked regarding Visual Studio 2012 below:
VSTO 2012: backward compatibility
Thanks!
Related
I am working on making a Outlook Add-in for Outlook 2013. The issue is, I use Visual Studio 2010. I did some googling and found that I need the Developer Tool Kit and it lead me here. I installed the tool kit, but I am still not seeing any new Templates. What am I doing wrong, or what can I do to get that Outlook Add-in?
Thanks in advance!
Unfortunately VSTO allows creating version-specific add-ins. VSTO 2010 (Visual Studio 2010 Tools for Office Runtime) is shipped with Visual Studio 2010 Professional edition or above. It supports creation and editing of document- and application-level add-ins for Office 2007 and Office 2010. You need to use later Visual Studio versions for creating COM add-ins for Office 2013. However, you can run solutions in Office 2013 that were created in earlier Visual Studio versions, see Running Solutions in Different Versions of Microsoft Office for more information.
Is it possible to install assemblies or tools for Microsoft Office 2013 on development machine that has Microsoft Office 2016?
Or for example can i target/develop for multiple versions of Microsoft Office on a development PC that has Microsoft Office 2016?
You can support lower Office versions out of the box. Solutions that were created by using Visual Studio 2013, Visual Studio 2013 or Visual Studio 2010 can run in Office 2013, Office 2010, or the 2007 Microsoft Office system. However, the solution can use only those features and APIs that are available in all three versions of Office. See Running Solutions in Different Versions of Microsoft Office for more information.
We need to develop add-in for the Office 2016. We are using the Visual studio 2013. It is only showing the Office 2013 add-in templates. Is it possible to create Office 2016 add-in from Visual studio 2013? If so, kindly let me know the steps.
You need VS 2015 to get the specific templates for Office 2016. VSTO only ever provides templates for "current" versions of Office.
If Office 2013 is installed you can develop an Add-in for it. There should be no problem installing and running it in Office 2016 - unless you want to use technology specific to 2016. In that case, you could use late-binding (PInvoke) for the 2016-specific portions, but debugging/testing would be a bit of a pain.
You can download the free Visual Studio 2015 Community edition (https://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx) as well as the VSTO package (https://www.visualstudio.com/en-us/features/office-tools-vs.aspx): VSTO does integrate into the Community edition for version 2015 (and 2013, for that matter). Licensing restrictions would apply, of course.
Other than that, you'd need to upgrade to a full VS 2015.
You can develop and run Office 2016 addins in VS2013. No need to upgrade to VS2015.
Install VSTO 4.0 extension for VS2013
Create Office 2013 plugin using Visual Studio template
Open project file and replace office version string "15.0" to "16.0" in ProjectExtensions section. Look for this of similar string to edit:
OfficeVersion="15.0" VstxVersion="4.0" ApplicationType="Outlook" Language="cs" TemplatesPath="" DebugInfoExeName="#Software\Microsoft\Office\15.0\Outlook\InstallRoot\Path#outlook.exe"
Yes, it is possible. The add-in created in Visual Studio 2013 can be run in Office 2016. You can read more about that in the Running Solutions in Different Versions of Microsoft Office article.
In case if you need to use new methods and properties available only in Office 2016 you can use the Reflection mechanism (see Type.InvokeMember).
there is an example for Outlook, i tried it for Excel and it works as well.
my example:
<ProjectProperties HostName="Excel" HostPackage="{29A7B9D7-A7F1-4328-8EF0-6B2D1A56B2C1}" OfficeVersion="16.0" VstxVersion="4.0" ApplicationType="Excel" Language="vb" TemplatesPath="" DebugInfoExeName="#Software\Microsoft\Office\16.0\Excel\InstallRoot\Path#excel.exe" DebugInfoCommandLine="/x" AddItemTemplatesGuid="{DCFE8D25-4715-4C33-9EAB-A34A9EBC9544}" />
i changed
OfficeVersion="15.0"
to
OfficeVersion="16.0"
and the path to Excel
#Software\Microsoft\Office\16.0\Excel\
as well, finally it starts in Excel 2016...
Visual studio suggest to create different VSTO project for outlook 2010 and outlook 2013 like a picture. However my Addin for outlook 2010 also works and for 2013. Any body know about different in these approaches?
The difference is that Outlook 2010 interops will be used in the project. So, IntelliSense will not show you methods and properties introduced in latest (Outlook 2013) versions.
See Running Solutions in Different Versions of Microsoft Office for more information.
I'll be starting a new project in Visual Studio 2012, using a VB Excel template but the only options are for Excel 2013 (there are three options around Add-in, Template or Workbook) but majority of the users will be using 2007 and 2010 Excel.
Would an Excel 2013 project be backward compatible with 2007 and 2010? Or must I download a separate template that is not offered in the vanilla version of VS2012?
Thanks :)
These are the project options:
Look,
Select .NET Framework 4 and you will be able to see all the templates...