Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Проверка наличия файла - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Проверка наличия файла (VBA)
Проверка наличия файла
Starbirst Дата: Понедельник, 18.12.2017, 23:12 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 55
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Доброго времени суток всем! Ребята, помогите, пожалуйста, решить следующую проблему! Как сделать, чтобы макрос перед срабатыванием проверял наличие требуемого файла в определенной директории. Предположим в определенной директории содержится файл, в этом случае макрос прекращает дальнейшее действие и появляется UserForm в виде сообщения о том, что дальнейшее продолжение невозможно. В случае, если в директории не удалось обнаружить файл с конкретным именем, то макрос выполняется дальше.
 
Ответить
СообщениеДоброго времени суток всем! Ребята, помогите, пожалуйста, решить следующую проблему! Как сделать, чтобы макрос перед срабатыванием проверял наличие требуемого файла в определенной директории. Предположим в определенной директории содержится файл, в этом случае макрос прекращает дальнейшее действие и появляется UserForm в виде сообщения о том, что дальнейшее продолжение невозможно. В случае, если в директории не удалось обнаружить файл с конкретным именем, то макрос выполняется дальше.

Автор - Starbirst
Дата добавления - 18.12.2017 в 23:12
vikttur Дата: Понедельник, 18.12.2017, 23:17 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 2705
Репутация: 477 ±
Замечаний: 0% ±

[vba]
Код
    sFldr = ThisWorkbook.Path & "\Temp\" & "файл.xlsx"
    If Dir(sFldr, vbDirectory) = "" Then ... ' если нет, то...
[/vba]
 
Ответить
Сообщение[vba]
Код
    sFldr = ThisWorkbook.Path & "\Temp\" & "файл.xlsx"
    If Dir(sFldr, vbDirectory) = "" Then ... ' если нет, то...
[/vba]

Автор - vikttur
Дата добавления - 18.12.2017 в 23:17
Starbirst Дата: Понедельник, 18.12.2017, 23:34 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 55
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Подскажите, как мне правильно заменить "\Temp\" на директорию "C:\Разработки\Ведомость дефектов\Дефекты по типам ПС\"? Ругается Excel...
= "" как этот применить к UserForm?


Сообщение отредактировал Starbirst - Понедельник, 18.12.2017, 23:34
 
Ответить
СообщениеПодскажите, как мне правильно заменить "\Temp\" на директорию "C:\Разработки\Ведомость дефектов\Дефекты по типам ПС\"? Ругается Excel...
= "" как этот применить к UserForm?

Автор - Starbirst
Дата добавления - 18.12.2017 в 23:34
vikttur Дата: Понедельник, 18.12.2017, 23:36 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 2705
Репутация: 477 ±
Замечаний: 0% ±

[vba]
Код
sFldr = "C:\Разработки\Ведомость дефектов\Дефекты по типам ПС\файл.xlsx"
[/vba]
При чем здесь форма пользователя, не понял...
 
Ответить
Сообщение[vba]
Код
sFldr = "C:\Разработки\Ведомость дефектов\Дефекты по типам ПС\файл.xlsx"
[/vba]
При чем здесь форма пользователя, не понял...

Автор - vikttur
Дата добавления - 18.12.2017 в 23:36
Starbirst Дата: Вторник, 19.12.2017, 00:06 | Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 55
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Поясню. У каждого пользователя на его рабочем компе имеется файл. После того, как пользователь заполнил свои данные, ему нужно будет загрузить таблицу с базой данных, которая лежит в сети. Открытие базы данных осуществляется из файла на компе каждого пользователя. Чтобы файл не открывался в режиме только для чтения, пытаюсь сделать проверку файла на открытие. То есть если кто-то из пользователей работает в базе данных, то вместе с файлом временно создается текстовый документ, наличие которого свидетельствует о том, что база данных уже открыта, а когда пользователь завершит свою работу, текстовый документ самоустранится. При наличии текстового файлика любой другой пользователь получит сообщение, что база данных используется другим пользователем. Сколько ни пытался найти решение в инете, так ничего дельного не попалось. С макросами очень поверхностно работаю.
 
Ответить
СообщениеПоясню. У каждого пользователя на его рабочем компе имеется файл. После того, как пользователь заполнил свои данные, ему нужно будет загрузить таблицу с базой данных, которая лежит в сети. Открытие базы данных осуществляется из файла на компе каждого пользователя. Чтобы файл не открывался в режиме только для чтения, пытаюсь сделать проверку файла на открытие. То есть если кто-то из пользователей работает в базе данных, то вместе с файлом временно создается текстовый документ, наличие которого свидетельствует о том, что база данных уже открыта, а когда пользователь завершит свою работу, текстовый документ самоустранится. При наличии текстового файлика любой другой пользователь получит сообщение, что база данных используется другим пользователем. Сколько ни пытался найти решение в инете, так ничего дельного не попалось. С макросами очень поверхностно работаю.

Автор - Starbirst
Дата добавления - 19.12.2017 в 00:06
vikttur Дата: Вторник, 19.12.2017, 00:40 | Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 2705
Репутация: 477 ±
Замечаний: 0% ±

[vba]
Код
    sFldr = "C:\Разработки\Ведомость дефектов\Дефекты по типам ПС\файл.xlsx"
    If Dir(sFldr, vbDirectory) <> "" Then  ' файл есть
          MsgBox "Файл занят. Попейте кофейку или поиграйте в тетрис"
    Else
          MsgBox "Кофеварка отключена. Пора работать"
    End If
[/vba]


Сообщение отредактировал vikttur - Вторник, 19.12.2017, 00:40
 
Ответить
Сообщение[vba]
Код
    sFldr = "C:\Разработки\Ведомость дефектов\Дефекты по типам ПС\файл.xlsx"
    If Dir(sFldr, vbDirectory) <> "" Then  ' файл есть
          MsgBox "Файл занят. Попейте кофейку или поиграйте в тетрис"
    Else
          MsgBox "Кофеварка отключена. Пора работать"
    End If
[/vba]

Автор - vikttur
Дата добавления - 19.12.2017 в 00:40
Starbirst Дата: Вторник, 19.12.2017, 00:56 | Сообщение № 7
Группа: Пользователи
Ранг: Участник
Сообщений: 55
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Приогромнейшая благодарность! Попробую применить Ваш код.


Сообщение отредактировал Starbirst - Вторник, 19.12.2017, 18:49
 
Ответить
СообщениеПриогромнейшая благодарность! Попробую применить Ваш код.

Автор - Starbirst
Дата добавления - 19.12.2017 в 00:56
Hugo Дата: Вторник, 19.12.2017, 09:18 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2823
Репутация: 637 ±
Замечаний: 0% ±

А я вот не понял причём тут " Вопросы по Excel » Формулы/Formulas"
Excel вообще ни разу не упоминался, как и формулы...
[moder]Перенес тему.[/moder]


excel@nxt.ru
webmoney: E265281470651 R418926282008 Z422237915069


Сообщение отредактировал SLAVICK - Вторник, 19.12.2017, 10:15
 
Ответить
СообщениеА я вот не понял причём тут " Вопросы по Excel » Формулы/Formulas"
Excel вообще ни разу не упоминался, как и формулы...
[moder]Перенес тему.[/moder]

Автор - Hugo
Дата добавления - 19.12.2017 в 09:18
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Проверка наличия файла (VBA)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс цитирования
© 2010-2018 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!