Всем здрасте, уважаемые.
Поделитесь секретом с новеньким, уже с неделю бьюсь над одной проблемой.
В программе открыл файл экселя:
Exc = CreateObject("Excel.Application")
Exc.Workbooks.Open(PathAll).Worksheets(1).Activate()
активировал по необходимости один из 4х листов:
Exc.ActiveWorkbook.Worksheets(1).Activate()
сохранял после изменений:
Exc.ActiveWorkbook.Save()
Но при открытии новой формы (настроек, без закрытия первой), никак не могу получить доступ к листам. Постоянно выдает ошибки... Как можно реализовать подключение книги к активной форме? Я уже пытался даже полностью закрывать/снова открывать книгу из разных форм, всё равно ошибка(
VBA: активация книги в новой форме
Модератор: Naeel Maqsudov
В первом посте - не синтаксис VBA.
Что касается поставленного вопроса, то насколько я понял …
Любой стандартный модуль
Модуль формы UserForm1
Модуль формы UserForm2
Что касается поставленного вопроса, то насколько я понял …
Любой стандартный модуль
Код: Выделить всё
Public xl As Excel.Application 'As Object
Public wb As Excel.Workbook 'As Object
Public ws As Excel.Worksheet 'As Object
Код: Выделить всё
Private Sub UserForm_Initialize()
Dim fileName$
fileName = "C:\Книга1.xls"
'Реально существующая рабочая книга (для тестирования используйте 'мусор')
Set xl = CreateObject("Excel.Application")
Set wb = xl.Workbooks.Open(fileName, 0)
Set ws = wb.Worksheets(1)
UserForm2.Show
End Sub
Код: Выделить всё
Private Sub UserForm_Initialize()
ws.Range("A1:C3").Formula = "=RAND()"
wb.Close True
xl.Quit
End Sub
Как не VBA?)
Работаю в Visual Studio 2105
"Set" - тут вообще не используется) Неужели я перепутал название? Тогда прошу прощения.
К сожалению, предыдущий ответ не помог(
Работаю в Visual Studio 2105
"Set" - тут вообще не используется) Неужели я перепутал название? Тогда прошу прощения.
К сожалению, предыдущий ответ не помог(
Visual Studio 2105 - это VB.Net
Готов подтвердить работоспособность своего совета в .xls файле
Готов подтвердить работоспособность своего совета в .xls файле