Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / как в VB программно обойти Auto_Open в файле Excel при доступе к данным? / 13 сообщений из 13, страница 1 из 1
10.04.2007, 16:42
    #34450568
Azeke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
Привет всем !!!
У меня вот такая проблема.
У меня есть файл 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
10.04.2007, 17:12
    #34450672
VladConn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
А переписать Auto_Open?
...
Рейтинг: 0 / 0
10.04.2007, 17:35
    #34450766
Guest11
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
AutomationSecurity = msoAutomationSecurityForceDisable
...
Рейтинг: 0 / 0
10.04.2007, 17:42
    #34450807
VladConn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
И это отключает MsgBox?
...
Рейтинг: 0 / 0
10.04.2007, 18:30
    #34450964
Nikz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
...
Рейтинг: 0 / 0
11.04.2007, 13:36
    #34452763
Azeke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
Попробовал сделать вот так
автор
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
11.04.2007, 13:46
    #34452829
Nikz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
Код: 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
11.04.2007, 14:49
    #34453124
Старый ворчун
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
Nikzи никакие Auto_Open не срабатывают

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

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

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

Согласен, что автору топика подойдет предложенный вами способ, если он не использует Workbook_Open.
...
Рейтинг: 0 / 0
11.04.2007, 15:40
    #34453303
Nikz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
Старый ворчун...
Код: 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
12.04.2007, 07:33
    #34454683
Azeke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как в VB программно обойти Auto_Open в файле Excel при доступе к данным?
Спасибо всем большое. Nikz ваш пример зто то что мне нужно. Все прекрасно теперь работает.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / как в VB программно обойти Auto_Open в файле Excel при доступе к данным? / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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