Работа с Excel из VB6

Узнай цену своей работы

Формулировка задачи:

две недели назад открыл для себя программирование, начал с

vba,

так как хотел оптимизировать свою работу в

excel.

Сейчас пробую написать программулину(на

VB6,

он ведь ближе всего к vba) для автоматического добавления своих макросов в книгу.

Начал я с добавления

Microsoft Excel 8.0 Object Library.

И застрял в самом начале

Помогите плиз

null

пробовал

тоже выдает ошибку

Решение задачи: «Работа с Excel из VB6»

textual
Листинг программы
Private Sub Start_Click()
    Dim objExApp As Object, wbBook As Object
    Dim sFullPath As String, sPath As String, sWBName As String
    'V = Application.GetOpenFilename 'У Вас же есть в VB диалог выбора файлов. Зачем использовать для этого Excel?
    'Workbooks(V) - и в VBA у Вас это работало? коллекция Workbooks содержит имена книг(с расширениями), а не полные пути к файлам
    'добавляем на форму "Microsoft Common Dialog Control 6.0" из контролов. Если среди контролов нет - добавляем: Проект-Компоненты
    '
    CommonDialog1.Filter = "Excel (*.xls*)|*.xls*"
    CommonDialog1.ShowOpen
    sFullPath = CommonDialog1.FileName
    If sFullPath = "" Then Exit Sub
    sWBName = Dir(sFullPath, 16)
    sPath = Replace(sFullPath, sWBName, "")
    'создаем новый экзмпляр Excel
    Set objExApp = CreateObject("Excel.Application")
    'On Error GoTo ErrorHandler
    objExApp.Visible = True
    objExApp.Workbooks.Open sFullPath
    With objExApp.Workbooks(sWBName).VBProject.VBComponents
        ' ошибка Excel.Application.Workbooks(V).Path <> subscript out of range
        .Import sPath & "Macro\MD.bas"
        .Import sPath & "Macro\mw2.frm"
        .Import sPath & "Macro\CFormChanger.cls"
    End With
    'освобождать ресурсы тоже надо:
    wbBook.Close 0 'закрываем книгу без сохранения
    objExApp.quit
    Set wbBook = Nothing: Set objExApp = Nothing
    Exit Sub
ErrorHandler:
    If Not objExApp Is Nothing Then objExApp.quit
    Set objExApp = Nothing
    MsgBox "Программная ошибка!", vbOKOnly, "Внимание!"
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.267 из 5