JohnK писал(а):Как с помощью CreateObject создать экземпляр Excel, так чтобы пример работал как в Office 12 так и в 14?
Хотелось бы конкретики а не теории.
При использовании CreateObject("Excel.Application") создаётся объект зарегистрированный в HKCR\Excel.Application (обычно самая последняя установленная версия)
Если нам нужно для конкретной версии, то добавляем в конце версию CreateObject("Excel.Application.12") или CreateObject("Excel.Application.14")
Ещё нужно покурить интерфейсы... если они не отличаются, то можно и 12 и 14 приводить к одному интерфейсу, если же нет - обычно пишется обёртка для работы с 2мя различными интерфейсами
Думаю так же стоит почитать книгу, которую предлагал SLLIM : Эндрю Трельсен - Модель COM и применение ATL 3.0. Эффективная разработка приложений типа клиент\сервер