124 / 3 / 0
Регистрация: 29.07.2013
Сообщений: 249
|
||||||
1 | ||||||
Как проверить открыта ли книга если ей задана переменная (excel 2010)04.08.2013, 11:57. Показов 10991. Ответов 10
Метки нет (Все метки)
При заданном условии (А, В, С) должна открыться определенная книга, задача проверить открыта ли она уже и если она открыта выход из процедуры. Потому как по условию (не включено) далее пойдет процедура сохранения и если она уже кем то открыта, то соответственно никакого сохранения не получится.
0
|
04.08.2013, 11:57 | |
Ответы с готовыми решениями:
10
Как в Excel проверить, открыта ли книга? VBA Access: как проверить, открыта ли данная книга Excel Проверить, открыта ли книга Excel Как мне узнать открыта данная книга Excel или нет? |
1569 / 368 / 103
Регистрация: 13.11.2008
Сообщений: 769
|
||||||
04.08.2013, 13:52 | 2 | |||||
1
|
124 / 3 / 0
Регистрация: 29.07.2013
Сообщений: 249
|
|
04.08.2013, 13:57 [ТС] | 3 |
Здесь проверяется какая то конкретная книга, а у меня не известно какая будет открываться - А, В или С.
0
|
1569 / 368 / 103
Регистрация: 13.11.2008
Сообщений: 769
|
||||||
04.08.2013, 14:09 | 4 | |||||
А где у Вас в примере видно какая книга должна проверяться? У Вас в примере выдуманные пути и имена. Точнее неясно там путь или имя или просто набор слов. Excel не может сам угадать, что Вам проставить надо. Я дал функцию - в зависимости от своих условий передавайте нужное имя книги, что тут сложного? Через переменную, по условиям или еще как. В любом случае, чтобы проверить открыта книга или нет, надо как минимум знать её имя.
0
|
124 / 3 / 0
Регистрация: 29.07.2013
Сообщений: 249
|
|
04.08.2013, 14:33 [ТС] | 5 |
Да, я понимаю. Весь код большой и неудобочитаемый. Смотрите у меня уже задана переменная книге - Wb. Но в ней весь путь к книге, а нам, как я понимаю необходимо только имя книги? Сам не могу пристроить, поэтому и обратился.
0
|
1569 / 368 / 103
Регистрация: 13.11.2008
Сообщений: 769
|
|||||||||||
04.08.2013, 15:09 | 6 | ||||||||||
Так Вы выложите нормальный кусок кода, а не ущербное "\\Путь необходимого файла для условия - C .xlsx". Из этой строки извлекать ничего не надо - тут только имя. Если переменная Wb содержить полный путь, включая имя и расширение, то получить только имя просто:
1
|
124 / 3 / 0
Регистрация: 29.07.2013
Сообщений: 249
|
|
04.08.2013, 15:12 [ТС] | 7 |
0
|
1569 / 368 / 103
Регистрация: 13.11.2008
Сообщений: 769
|
|
04.08.2013, 15:16 | 8 |
У Вас справку VBA за неуплату отключили? :-)
16 - vbDirectory. Выделите Dir и нажмите F1, там все описано.
0
|
6930 / 2838 / 545
Регистрация: 19.10.2012
Сообщений: 8,670
|
||||||
04.08.2013, 15:51 | 9 | |||||
Вот это - "открыта ли она уже" не разъясните подробнее?
Ну а пока такой код (для "если она уже кем то открыта"):
2
|
124 / 3 / 0
Регистрация: 29.07.2013
Сообщений: 249
|
|
05.08.2013, 14:30 [ТС] | 10 |
перед процедурой внесения и сохранения данных, нужно убедиться что книга закрыта. И если кто либо эту книгу уже открыл, то должно выскакивать сообщение что книга открыта и выходить из процедуры.
Книга располагается на одном из компьютеров. По локальной сети эту книгу может открыть каждый.
0
|
6930 / 2838 / 545
Регистрация: 19.10.2012
Сообщений: 8,670
|
|
05.08.2013, 14:54 | 11 |
Ну значит функция выше годится.
В параметре передавать полный путь к файлу (строку).
0
|
05.08.2013, 14:54 | |
05.08.2013, 14:54 | |
Помогаю со студенческими работами здесь
11
Как определить, что открыта панель Персонализации и завершить её, если она открыта? Не выполняется программа, если переменная задана русскими буквами Как в экселе узнать открыта ли определённая книга? Как проверить открыта ли БД? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |