PRODUCT SUPPORT ANNOUNCEMENT
See the latest about COVID-19 shipping availability and video/Web Edition load errors. Learn more.
This eBook includes the following formats, accessible from your Account page after purchase:
EPUB The open industry format known for its reflowable content and usability on supported mobile devices.
MOBI The eBook format compatible with the Amazon Kindle and Amazon Kindle applications.
PDF The popular standard, used most often with the free Adobe® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.
"This is the book I wish I'd had when I was first introduced to VSTO and the .NET Framework. It will be invaluable not only to those considering VSTO, but for anyone transitioning from Office VBA to Visual Basic.NET. The wide range of subjects covered provides an entry point for the more in-depth, developer-oriented documentation available on MSDN and elsewhere."
–Cindy Meister, MS Word MVP
"VSTO for Mere Mortals™ does a great job of building a bridge between the worlds of VBA and VSTO. Kathleen and Paul show how a VBA developer can have the richness of Office and also the power, maintainability, and security of Visual Studio. They succeeded in writing a book that is approachable, understandable, and compelling."
–KD Hallman, General Manager, Microsoft, Developer Division
"This book is an excellent choice for VBA developers looking to make the switch to .NET development for Office using Visual Studio Tools for Office. In many instances VB.NET code is presented alongside equivalent VBA code to help illustrate key conceptual and usage differences."
–Steve Hansen, OfficeZealot.com, author of Mastering Excel 2003 Programming with VBA and coauthor of Mastering Excel 2000 Premium Edition
"Visual Studio 2005 Tools for Office is the way to go for building managed Office applications. If you're moving from VBA to managed code, this book shows you the way."
–Ken Getz, Senior Consultant, MCW Technologies, LLC
"This book is highly recommended for VBA developers who are interested in doing Office programming using the rich power of Visual Studio and .NET."
–Mei Liang, Software Design Engineer in Test, Microsoft
"Kathleen McGrath has stuffed VSTO for Mere Mortals™ with in-depth code samples that demonstrate VSTO in an easy-to-understand way. From simple how-to's to advanced functionality, it's all here. I learned a great deal from reading this book."
–Justin Whitney, Technical Journalist
"This book provides an instantly accessible resource for VBA and Office developers to become familiar with the powerful new Office development platform, but even goes beyond that, providing a number of 'worth the purchase of the book' tips, fully functional examples, and elegant methods from someone who has obviously spent a lot of time with these tools to help the mortal on the path to becoming a guru."
–Rory Plaire, Solutions Architect, DigitalCommons LLC
"For the Office VBA developer interested in programming in .NET or the .NET programmer looking to move to the Office platform, this book is worth its weight in gold. If you are looking for a complete, well-written source to quickly get you up to speed to develop and program Office solutions in Visual Studio 2005, I believe this book is a must-have."
–Frank Rice, Programming Writer, Microsoft Office Developer Center
"With this book, VBA developers have access to a great resource that will help them understand essential concepts of managed code and best practices to migrate VBA solutions to Visual Basic 2005 and Visual Studio 2005 Tools for Office. This book goes beyond an introduction to VSTO to introduce the new world of VSTO 2005 SE and the 2007 Microsoft Office system."
–Erika Ehrli Cabral, Site Manager, MSDN Office Developer Center, Microsoft
"Kathleen and Paul have been involved with VSTO in one way or the other from its very beginnings, and it shows. Their depth and breadth of knowledge is reflected in this detailed and authoritative book. I highly recommend it for any professional developer making the transition from VBA to managed code."
–Eric Lippert, Software Design Engineer, Microsoft
VSTO for Mere Mortals™ is for VBA developers who are interested in migrating their skills to the next generation of Office development. Readers will benefit from a straightforward, practical introduction to writing managed code applications for Word 2003, Excel 2003, and Outlook 2003. Readers will also learn how to create add-ins for the most popular applications for Office 2003 and the 2007 Microsoft Office system using VSTO 2005 SE.
The expert authors provide a wealth of code samples that show off popular features of VSTO, such as smart tags and the actions pane. Sample code also shows you how to customize the new UI features of the 2007 Microsoft Office system, including the ribbon, custom task pane, and Outlook forms region.
VBA developers will walk away with
Topics Covered in This Chapter 3
What Is VSTO? 3
Why Use VSTO Instead of VBA? 5
Features of VSTO 7
Creating VSTO Solutions 15
How VSTO Integrates with Visual Studio 22
Review Questions 26
Topics Covered in This Chapter 27
Introduction to the Visual Studio IDE 27
Viewing IDE Windows 35
Tools for Writing Code 52
Building and Running Code 61
Debugging Your Code 63
Locating and Using Help 82
Review Questions 88
Topics Covered in This Chapter 89
What Is Managed Code? 89
Introduction to Object-Oriented Programming 91
Exploring the .NET Framework 108
VSTO and Managed Code 120
Review Questions 127
Topics Covered in This Chapter 129
Moving to Visual Basic 2005 129
New Features of Visual Basic 2005 130
Language Differences of VBA and Visual Basic 2005 140
UserForms Versus Windows Forms 152Summary 170
Review Questions 170
Topics Covered in This Chapter 173
What Is a Task Pane? 173
Customizing the Document Actions Task Pane 175
Managing the Actions Pane 177
Designing Actions Pane Solutions 180
Creating Context-Sensitive Solutions 194
Review Questions 205
Topics Covered in This Chapter 207
Programming in Word 207
Word Host Items and Host Controls 218
Data Binding to Host Controls on Documents 233
Programming Against Events 240
Special Enhancements to the Bookmark 265
Making Word Documents Smart 269
Review Questions 271
Topics Covered in This Chapter 273
Programming in Excel 273
Excel Host Items and Host Controls 285
Data Binding to Host Controls on Worksheets 308
Programming Against Events 320
Making Excel Smarter 348
Review Questions 350
Topics Covered in This Chapter 351
About Controls 351
Adding Controls to Toolbars and Menus 352
Using Windows Forms Controls 365
Adding Controls to a Windows Form 378
Adding Controls to the Task Pane 388
Adding Controls to Excel and Word Documents 390
Review Questions 416
Topics Covered in This Chapter 417
What Is a Smart Tag? 417
Creating Word and Excel Smart Tags with VSTO 422
Understanding Smart Tag Properties 426
Taking Action on a Smart Tag 428
Introduction to Regular Expressions 436
Overriding Smart Tag Recognizers 446
Review Questions 455
Topics Covered in This Chapter 459
Application-Level Customizations Using VSTO 459
Outlook Object Model Overview 475
Customizing Menus and Toolbars in Outlook 482
Debugging Add-ins 486
Security in Outlook Add-ins Created with VSTO 492
Review Questions 497
Topics Covered in This Chapter 499
VSTO Security Model 499
Deploying Word and Excel Solutions 505
Deploying Outlook Solutions 528
Review Questions 529
Topics Covered in This Chapter 531
Migration Overview 531
Migration Strategies 532
Simple Migration of a Word VBA Project 534
Advanced Migration of a Word VBA Project 537
VBA and VSTO Interoperability 547
Review Questions 553
Topics Covered in This Chapter 555
ServerDocument Overview 555
Attaching and Detaching Document-Based Customizations 556
Reading and Writing the Data Cache 560
Clearing the Data Cache 571
Review Questions 572
Topics Covered in This Chapter 575
Introduction to VSTO 2005 SE 575
Creating Add-ins 584
Customizing the Ribbon 585
Creating Custom Task Panes 622
Creating a Custom Form Region 638
Review Questions 650