Гость
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Открытие Excel формы / 9 сообщений из 9, страница 1 из 1
21.05.2014, 14:51
    #38647652
igor171
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие Excel формы
Доброго дня, всем!

Задача: Имеется файл Excel, при нажатии на который, открывается форма для заполнения, при этом сам Excel скрывается:

На событие Open_Book вставляю код:
Код: vbnet
1.
2.
Form1.show
Application.Visible=False



Далее форма заполняется и нажимается кнопка после чего книга закрывается:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
if Workbooks.Count > 1 then
  Application.Visible=True
  Application.DisplayAlerts=False
  Workbooks("FileD.xlsx").Close
  Application.DisplayAlerts=True
else
  Application.DisplayAlerts=False
  Workbooks("FileD.xlsx").Close
  Application.DisplayAlerts=True
end if



Создал гиперссылку и указал на файл Excel, чтобы при нажатии ссылки показывалась форма, далее вставляю гиперссылку в pdf файл, при нажатии все работает, форма появляется, я ее заполняю, нажимаю на кнопку и тут открывается файл Excel, хотя не должен, я ведь закрыл файл при нажатии кнопки (код выше)...

как можно сделать так чтобы Excel не показывался после заполнения формы и нажатия на кнопку?
...
Рейтинг: 0 / 0
21.05.2014, 22:36
    #38648143
iMrTidy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие Excel формы
igor171,

Предположу, что во-первых:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
Option Explicit

Private Sub Workbook_Open()

Application.Visible = False
UserForm1.Show

End Sub



И во-вторых:
Код: vbnet
1.
2.
3.
4.
5.
6.
Private Sub CommandButton1_Click()

Unload Me
Application.Quit

End Sub
...
Рейтинг: 0 / 0
22.05.2014, 11:17
    #38648596
igor171
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие Excel формы
1) первое предположили верно (прошу прощение что не написал)

2) вместо своего кода вставил ваш:

Код: vbnet
1.
2.
Unload Me
Application.Quit



Не помогло ... делаю следующее: открываю MS Word,создаю гиперссылку, указываю файл Excel с формой, после чего нажимаю на гиперссылку, результат следующий:

1)открывается форма, срабатывает код на открытии книги:

Код: vbnet
1.
2.
3.
4.
Private Sub Workbook_Open()
Application.Visible = False
UserForm1.Show
End Sub



2)заполняю форму и нажимаю на кнопку, срабатывает код:

Код: vbnet
1.
2.
3.
4.
Private Sub CommandButton1_Click()
Unload Me
Application.Quit
End Sub



Форма закрывается, но через 2 секунды появляется сообщение от MS Office открыть этот файл или нет?(файл может содержать вирусы ...) не могу понять почему оно появляется, ведь мы его уже открыли и закрыли ... почему открывается второй раз? можно ли это обойти
...
Рейтинг: 0 / 0
22.05.2014, 11:30
    #38648626
The_Prist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие Excel формы
igor171,

А не обратили внимания - файл не в режиме восстановления открывается? Т.к. Вы отключаете показ сообщений - вполне возможно, что Excel закрывается с ошибкой. А после этого он обязательно будет открываться заново и пытается восстановить последние файлы, которые были открыты.
...
Рейтинг: 0 / 0
22.05.2014, 12:28
    #38648786
igor171
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие Excel формы
The_Prist, подскажи пож-ста а как тогда правильно закрывать файл Excel?

Пробовал:
1)Windows("").Close - появляется "ошибка Method Close for Object 'Window' failed"
2)Workbooks("").close и Application.Quit - результат открывается два раза ...

Поповоду открытия файлв в режиме восстановления ... как я могу это увидеть? (извините новичок) ... файл второй раз открывается как обычно, никаких сообщений нет, название такое же ...
...
Рейтинг: 0 / 0
22.05.2014, 12:29
    #38648789
The_Prist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие Excel формы
igor171,

Уберите из кода - Application.DisplayAlerts=False. Точнее - закомментируйте:
Код: vbnet
1.
'Application.DisplayAlerts=False


И посмотрите, что будет происходить - какие будут сообщения и т.д.
...
Рейтинг: 0 / 0
22.05.2014, 12:47
    #38648839
igor171
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие Excel формы
Для понимания, на данный момент я вообще убрал данный код:

Код: vbnet
1.
2.
Application.DisplayAlerts=True
Application.DisplayAlerts=False



То есть на событие "нажатие кнопки" в конце у меня стоит только это:

Код: vbnet
1.
2.
Unload Me
Application.Quit



Сообщения следующие:
1) Нажал на гиперссылку появилось сообщение:

Извещение системы безопастности.

Это расположение может быть ненадежным.
Гиперссылки могут представлять опастность ...
Продолжить

Да Нет
2)нажимаем "Да", сразу появляется наша форма UserForm1, далее нажимаем кнопку на форме, появляется следующее сообщение:

Microsoft Office

Некторые файлы могут содеражть вирусы или другое опасное содержимое...

Открыть этот файл?


Зачем второй раз предлагается открыть файл? ведья его уже открывал ...
...
Рейтинг: 0 / 0
22.05.2014, 12:56
    #38648857
igor171
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие Excel формы
Если я открываю Excel файл с формой напрямую (без ссылки), то форма появляется и при нажатии на кнопку закрывается. Сообщения о втором сохранении не поступает ... почему с ссылками по другому ...
...
Рейтинг: 0 / 0
22.05.2014, 13:41
    #38648970
The_Prist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие Excel формы
igor171,

тогда ясно. Попробуйте:
Файл-Параметры - Центр управления безопасностью-Параметры центра управления безопасностью. Надежные расположения. Добавьте туда папку с открываемыми файлами.

Дело в том, что первый раз файл открывается в режиме защищенного просмотра без возможности внесения изменений. Когда подтверждаете свое желание открыть файл со всем содержимым - он переоткрывается уже в нормальном режиме. Так устроена система безопасности в офисе.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Открытие Excel формы / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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