Microsoft Office Excel 2003 Preview


Siew Moi Khor
Microsoft Corporation

June 2003

Applies to:
   Microsoft® Office Excel 2003

Summary: Preview the new features and enhancements in the latest version of Microsoft Excel, Excel 2003, such as list, improved Extensible Markup Language (XML) support, Smart Document solutions, research library, statistical function improvements, and smart tag enhancements and improvements. (23 printed pages)


Excel List Management
List Integration with SharePoint Products and Technologies
Excel List Object Model
Improved XML Support
XML Programmability
Smart Document Solutions
Smart Tags
Statistical Function Improvements
Document Workspace Sites with Windows SharePoint Services Integration
Research Library
Miscellaneous Features


The new features in Microsoft® Office Excel 2003 revolve around making common tasks easier, such as list for simplified data management, and integration with Microsoft SharePoint™ Products and Technologies for workplace collaboration. There are also added features and improvements that will appeal to Office developers.

  • XML integration for full fidelity XML file handling
  • Smart tag improvements
  • New Smart Documents which when combined with Microsoft Office Excel 2003 XML improvements, make Office solutions more robust and more compelling.

Excel 2003 also made some changes to statistical functions to ensure that they are as correct as possible.

This article provides a high level preview of Excel 2003 new features and enhancements:

  • Excel list management
  • List integration with SharePoint Products and Technologies
  • XML enhancements and improvements
  • Statistical functions improvements
  • Smart Documents solutions
  • Document Workspace sites
  • Research Library
  • Smart tags improvements and enhancements
  • Miscellaneous features

This article assumes you are familiar with Excel. If not, you can find more information about Excel on the Microsoft Office Web site on MSDN.

Excel List Management

Excel is commonly used to analyze data and one of the most common data related activities in Excel is creating lists. Users will find it easy to view, edit and update lists in Excel 2003. There is also a new user interface and behavior for list ranges in Excel 2003.

In Excel 2003, you can create lists to group and act upon related data using existing data or from an empty range. When you specify a range as a list, you can manage and analyze the data independent of other data outside of the list. Excel list is designed to bring semi-structure around a range in the worksheet where users commonly work with list-like data.

With Excel lists, you get database-like functionality in the spreadsheet. Although geared toward end-user scenarios, Excel lists are fully programmable as lists are exposed through Excel's object model and therefore can be leveraged by developers.

Additionally, information contained within a list can be shared with others through integration with Microsoft Windows SharePoint Services. For ranges that are designated as lists, Excel users will be able to share the list by publishing it. Users will also be able to import lists into Excel, or link to them so that changes to the list are shared between the server and the Excel client. This allows you to easily share your list and allows people with the right permission to view, edit, and update the list. You can also synchronize changes with the SharePoint site so other users can see updated data by linking the list. Excel 2003 also provides conflict resolution when updating lists from Excel, and allows lists to be modified offline using Excel's Binary File Format (BIFF).

Figure 1. Creating a list from a range with data

Using the Create List command, you can create a list in an empty range, or one with data as shown in Figure 1. You can create one or more lists on a single worksheet.

The list user interface and a corresponding set of functionality are exposed for ranges that are designated as a list. As can be seen in Figure 2, it is easy to identify and modify the contents of the list with the aid of the list visual elements and functionality.

Figure 2. A list user interface

The user interface (see Figure 2) shows that there is something special about the range, and exposes common commands for working with lists.

  • AutoFilter is enabled by default in the header row for every column in the list. This allows you to easily sort or filter your data in ascending or descending order, or create custom sort orders. You can also filter lists to show only the data that meets the criteria you specify.

  • It's easy to expand the list. You just type in the row in the list frame that contains an asterisk (called the insert row). Typing information in this row will automatically add data to the list and expand the list range.

  • The list range also has a resizing handle at the bottom right corner of the list border that you can use to expand or contract the list range.

  • You can add a total row to your list as shown in Figure 3. Clicking on a cell within the total row displays a drop-down list of aggregate functions that you can use.

  • The range of cells that compose your list is clearly outlined by the dark blue list border.

    Figure 3. A list with a total row

  • To ensure data integrity, you can add data validation. For example, you could choose to allow dates between a certain periods only in the date column. This applies to standalone lists only, and not to lists linked to a SharePoint list. You can also format cells in a list the same way you format cells in a worksheet. Additionally, you can also add conditional formatting to lists.

  • Excel users invest a lot of their time and data in workbooks. With Excel 2003, users can leverage the power of lists and also the analysis power of Excel at the same time.

