Add-in is a way to extend functionality of Microsoft Excel application. Developer can use it to add new worksheet functions, add new features to Excel or program Excel's behavior for custom tasks.
Possible the following types of Excel Add-ins:
Excel Add-in written in the VBA is represented by XLA, XLAM files. This type of add-ins is limited by the features available in the Visual Basic for Automation. You can use password to protect your VBA code in the XLA, XLAM file. But this protection can be easily broken. If you are professional VBA Developer we would like to introduce you LockXLS - workbook copy protection software.
COM Add-in is an in-process COM server which implements IDTExtensibility2 interface. COM Add-ins are binary modules which doesn't require such protection, like Add-ins written using the VBA. Functions implemented in this type of add-in can't be used in the cells functions. You can use it to add menu command to ribbon or menu and implement your handler.
xlCompare 3.0 and Dependency Auditor are COM Add-ins.
Automation Add-in is an add-in similar to COM Add-in, but it's functions can be used in the cells formulas.