powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
13 сообщений из 13, страница 1 из 1
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
    #34450568
Azeke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем !!!
У меня вот такая проблема.
У меня есть файл Excel в нем находятся данные которые мне надо считать. Как считать программно эти данные я знаю (это не проблема) проблема в том что в Этом Excel-ом файле есть процедура авто запуска
автор
Sub Auto_Open()
MsgBox "Введите дату ДДММГГГГ"

Sheets("Лист1").Select
Range("B4").Select
End Sub

когда я программно открываю этот файл с моей програмки на VB чтобы считать оттуда данные
автор
Set xlApp = New Excel.Application
Set xlBook = GetObject(c:\TSAK.XLS)
Set xlSheet = xlBook.Sheets(1)
.....

то открывается это сообщение с Auto_Open-a и пока не нажмешь Ok не уходит.
Вопрос подскажите пожалуйста как в программе это обойти чтобы окно не появлялось при работе.
...
Рейтинг: 0 / 0
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
    #34450672
Фотография VladConn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А переписать Auto_Open?
...
Рейтинг: 0 / 0
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
    #34450766
Guest11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AutomationSecurity = msoAutomationSecurityForceDisable
...
Рейтинг: 0 / 0
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
    #34450807
Фотография VladConn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И это отключает MsgBox?
...
Рейтинг: 0 / 0
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
    #34450964
Nikz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
    #34452763
Azeke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробовал сделать вот так
автор
Set xlApp = New Excel.Application
xlApp.EnableEvents = False
Set xlBook = GetObject(t)
xlApp.EnableEvents = True
Set xlSheet = xlBook.Sheets(1)
ddmmgggg = Trim(xlSheet.Cells(4, 2)) & Trim(xlSheet.Cells(4, 3)) & Trim(xlSheet.Cells(4, 4))
.......
Set xlSheet = Nothing
Set xlBook = Nothing

но ничего не выходит. Модет я не так использую данные функцию. Подскажите кто разобрался.
...
Рейтинг: 0 / 0
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
    #34452829
Nikz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Dim xlApp As New Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Set xlBook = xlApp.Workbooks.Open("C:\1.xls")
Set xlSheet = xlBook.Sheets( 1 )
xlApp.Visible = True
'...
и никакие Auto_Open не срабатывают
...
Рейтинг: 0 / 0
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
    #34453124
Фотография Старый ворчун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nikzи никакие Auto_Open не срабатывают

вы прочитали сообщение автора топика?
Чем ваше предложение принципиально отличается от того, что использует автор?
Вы действительно считаете, что при использовании того, что вы предложили не будут запускаться процедуры, выполняемые при обычном открытии.
Если да, то предполагаю, что вы заблуждаетесь.
...
Рейтинг: 0 / 0
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
    #34453163
Nikz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
... attached
...
Рейтинг: 0 / 0
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
    #34453245
Фотография Старый ворчун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы правы, я погорячился
Увы, невнимателен.
...
Рейтинг: 0 / 0
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
    #34453276
Фотография Старый ворчун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Старый ворчунВы правы, я погорячился
Увы, невнимателен.

Извините я опять поторопился.
Добавьте в 1.xls в ThisWorkbook
Код: plaintext
1.
2.
Private Sub Workbook_Open()
    MsgBox "Workbook_Open"
End Sub

Этот код выполнится и при вашем варианте. Именно выполнение кода процедуры события открытия книги я и имел в виду, говоря "не будут запускаться процедуры, выполняемые при обычном открытии. "

Согласен, что автору топика подойдет предложенный вами способ, если он не использует Workbook_Open.
...
Рейтинг: 0 / 0
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
    #34453303
Nikz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Старый ворчун...
Код: plaintext
1.
2.
Private Sub Workbook_Open()
    MsgBox "Workbook_Open"
End Sub
...

окей ))
а это уже обходим отключением эвентов...
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Dim xlApp As New Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
xlApp.EnableEvents = False
Set xlBook = xlApp.Workbooks.Open(App.Path & "\1.xls")
xlApp.EnableEvents = True
Set xlSheet = xlBook.Sheets( 1 )
xlApp.Visible = True
'...
...
Рейтинг: 0 / 0
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
    #34454683
Azeke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо всем большое. Nikz ваш пример зто то что мне нужно. Все прекрасно теперь работает.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]