List Integration with SharePoint Products and Technologies

Excel 2003 lists allow you to share the information contained within a list through seamless integration with Products and Technologies. You can create a SharePoint list based on your Excel list on a SharePoint site by publishing the list as shown in Figure 4 (to display the Publish List dialog box, in the Data menu, point to List and click Publish List). Figure 5 shows how the published list looks on a SharePoint site.

Figure 4. The Publish List to a SharePoint site dialog box

Figure 5. A published Excel 2003 list on a SharePoint site

If you choose to link the list to the SharePoint site, any changes you make to the list in Excel 2003 will be reflected on the SharePoint site when you synchronize the list.

You can also use Excel to edit existing SharePoint lists. You can modify the list offline and then synchronize your changes later to update the SharePoint list as shown in Figure 6. And you can use conflict resolution to resolve any conflicts.

Figure 6. Synchronizing data between Excel 2003 and Windows SharePoint Services

Excel 2003 lists also provide a way for users to collaborate on list data, and store it in a way that makes it accessible from anywhere, anytime. You can link a list to a custom SharePoint list, which will allow you to easily edit that list offline. You link a list by publishing it, programmatically by using the object model, or by exporting from a SharePoint site.

Excel List Object Model

You can also programmatically manipulate a list by using the list object model. For example, the ListObjects collection object is a collection of all ListObject objects on a worksheet. The ListObject object is a member of the ListObjects collection. Individual ListObject objects in the ListObjects collection are indexed beginning with 1 for the first object, 2 for the second object, and so forth.

Besides the ListObjects collection, there are also ListRows and ListColumns collections. They are associated methods and properties related to these objects that you can use to programmatically manipulate lists.

For example you can add a new column to a list as that is not linked to the Windows SharePoint Services as follows:

    Dim objWksheet As Worksheet
    Dim objNewCol As ListColumn
    Set objWksheet = ActiveWorkbook.Worksheets("Sheet1")
    Set objNewCol = objWksheet.ListObjects(1).ListColumns.Add

You can get a list range, a list header row address, a list row range and so forth using the list range object and address property as shown below:

    Dim objListObj As ListObject
    Dim objListRow As ListRow
    Set objListObj = ActiveSheet.ListObjects(1)
    Set objListRow = objListObj.ListRows(5)
    Debug.Print objListObj.Range.Address
    Debug.Print objListObj.HeaderRowRange.Address
    Debug.Print objListRow.Range.Address

The following example retrieves the header row name of the second column of the first list:

    Dim objListObj As ListObject
    Set objListObj = ActiveSheet.ListObjects(1)
    Debug.Print objListObj.ListColumns(2).Name

You can also import a SharePoint list into Excel programmatically as opposed to exporting a SharePoint list to Excel 2003 from a SharePoint site itself as demonstrated by the following subroutine.

**Note   **If you want to import the SharePoint list, you must have permission to use a server running SharePoint Products and Technologies.

Sub ImportSharePointList()
    Dim objMyList As ListObject
    Dim objWksheet As Worksheet
    Dim strSPServer As String
    Const SERVER As String = "mySharePointSite"
    Const LISTNAME As String = "{20B4CF11-ACD8-460B-895E-55213C79FEA6}"
    Const VIEWNAME As String = ""
   ' The SharePoint server URL pointing to 
   ' the SharePoint list to import into Excel.
    strSPServer = "http://" & SERVER & "/_vti_bin"
    ' Add a new worksheet to the active workbook.
    Set objWksheet = Worksheets.Add
    ' Add a list range to the newly created worksheet
    ' and populated it with the data from the SharePoint list.
    Set objMyList = objWksheet.ListObjects.Add(xlSrcExternal, _
        Array(stServer, LISTNAME, VIEWNAME), True, , Range("a2"))
    Set objMyList = Nothing
    Set objWksheet = Nothing
End Sub

