Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Word
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.03.2010, 17:50   #1
Окоча Юра
Форумчанин
 
Регистрация: 16.02.2009
Сообщений: 122
По умолчанию Закрытие всех документов без сохранения

У меня открыто 10 вордовских и екселевских документов, помогите создать макрос закрытия всех этих документов без сохранения изменений в них. Спасибо.
Юрик
Окоча Юра вне форума Ответить с цитированием
Старый 03.03.2010, 20:47   #2
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Для Word вот так
Код:
Sub CloseAll()
  Dim oDoc As Document
  For Each oDoc In Application.Documents
    oDoc.Close False
  Next
End Sub
для Excel почти аналогично.
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 03.03.2010, 21:36   #3
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию

Чтобы тема была доступна через поиск (где задано не менее чем с 4-мя ответами!), внесу свою лепту, чисто эспериментальную.
Код:
Sub toShutAllWordDocs()
DoEvents

Shell "taskmgr", vbNormalNoFocus
Shell "taskmgr", vbNormalFocus
SendKeys "{W}"
SendKeys "{I}"
SendKeys "{N}"
SendKeys "{W}"
SendKeys "{O}"
SendKeys "{R}"
SendKeys "{D}", True

SendKeys "{tab}", True
SendKeys "{tab}", True

SendKeys "~", True 'аналог нажатия Enter, когда кнопка Завершить процесс в Диспетчере задач активна (в фокусе ввода)'
End Sub
Но это требует почему-то ручного нажатия кнопки, но всё же — одной! Аналогичный «фокус» возможен с любым VBA-приложением, но не проверял.

Также для развития темы, возможно, полезен и следующий пост.
Sasha_Smirnov вне форума Ответить с цитированием
Старый 03.03.2010, 22:03   #4
Окоча Юра
Форумчанин
 
Регистрация: 16.02.2009
Сообщений: 122
По умолчанию

А можно ли чтобы одним нажатием закрылись все вордовские и екселевские файлы без сохранения изменений.
Юрик
Окоча Юра вне форума Ответить с цитированием
Старый 03.03.2010, 22:16   #5
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию

Alt-F4 попробуйте.
Sasha_Smirnov вне форума Ответить с цитированием
Старый 03.03.2010, 22:22   #6
Окоча Юра
Форумчанин
 
Регистрация: 16.02.2009
Сообщений: 122
По умолчанию

Всем спасибо.
Юрик
Окоча Юра вне форума Ответить с цитированием
Старый 30.11.2010, 16:43   #7
Окоча Юра
Форумчанин
 
Регистрация: 16.02.2009
Сообщений: 122
По умолчанию

Цитата:
Сообщение от viter.alex Посмотреть сообщение
Для Word вот так
Код:
Sub CloseAll()
  Dim oDoc As Document
  For Each oDoc In Application.Documents
    oDoc.Close False
  Next
End Sub
для Excel почти аналогично.
помогите, почему у меня не работает этот код...
Юрик
Окоча Юра вне форума Ответить с цитированием
Старый 30.11.2010, 18:48   #8
bdfy
Форумчанин
 
Регистрация: 12.11.2009
Сообщений: 258
По умолчанию

Application.Quit false
самый быстрый способ
если закрывать только документы останется окно самого Word например
bdfy вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выход из формы без сохранения изменения Swatch Microsoft Office Access 5 18.12.2018 18:33
Макрос для сохранения всех картинок из Word в файл Nitro Microsoft Office Word 5 24.05.2012 21:05
Дата сохранения analyst Microsoft Office Excel 4 10.02.2010 20:10
Добавит картинку в файл без сохранения в файл Pacan4ik Microsoft Office Excel 3 30.07.2009 13:19