Работа с одной и той же книгой Excel из разных форм - VB

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

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

Есть две формы. В первой вывожу инф-ю из exel'я , во второй редактирую эту инф-ю (в это время exel висит в фоновом режиме). При открывании первой формы открывается книга, после открывании второй, форма ссылается на уже открытую (активную) книгу. Дак вот, как бы все гуд. Но когда параллельно открыта еще какая нибудь книга exel, то уже редактировать не получается (вторая форма не открывается: ошибка). Ну как понял она не знает к какой активной книге обратится. Помогите исправить код. Это для первой формы:
Листинг программы
  1. Option Explicit
  2. Dim Exc As New Excel.Application
  3. Dim XL As Excel.Workbook
  4. Dim ExcPath As String
  5. Sub Otkrita1()
  6. ExcPath = "c:\database.xlsx"
  7. Set XL = Exc.Workbooks.Open(ExcPath)
  8. Exc.Visible = False
  9. End Sub
Это для второй формы:
Листинг программы
  1. Option Explicit
  2. Dim Exc As Excel.Application
  3. Dim XL As Excel.Workbook
  4. Sub Otkrita2()
  5. Set Exc = GetObject(, "Excel.Application")
  6. Set XL = Exc.ActiveWorkbook
  7. End Sub
Обращаюсь к книге так:
Листинг программы
  1. XL.Worksheets("Данные").Cells(1, 1)

Решение задачи: «Работа с одной и той же книгой Excel из разных форм»

textual
Листинг программы
  1. Dim Exc As New Excel.Application
  2. Dim XL As Excel.Workbook

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


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

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

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

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы