Передача управления кодом от vb6 к vba и обратно
Формулировка задачи:
Здравствуйте!
Я написал небольшую программку на vb6, которая создает форму, контролирующую доступ пользователей к базе данных (в формате xl), формирующую список объектов, позволяющую выбрать необходимый объект (определенный лист книги xl) и собственно запустить приложение Excel, создав новую книгу и скопировав в нее нужный лист. С этими задачами я справился. Никак не разберусь со следующей задачей:
- как перед "показом" листа Excel убрать форму с экрана, а после выхода из Excel вновь показать форму и продолжить работу в ней, другими словами, как понять, что Excel отработал и vb6 пора принимать управление процессом на себя?
Заранее благодарен.
Решение задачи: «Передача управления кодом от vb6 к vba и обратно»
textual
Листинг программы
Option Explicit Dim WithEvents xlApp As Excel.Application Dim xlWb As Excel.Workbook Private Sub Command1_Click() Set xlApp = New Excel.Application Set xlWb = xlApp.Workbooks.Open("c:\temp\Лист1.xls") '==== путь к книге xlApp.Visible = True End Sub Private Sub Form_Unload(Cancel As Integer) On Error Resume Next xlApp.Quit End Sub Private Sub xlApp_WorkbookBeforeClose(ByVal wb As Excel.Workbook, Cancel As Boolean) If wb Is xlWb Then xlApp.Visible = False If MsgBox("VB6 - Вы уверены, что хотите закрыть книгу?", vbYesNo) = vbNo Then Cancel = True MsgBox "VB6 - ОК, продолжаем" xlApp.Visible = True Exit Sub Else xlApp.EnableEvents = False wb.Close True 'закрыть с сохранением xlApp.Quit End If End If End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д