This documentation is archived and is not being maintained.

Office Development in Visual Studio

You can extend Office 2013 and Office 2010 by using Office developer tools in Visual Studio. You can build two types of solutions: solutions that focus on web integration and solutions that target the .NET Framework and are more deeply integrated with the Office object model.

By creating apps for Office, you can create visually rich solutions that integrate data and web content. For example, you can create a more effective sales report by combining sales data from a database for managing customer relationships with the web service for Bing maps.

An app for Office is essentially a webpage that appears in an Office app. You can use a JavaScript object model to access the information in documents that are open in Excel, Word, and Project. You can also access information in Outlook items such as information in the body of an email message or an appointment item. You can develop an app for Office by using familiar web-based languages such as HTML 5, CSS, and JavaScript, and you can connect to REST and web services through HTTP and AJAX. For more information, see What’s new for Office 2013 developers.

You don’t have to use Visual Studio to create an app for Office, but you can create one more easily by using the templates, visual editors, and automated packaging tools in Visual Studio. For more information, see Create Apps for Office by using Visual Studio. .

If you want to create solutions that deeply integrate with Office and leverage the full power of the .NET Framework, an add-in or customization might be a great option. An add-in runs when an Office app, such as Excel, is started. Add-ins can affect any document that the user opens. Each customization is associated with a specific document.

By using an add-in or customization, you can create UI elements that blend in with default elements of the Office UI. For example, you can add custom tabs, groups, and commands to the ribbon or task panes that appear next to open documents. You can create these elements by adding controls to a visual designer, and you can configure their appearance and behavior by setting properties in the Properties window. You can handle events on those UI elements. In your event-handling code, you can automate Office tasks or provide custom logic that uses the .NET Framework to interact with a database or service.

Add-ins and customizations provide the deepest integration with Office while giving you all the benefits of using the .NET Framework. However, each add-in and customization must be installed on user machines, so these solutions might be more difficult to deploy and support. For more information, see Create Add-ins and Customizations for Office by using Visual Studio..