старые объекты Excel в VB6

Известно ли кому-нибудь хороший ресурс в Интернете для получения подробной информации об использовании старых объектов Excel (встроенных книг, рабочих листов и т. Д.) В VB6? Я поддерживаю приложение, которое интенсивно использует эти элементы управления, и у меня много проблем с их правильной работой для пользователя этой программы. Разрозненные фрагменты вопросов и ответов, которые я могу найти в Интернете, связанные с элементами управления ole excel, очень ограничены и не очень точны. Очевидно, я прочитал все, что есть на MSDN, но я не нахожу это очень полезным, поэтому я хотел бы найти другой хороший источник ссылки.

Спасибо


person TJ_Fischer    schedule 08.12.2008    source источник
comment
Когда вы говорите «Элементы управления OLE Excel», вы имеете в виду объекты Excel (Workbook, Worksheet, Range и т. Д.) Или элементы управления на листе (Button, ComboBox и т. Д.)?   -  person PhilPursglove    schedule 10.12.2008


Ответы (2)


Я не уверен, что это полезно для встраивания Excel, но если предположить, что механизм Excel лежит в основе встроенных элементов управления, вы можете посмотреть здесь, где в алфавитном порядке представлены объекты, доступные для Excel 2003.

И здесь для корня Excel VBA справочник, который включает раздел «Концепции», в котором обсуждаются основные объекты, такие как книги и рабочие листы, ячейки и диапазоны и т. д.

Вам нужно будет установить ссылку на объекты Excel в вашем проекте, прежде чем вы сможете создать любой из этих объектов. В разделе «Проект / Ссылки» вы найдете что-то вроде «Библиотеки объектов Microsoft Excel 9.0». (У меня Office 2000, то есть 9.0. Судя по ссылкам выше, я полагаю, что в Excel 2003 вы увидите Excel 11.)

В своем коде сделайте что-то вроде этого:

' Start a new workbook in Excel '

Dim oExcel As Excel.Application
Dim oBook As Excel.Workbook

' Launch an instance of Microsoft Excel '
Set oExcel = new Excel.Application
Set oBook = oExcel.Workbooks.Add

Затем перейдите к коду приложения, книг и т. Д. Приведенный выше код создаст экземпляр Excel, который не внедрен, но находится в собственном окне. Следует помнить, что по умолчанию этот экземпляр Excel не отображается. Вы должны установить для свойства Visible значение True, прежде чем вы сможете его увидеть.

Надеюсь это поможет.

person JeffK    schedule 19.12.2008

Любая книга по Excel VBA должна помочь, поскольку вы можете копировать и вставлять код из VBA в VB6. Я бы начал там.

Также поможет попытка делать то, что вы хотите делать в Excel с помощью VBA, а затем поместить это в свой проект VB6. Тогда у вас будет доступ ко всей справке VBA в Excel (если вы ее установили ... она не всегда устанавливается по умолчанию).

person Mark Nold    schedule 15.12.2008