The LISTNAME and VIEWNAME are the appropriate GUIDs for the SharePoint list. The easiest way to get the list GUID is to click the Modify settings and columns link (see Figure 5) located on the left frame of the SharePoint list. You will need at least Web Designer permissions on the SharePoint site to do this.
In the Microsoft Internet Explorer address field, you'll see something like


where the list GUID is the part after "List=".

The view GUID is optional. You can get the view GUID by using the following procedure. View the SharePoint list in HTML by clicking Show in Standard View (see Figure 5) on the Datasheet toolbar. (Note that if your default view is already an HTML view, you don't need to do this step.) When in HTML view, click Edit in Datasheet (see Figure 7).

Figure 7. An HTML view of a SharePoint list

In the Internet Explorer address field, you'll see something like


The view GUID is the part after "View=". The GUID is encoded, and can't be used as is. You would need to replace

  • %7B with {,
  • %7D with }
  • %2D with – (hyphen)

before it can used it in the code.

Improved XML Support

More and more data is being expressed in XML, and many users want to get that data into Excel to view, analyze, and manipulate the data. The power of Excel in layout, formatting, calculation, and printing make it a great tool for creating reports. Many users now want to enhance their spreadsheet publishing by using more flexible raw data manipulation, and are looking to XML technologies to do this. Users also want easy ways to bring this into Excel, edit the data, and write it back out while preserving the original schema.

Excel 2003 improves upon its XML support. As with Microsoft Office Word 2003, Excel now supports the use of customer-defined schema. Developers are no longer limited to using the native Excel XML file format (XMLSS), as was the case with Excel 2002. They can now create applications that are based on business-relevant XML definitions. So, instead of writing cumbersome XSLT files to transform XML data to and from XMLSS, developers can now attach their own schema and interchange data with Excel easily.

Through the use of XML, content becomes free-flowing, unlocked data, which can be manipulated and repurposed in parts or fully as needed. Also through XML, the sharing of information between documents, databases, and other applications is simplified.

The XML support in Excel 2003 greatly reduces the amount of code that needs to be written and maintained by developers in order to get XML data into Excel. End users don't need to know anything about XML as they can continue to go about their usual tasks of viewing, editing, and writing the data back out. In short, users can continue using Excel the way they always have. They don't need to know anything about XML to take advantage of its capabilities and power in Excel.

Some scenarios that Excel 2003 XML now enables:

  • an XML editor for customer-defined schemas
  • an analytic content provider
  • an automated XML data viewer
  • an interactive data reporting tool

Using Excel 2003 as an XML Editor for Customer-Defined Schemas

Excel 2003 has the ability to support customer-defined schemas and enable solutions that use any XML schema to be mapped within the structure of a spreadsheet. Excel 2003 provides a visual data mapping tool similar to that in Word (as shown in Figure 8). Note however that Excel only supports XSD. XDR and DTD aren't supported. However, if a user doesn't have a schema associated with the XML file, Excel will infer one on the fly and store it with the XLS/XMLSS.

Figure 8. Customer-defined XML mapping in Excel

This tool allows developers to see the XML structure in the task pane and quickly create a structured spreadsheet document. It provides you with a visual view of your schema, and enables WYSIWYG drag and drop mapping of your schema elements into the workbook.

Unlike the visual tags that surround the XML elements inline in a Word document, mapped elements in Excel are designated with blue, nonprinting cell borders. Logically recurring XML patterns get integrated within the new list feature. The entire XML feature set is built on top of the new list feature.

Developers can apply XML schemas to a new workbook or leverage existing ones as appropriate. For advanced spreadsheet models that require the support of various data structures simultaneously, Excel workbooks also support the mapping of multiple XSD schemas.

A single translation or mapping of a schema into a workbook is called a map. You can have several maps in one workbook, as long as they don't have overlap ranges. The maps can all be from the same schema, or different schemas. This enables users to import data from one schema into the workbook, do some calculations, and then export the results using another schema. Excel 2003 enables the importing and exporting of XML data of a particular schema into and out of the workbook, according to your layout (see Figure 9).

Figure 9. The menu for XML related tasks

Using Excel 2003 As An Analytic Content Provider

One of the traditional uses of Excel has been to capture input from knowledgeable users. A developer builds a spreadsheet, and then sends it out to users who fill in data and return the spreadsheet to complete the process. Common scenarios include budgeting applications, expense reporting, project planning and even arbitrary data list consolidation. These spreadsheet scenarios are highly beneficial to users, but have traditionally been difficult for developers to implement. The XML functionality in Excel 2003 solves many of these common issues.

Excel-based solutions can be extended to deliver data via XML and recollect it. XML Web services provide an easy method of transport for XML, which offers an optimal vehicle. Users can still import and export XML through the user interface but, more important, developers have full programmatic control to unlock data from workbooks.

Using Excel 2003 as an Automated XML Data Viewer

Users are generally very comfortable using Excel to view data. So it makes sense for developers to target Excel for solutions capable of delivering XML-based data. Business intelligence, analytics, charting and other solutions can benefit from Excel's ease of and openness to consuming XML.

With Excel 2003, a developer can build an Excel worksheet to include the formulas and layout that support a business need, and point it at an XML source to provide users with the latest available content. Users get the rich Excel environment they are used to, and developers get fast results.

Using Excel 2003 as an Interactive Data Reporting Tool

Developers commonly receive user requests to make data available inside of Excel so users can provide their own ad hoc analysis, which is something that can't be done natively with browser applications. As investments in delivering XML Web services and XML start to become realities, developers can provide users with the data in Excel and easily map that data into workbooks regardless of incoming structure.

XML Programmability

Excel 2003 XML feature set brings with it a rich VBA object model for programmatically adding schema to the workbook, mapping that schema to a sheet, importing the data, exporting the data, finding data and ranges based on XPath, and so forth.

Here are some examples of what you can use the rich object model for. For example if you want the corresponding XPath in the XML document for a given range/list/column, you can query as follows:




To refresh a binding for a map you can do the following:


The subroutine below shows how to retrieve all the XPaths that are mapped in an active workbook. First you set the XmlMap whose mapped ranges you want to enumerate. Then you retrieve the top level element of the schema contained in the XmlMap. Next you query for the top level element in the schema and search for everything that is mapped from this schema. Then you enumerate through each mapped range (XPath) contained within the area of the mapped range to find out if it is a repeating element. A message box displays the range value for the mapped range, the XPath value and tells you whether the XPath contains repeating elements.

Sub EnumMappedRanges()
    Dim objXmlMap As Excel.XmlMap
    Dim strRootElementXPath As String
    Dim objWkSheet As Excel.Worksheet
    Dim objMappedRanges As Excel.Range
    Dim objMappedXPath As Excel.Range
    'The XmlMap to be enumerated for mapped ranges.
    Set objXmlMap = ActiveWorkbook.XmlMaps(1)
    'RootElementName is the top level element in the schema.
    'Build the XPath of the root element by adding 
    'the namespace prefix, if necessary.
    If objXmlMap.RootElementNamespace = "" Then
        strRootElementXPath = "/" & objXmlMap.RootElementName
        strRootElementXPath = "/" & _ 
            objXmlMap.RootElementNamespace.Prefix & _
            ":" & objXmlMap.RootElementName
    End If
    For Each objWkSheet In ActiveWorkbook.Sheets
        'Query for the top level element in the 
        'schema (using the root element XPath)
        'and search for everything that is mapped from this schema.
        Set objMappedRanges = objWkSheet.XmlMapQuery _
                                (strRootElementXPath, , objXmlMap)
        If Not objMappedRanges Is Nothing Then
            'Each Range associated to an XPath is contained within
            'an Area of objMappedRanges.
            For Each objMappedXPath In objMappedRanges.Areas
                MsgBox "Mapped Range: " & objMappedXPath.Address & _
                    vbCrLf & "XPath: " & objMappedXPath.XPath.Value & _
                        vbCrLf & "Is Repeating: " & _
                            objMappedXPath.XPath.Repeating, , _
                                "Mapped Range Found"
            MsgBox "No mapped ranges found in Worksheet: " & _   
                objWkSheet.Name, vbExclamation
        End If
End Sub

You can also create a mapped range for a non-repeating element.

The next subroutine demonstrates how to create a list that contains multicolumn (five columns in this example, from column A to E) range for repeating element at cells A1 through to E12. It uses the element in the map named Root contained in the candidates01.xml file. After the list is created, the XML nodes are then mapped onto the stand-alone list. Each of the columns which by default are respectively named Column1, Column2, and so forth, is then individually mapped and renamed accordingly.

Finally, the XML data contained in the candidates01.xml is imported into the list and populate it. If the XML data to be inserted to each row required more than 12 rows, you will find that Excel will automatically add more rows to the list range.

Sub MapToList()
    Dim objMap As XmlMap
    Dim objList As ListObject
    Dim strXSDPath As String
    Dim strXMLPath As String
    Dim strXPath As String
    ' Select the range for the list to be created.    
    strXSDPath = "resume.xsd"
    strXMLPath = "candidates01.xml"

    ' First add the schema to the workbook.
    Set objMap = ActiveWorkbook.XmlMaps.Add(strXSDPath, "Root")
    ' To map repeating items, create a list first.
    Set objList = ActiveSheet.ListObjects.Add
    ' Map the first column by assigning an XPath to each list column.    
    strXPath = "/Root/DocumentInfo/HRContact"
    objList.ListColumns(1).XPath.SetValue objMap, strXPath
    ' Change the column header a name from the default name "Column1".
    objList.ListColumns(1).Name = "HR Contact"
    strXPath = "/Root/Resume/LastName"
    objList.ListColumns(2).XPath.SetValue objMap, strXPath
    objList.ListColumns(2).Name = "Last Name"

    strXPath = "/Root/Resume/FirstName"
    objList.ListColumns(3).XPath.SetValue objMap, strXPath
    objList.ListColumns(3).Name = "First Name"
    strXPath = "/Root/Resume/Address/Address1"
    objList.ListColumns(4).XPath.SetValue objMap, strXPath
    objList.ListColumns(4).Name = "Primary Address"
    strXPath = "/Root/Resume/Address/Phone"
    objList.ListColumns(5).XPath.SetValue objMap, strXPath
    objList.ListColumns(5).Name = "Phone"
    ' Populate the list by importing data from an XML file.
    objMap.Import strXMLPath
End Sub

The following example shows how you can map a repeating element onto a single cell:

Sub MapElementToCell()
    Dim objMap As XmlMap
    Dim strXSDPath As String
    Dim strXMLPath As String
    Dim strXPath As String
    strXSDPath = "resume.xsd"
    strXMLPath = "candidates01.xml"

    ' First add the schema to the workbook.
    Set objMap = ActiveWorkbook.XmlMaps.Add(strXSDPath, "Root")

    ' Map the first column by assigning an XPath to each list column.  
    strXPath = "/Root/DocumentInfo/HRContact"    
    Range("H8").XPath.SetValue objMap, strXPath, , False
    ' Give the following cell a value.
    Range("G8").Value = "HRContact :"

    ' Populate the list by importing data from an XML file.
    objMap.Import strXMLPath
End Sub

The Using the XML Features of the Microsoft Office Access 2003 and Microsoft Office Excel 2003 Object Models article discusses the Excel XML object model in detail and has more code examples which you can refer to for more information. Additionally, there is also an Excel 2003 XML Content Development Kit (CDK) available to Office 2003 program participants to help developers quickly get up to speed on how to build XML solutions using Excel 2003 as a development platform.

Smart Document Solutions

Smart Document technology in Excel 2003 and Word 2003 enables the creation of XML-based applications that provide users with contextual content via the Office task pane. Users benefit from a Smart Documents ability to deliver relevant information and actions through the use of an intuitive task pane that synchronizes content based on the user’s current location within the document. The task pane presents users with almost any supporting information, such as data that corresponds to the document, relative help content, calculation fields, hyperlinks or any number of controls, an example of which is shown in Figure 10.

Figure 10. An Excel Smart Document with the task pane displayed on the right

Excel 2003 and Word 2003 documents can be designed with an underlying XML structure that ensures users are entering and viewing valid information. At the same time, the XML structure enables developers to build the document with context-specific help and supporting information.

Smart Documents build on the concept of smart tags introduced in Microsoft Office XP, and extend it by using a document-based metaphor aimed at simplifying and enhancing the user experience when working with documents. Developers can build upon rich XML-based documents in Word 2003 and Excel 2003 to create Smart Document solutions. These solutions can be deployed and subsequently updated from a server, once the initial document or template has been opened on the client, thus, making distribution a non-issue and maintenance, easy.

In Microsoft Office Word 2003 Preview (Part 1 of 2) I discussed Smart Documents in detail which you can refer to for more information.

Smart Tags

The smart tag technology was first introduced with Office XP in Excel 2002 and Word 2002. Smart tags enable the dynamic recognition of terms within documents and spreadsheets. Once a term is recognized, the user can invoke an action from a list of actions associated with that particular smart tag. Examples of possible actions are inserting relevant data, linking to a Web page, database lookup, data conversion and so forth.

You can build custom smart tags by using any programming language that can create a Component Object Model (COM) add-in. In Office XP, to build custom smart tag COM add-ins, you implement the ISmartTagRecognizer and ISmartTagAction interfaces. Without having to write any code, you can also build simple smart tags by using a smart tag XML list.

With the Microsoft Office System, smart tag support has extended to Microsoft Office PowerPoint® 2003 and Microsoft Office Access 2003. In addition, the Research task pane that is available across multiple Office applications also supports smart tags. Smart tags in Office 2003 have also been enhanced and improved based on feedback from users and developers.

In Office 2003, the ISmartTagRecognizer and ISmartTagAction interfaces exist unchanged. However, the smart tag application programming interface (API) library has been extended to support two additional new interfaces that enable new functionality: ISmartTagRecognizer2 and ISmartTagAction2. The library, which is also backward compatible, is named Microsoft Smart Tags 2.0 Type Library. It should be noted that registering a smart tag DLL using its programmatic identifier isn't supported anymore in the Microsoft Office System.

You can also create smart tags that are now schema aware. For example, you can build a smart tag that recognizes a given tag-name, resulting in smart tags that can be much smarter about how and when to surface relevant actions.

I've discussed the new smart tag features and enhancement in detail in the Microsoft Office Word 2003 Preview (Part 2 of 2) article which you can refer to for more information. If you are interested in knowing about smart tags in Office 2003, you will also want to read the What's New with Smart Tags in Office 2003 article.

Statistical Function Improvements

Changes have been made to numerous statistical functions to correct shortcomings that include serious inaccuracies that a user is not likely to spot, inaccuracies that result in absurd answers (for example negative sums of squares), and failure to return a numerical answer when one should be obtainable.

Some aspects of the following statistical functions, including rounding results, and precision have been enhanced. Therefore the result of the following functions may be different from that of the previous versions of Excel.

The list of statistical function improvements are as follows:

Computation of Summary Statistics


Multiple Linear Regression


There is now improved handling of colinearity.

Continuous Probability Distributions

NORMSDIST, LOGNORMDIST, ERF (an AnalysisToolPak function), and ZTEST

Inverse Functions for Continuous Probability Distributions


Improved Random Number Generator

Discrete Probability Distributions


The ANOVA function in the AnalysisToolPak has also seen improvement. The changes in statistical functions may also be reflected in the AnalysisToolPak's Descriptive Statistics feature.

Document Workspace Sites with Windows SharePoint Services Integration

Today, most people do ad-hoc collaborative authoring in a variety of ways, for example via e-mail, using authoring applications like Word, Excel or PowerPoint, or groupware tools like Windows SharePoint Services or real-time collaboration tools like instant messaging, and conferencing. In Office 2003 ad-hoc collaborative authoring combines the best approaches through the new Document Workspace sites – the ease of getting collaborative efforts started using e-mail, Windows SharePoint Services online file management and sharing, and the rich editing functionality found in Office applications.

Document Workspace sites capitalize on natural entry points, supplement and integrate with existing tools, and minimizes collaboration apparatus overhead. In addition, Document Workspace sites makes the collaborative growth effort straightforward; for example from sending a simple shared e-mail file attachment to automatically creating a full-blown SharePoint site.

For more information about Document Workspace sites, see Microsoft Office Word 2003 Preview (Part 2 of 2).

Research Library

The new Research Library feature in Office 2003 makes searching for relevant information and integrating that data into Office documents easier. The Research task pane is a task pane-based feature in Word 2003, Excel 2003, Microsoft Office PowerPoint 2003, Microsoft Office Outlook 2003, Microsoft Office Publisher 2003, Microsoft Office Visio 2003, Internet Explorer and Microsoft Office OneNote 2003. The Research Library that functions within the Microsoft Office System allows Office users to easily access Research Library services while working on Office documents.

Research sources that come built-in with the Microsoft Office System provides easier access to reference tools like dictionary, thesaurus, translation, encyclopedia and some Web sites in multiple languages.

Additionally, the Research Library which can be controlled by administrators at a corporate level is extendable, allowing developers and third-party information providers the ability to create their own research services. This means developers can build custom research sources that integrate information from a company’s back-end database sources thus making business-specific data available to users. The data sources can be local or remote, behind a corporate firewall or on the Internet, including sites based on SharePoint Products and Technologies. It's noteworthy that extending the research library allows developers to provide an innovative and intelligent solution that permeates across multiple applications in the Microsoft Office System since the Research Library feature as mentioned earlier, is supported in many Office applications.

In addition, the Research Library integration of smart tag technology allows developers to create custom actions like transforming, inserting or grabbing data from live feeds. Smart tag integration in the Research Library feature is supported in Word 2003, Excel 2003, PowerPoint 2003, Outlook 2003, and Visio 2003.

For more information about the Research Library see Microsoft Office Word 2003 Preview (Part 1 of 2). Also, see Build Your Own Research Library with Office 2003 and the Google Web Service API and Customizing the Research Task Pane.

Miscellaneous Features

There are quite a number of miscellaneous feature enhancements in Excel 2003 like side by side workbook comparison, Tablet PC support and so forth.

Compare Workbooks Side By Side

Viewing changes made by multiple users can be difficult using one workbook. In Excel 2003 there is a new feature for comparing workbooks side by side. To do this, you use the Compare Side by Side with command on the Window menu as shown in Figure 11. Comparing workbooks side by side allows you to see the differences between two workbooks more easily as you don't have to merge all changes into one workbook. You can scroll through both workbooks at the same time to identify differences between the two workbooks (see Figure 12).

Figure 11. The compare workbooks side by side command

Figure 12. Comparing workbooks side by side without merging content

Support For Tablet PC

If you are using a device that supports ink input, such as a Tablet PC, you can use the pen device and take advantage of handwriting in Office documents as you would when using pen and a hard copy document. For example you can make handwritten comments, jot down handwritten content, and mark up with handwritten annotations. Additionally, you can now view task panes horizontally to help you do your work on the Tablet PC if you so preferred.

Microsoft Office Online

Microsoft Office Online is better integrated with all Microsoft Office programs allowing you to take full advantage of what the site has to offer while you work. You can visit Microsoft Office Online directly using the links provided in various task panes and menus in your Office program to access articles, tips, clip art, templates, online training, downloads, and services to enhance how you work with Office programs. The site is updated regularly with new content based on customer feedback and popular requests from you and others who use the Microsoft Office System.


With Excel lists, you get database-like functionality in the spreadsheet. You can create lists to group and act upon related data and share the list with others by publishing the list on a SharePoint site. The XML enhancements and improvements in Excel 2003 make it easier for Excel to integrate with other systems. Excel data has now become free-flowing, unlocked data, which can be manipulated and easily repurposed.

The innovative Smart Document technology enables the creation of XML-based applications that provide users with contextual content and relevant help, making users more productive. Document Workspace sites makes collaboration an easy undertaking. You will find smart tags even more useful and powerful in Excel 2003 with the added enhancements and improvement.

The new Research Library feature enables information search from within an Office application and makes integrating that data into Office documents easy. Developers can build custom research sources that integrate information from a company’s back-end database sources and as such make business-specific data readily available to users by extending the Research library. In Excel 2003, you will find comparing contents of workbooks easier when using the side by side comparison feature. These are some of the new and exciting features to look forward to in the Excel 2003.


I would like to thank Chad Rothschiller, Margaret Hudson, James Rivera, Joseph Chirilov, Michael McCormack, Pat King, John Tholen, Keith Mears, Marise Chan from the Excel 2003 team and Charles Maxson, who is an independent consultant, for their contributions and help in writing this article.