Codematic Excel developers logo
Codematic spreadsheet-excel development image

Rapid Application Development / Advanced Excel Development

 
Products for Excel
Commercial Products:
  - Classic Ribbon
  - Alt-FileSearch
  - Password Remover
Spreadsheet Quality Products
Free Products
Excel Development
Excel Development Index
Excel VBA
- VBA IDE (editor)
- VBA Training
- VBA Best Practice
- VBA Performance
- COM Performance
- VBA Security
Excel and Databases
Excel and Pivot Tables
Excel Add-ins
Worksheet Functions
Excel and xlls
Excel (in)security
Excel testing
Excel and .net
Excel External Links
Excel Developer Types
Professional Excel Development
Excel 2007
Excel 2010
Excel Development Archive
Spreadsheet Services
Spreadsheet Development
Spreadsheet Migration
Spreadsheet Maintenance
Spreadsheet Review
Spreadsheet Management
Resources
Excel User Confs
Consultant Profile
Book Reviews
Links
Other
Site Map

Excel xll Add-in Development

There is considerable confusion about xlls, what they are and how to create them. This section aims to clear up some of the confusion and raise the profile of this important, but often over-looked technology.

For details of our custom xll User Defined Function development service please go here.

Xll Series Contents

(note this is a work in progress - more pages will be added and linked too as and when we have time to complete them to an acceptable level)

What are xlls?

An xll is a type of Excel add-in. They can be used to add application level features such as new menus as well as application level worksheet functions.

If you search your install directory you will find many xlls that ship with Excel, such things as the Analysis Tool Pak is implemented as an xll (in every Excel version before Excel 2007).

Why use xlls?

The most obvious reason and their most compelling benefit is they are fast, very fast. For user defined functions nothing comes close for speed. They also have a very simple deployment story, they are a standalone file, need no registration or install, just double click and go. And actually their control over Excel is pretty much limitless, providing almost all the capabilities of XLA's or COM add-ins.

Intensive VBA commands can also be speeded up by using xlls not just worksheet functions. Like for example our worksheet password remover.

How do you create xlls?

Fundamentally an xll is just a renamed dll. They are native win32 fully compiled PE (Portable Executable) format executables. They also implement a specific set of methods that Excel can call as required. They can be created with any tool that can create native code dlls and that can implement the methods in a way Excel can understand. Roughly speaking that means C, C++ or Delphi, there are probably others but finding useful resource would be even more of a challenge than it is for C/C++.

How do xlls work?

An xll must provide several specific functions that Excel can call when it opens the xll file. In return Excel provides a set of functions that the xll can call to tell Excel all about itself, and the functions and commands it offers. Once the features of the xll have been registered with Excel they can be used just like intrinsic ones:

The most common use of xlls these days is for writing worksheet functions that calculate as fast as Excel native functions. Anyone who has written VBA worksheet functions knows how far off they are. xlls can also add menus and toolbars and perform commands like VBA subroutines. Their functionality is based on the old XLM macro language, which is still supported in Excel 2003 (and 2007).

Base project

Here is a base xll project (in C) to get you started. It contains a single UDF that takes two arguments and returns the total. It is in Visual Studio 6 format which every version since can open and translate fine. You do need a C/C++ version of Visual Studio though, like for example the free Visual C++ Express 2008. It requires the Excel SDK files (available free from the Microsoft site) be in the include path or the same folder.

 

If you require any more information please get in touch.

 

 

Upcoming Events:

25 January 2012 - UK Excel Developer Conference - London


Products for sale:

AltFileSearch

Office 2007 FileSearch replacement logo

New information about the missing FileSearch feature in Office 2007 and details of our pragmatic solution (Current price GBP 30.00)


wsUnprotector

worksheet password remover logo

Instant Excel worksheet protection remover and password recovery (Current price GBP 15.00)


Classic Ribbon Tab

classic ribbon for office 2007 logo

Add Excel 97/2000/2002/2003 compatible menu structure to Excel 2007
(Current Price GBP 10.00)


 

Products coming soon:

Link Manager

(Find and control external links in Excel Workbooks)

Due by Q1 2111.

XLAnalyst Pro

(Excel VBA based spreadsheet auditing tool)

Due before the end of 2111.

  ;-)
This page was last reviewed on December 21, 2011

©Codematic Ltd 1999-2011