Introduction
Elements of this syllabus are subject to change.
This two-day instructor-led course provides students with the knowledge to develop solutions based on Microsoft Word
2003, Microsoft Excel 2003, or Microsoft Outlook 2003. You'll learn about the types of solutions you can create with
Visual Studio Tools for Office, understand how to work with the Microsoft Office object models, find out how to create your own user interface through Windows forms or the Actions pane, learn about deploying your solutions to end-user computers, and much more.
Audience
This course is intended for students who want to develop solutions and have a programming background and some experience in Visual Basic.
At Course Completion
After completing this course, students will be able to:
Build solutions with Microsoft Office using Visual Basic
Read and understand examples from other sources that are presented in C#
Prerequisites
Before attending this course, students must have:
Familiarity with Visual Studio 2003 or 2005 and .NET Framework
:: Course 50059A ::
Module 1: Getting Started with Visual Studio Tools for Office
This module explains solutions that can be built using Visual Studio 2005 Tools for the Microsoft Office system, together with the Microsoft Office 2003 system.
Lessons
Building Solutions with the Microsoft Office System
Creating Your First Visual Studio Tools for Office Project
Taking a Closer Look at an Office Project
Lab 1: Getting Started with Visual Studio Tools for Office
Overview
Creating a Word Code-Behind Solution
Adding Code to a Word Event
After completing this module, students will be able to:
Build solutions using Visual Studio 2005 Tools for the Microsoft Office system together with the Microsoft Office 2003 system
Create a simple Visual Studio Tools for Office solution
Understand the components that make up a Visual Studio Tools for Office solution
Module 2: Working with Office Object Models
This module explains how unmanaged objects work in a managed code environment to write code that runs in response to users’ actions and how to control objects through code.
Lessons
Using COM Objects in a Managed Code Environment
Working with Properties, Methods, and Member Objects
Responding to Events
Using Word Objects
Working with Excel Objects
Navigating Outlook Objects
Lab 2: Working with Office Object Models
Overview
Using Active Objects in Excel
Spell-checking a Document on Close
Creating a New Assignment
:: Course 50059A ::
After completing this module, students will be able to:
Understand how unmanaged objects work in a managed code environment
Launch an Office application from a console application
Write code that runs in response to a user’s action
Control some of most commonly used Excel, Work, and Outlook objects through code
Module 3: Understanding Special Techniques for C# Programmers
This module explains how to handle optional parameters and how to declare variables and accessor methods provided by the Word and Excel PIAs to read and change properties.
Lessons
Using C# to Work with the Office Object Models
Dealing with Optional Parameters
Sending Arguments by Reference with Word
Exploring Accessors in the Excel and Word PIAs
Using Late-Bound Members
Lab 3: Understanding Special Techniques for C# Programmers
Overview
Highlighting the Data in a Range
Adding a New Document
Spell-Checking a Document
After completing this module, students will be able to:
Handle optional parameters in Excel and Word object members
Declare variables and send them by reference when calling Word methods
Explore some of the accessor methods provided by the Word and Excel PIAs to read and change properties
Understand how the System.Reflection namespace can help work late-bound objects at design time
Module 4: Creating Add-Ins for Office
This module explains how to enhance applications by add-ins, use automation add-ins to provide new functions to Excel, and solutions using Outlook VSTO add-ins.
Lessons
Defining Add-Ins
Creating Your Own Functions with Excel
Building COM Add-Ins in Word and Excel
Creating VSTO Add-Ins in Outlook
:: Course 50059A ::
Lab 4: Creating Add-Ins for Office
Overview
Creating an Excel User-Defined Function
Building a Word Add-In
Creating a VSTO Add-In for Outlook
After completing this module, students will be able to:
Understand how an add-in provides application-wide enhancements
Use automation add-ins to provide new functions to Excel
Understand which problems inherent in managed code COM add-ins are solved with Outlook VSTO add-ins
Module 5: Building Code-Behind Solutions
This module explains how to use the Visual Studio templates to create code-behind solutions, add a Windows Forms control directly to the document, and understand how host controls add functionality.
Lessons
Adding Managed Code to an Office Document
Working with Windows Forms and Controls
Using Host Controls
Lab 5: Building Code-Behind Solutions
Overview
Creating an Excel Code-Behind Solution
Restoring a Default View at Startup
Adding a Combo Box to Sort a List
After completing this module, students will be able to:
Use the Visual Studio templates available in Visual Studio Tools for Office to create code-behind solutions for Word and
Excel
Understand the two files that make up a code-behind solution
Add a Windows Forms control directly to the document in a code-behind project
Understand how host controls add functionality to some commonly used objects in Word and Excel
:: Course 50059A ::
Module 6: Working with the Actions Pane
This module explains how to take control of the task pane in Word and Excel, how to use the ActionsPane control, and how to add and remove controls.
Lessons
Introducing the Actions Pane
Adding Multiple Controls with the User Control
Making the Actions Pane Context-Sensitive
Lab 6: Working with the Actions Pane
Overview
Adding an Actions pane to a Word Solution
Using the Actions Pane to Provide Context-Sensitive Help
After completing this module, students will be able to:
Take control of the task pane in Word and Excel
Understand how the ActionsPane control relates to the task pane seen in Word and Excel
Use the user control to design the Actions pane
Add and remove controls from the Actions pane, both at startup and after the user has worked with the document
Module 7: Creating Data-Driven Solutions
This module explains the basics of ADO.NET, how to add a DataSet to a solution, how to add DataTables, and how to bind a set of rows to a list.
Lessons
Setting Up a Data Source
Binding Data to an Excel Workbook
Binding Data to a Word Document
Using Data in the Actions Pane
Lab 7: Creating Data-Driven Solutions
Overview
Setting Up a Data Source
Implementing an Actions Pane Query UI
Binding a Worksheet List Object
:: Course 50059A ::
After completing this module, students will be able to:
Understand the basics of ADO.NET and how those basics apply to data-driven solutions in Word and Excel
Add a DataSet to a solution and add DataTables based on queries designed rather than stored database objects
Bind a single field to a host control in Word and Excel
Use a control when and with what rows DataTables are filled in a solution
Try out data binding in an Actions pane
Module 8: Deploying Visual Studio Tools for Office Solutions
This module explains the deployment modes, how to use manual techniques to deploy a document-based solution, and how to set a security policy.
Lessons
Sharing Your Solutions with Others
Deploying Your First Word or Excel Solution
Deploying to Different Folders
Deploying with the Publish Wizard
Deploying an Outlook Add-In
Lab 8: Deploying Visual Studio Tools for Office Solutions
Overview
Deploying a Solution to a Single Folder
Deploying a Solution’s Document to a Different Folder
Deploying a Strong-Named Solution with the Publish Wizard
After completing this module, students will be able to:
Understand deployment models that can be used to share solutions with others
Understand what must be installed on an end-user computer to run solutions
Use manual techniques to deploy a document-based solution
Set a security policy so that a solution can run on the end-user’s computer
Understand how application and deployment manifests work
Programme scope, delivery arrangements and suitability are confirmed during enquiry.