powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Проверка совпадения имен файлов
9 сообщений из 9, страница 1 из 1
Проверка совпадения имен файлов
    #39412879
MaxLerXXX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.
Макросом из Ворда сохраняю файл в нужную папку на диске. При этом если файл с таким именем уже есть в этой папке, то он перезаписывается. Хочу понять как выполнить проверку наличия уже существующего файла с таким именем, чтобы можно было реализовать возможность выбора замены файла, сохранения под другим именем или отмены сохранения. Точнее, проверку нужно производить по части имени.
Пример: есть файл TZ_105-17_01.03.2017.docm. Создаётся файл TZ_105-17_05.03.2017.docm. Как видите меняется дата. Но двух одинаковых документов с номером 105-17 не должно быть.
Я в этом деле новичок и только начинаю изучать VB, поэтому если что не так прошу прощения за глупые вопросы.
...
Рейтинг: 0 / 0
Проверка совпадения имен файлов
    #39412880
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
C помощью функции Dir перебрать все файлы в папке, проверяя, не совпадает ли искомая часть имени.
...
Рейтинг: 0 / 0
Проверка совпадения имен файлов
    #39412967
Фотография The_Prist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProC помощью функции Dir перебрать все файлы в папке
Shocker.Pro,
при помощи Dir можно сразу маску задать :)
MaxLerXXXесть файл TZ_105-17_01.03.2017.docm. Создаётся файл TZ_105-17_05.03.2017.docm
Код: vbnet
1.
2.
3.
4.
5.
sP = "C:\test\файлы какие-то\" 'путь к папке с файлами
sf = dir(sP & "TZ_105-17_??.??.??.docm")
if sf <> "" then
msgbox "файл уже есть в папке!"
end if


если на конце может быть не только дата, то можно и так:
Код: vbnet
1.
sf = dir(sP & "TZ_105-17_*.docm")
...
Рейтинг: 0 / 0
Проверка совпадения имен файлов
    #39412969
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
The_Pristпри помощи Dir можно сразу маску задать :)и действительно ))
...
Рейтинг: 0 / 0
Проверка совпадения имен файлов
    #39412976
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MaxLerXXXПри этом если файл с таким именем уже есть в этой папке, то он перезаписывается. Хочу понять как выполнить проверку наличия уже существующего файла с таким именем, чтобы можно было реализовать возможность выбора замены файла, сохранения под другим именем или отмены сохранения. Точнее, проверку нужно производить по части имени.Не надо никаких проверок - это лишнее и нахрен не нужное телодвижение. Просто безусловно удаляйте по требуемой маске при отключенном обработчике ошибки. Есть файл - удалится, нет - хуже не станет.
...
Рейтинг: 0 / 0
Проверка совпадения имен файлов
    #39412998
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaПросто безусловно удаляйтеВообще-то автор хотел сохранять под другим именем, а не удалять ))
...
Рейтинг: 0 / 0
Проверка совпадения имен файлов
    #39413412
MaxLerXXX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,
Спасибо за Ваш ответ.
...
Рейтинг: 0 / 0
Проверка совпадения имен файлов
    #39413418
MaxLerXXX
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
The_Prist,

Благодарю за ответ. Хочу только уточнить: а я могу в качестве маски для "105-17" или "TZ_105-17_" задать переменную? Потому что номера будут постоянно меняться.
...
Рейтинг: 0 / 0
Проверка совпадения имен файлов
    #39413420
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Проверка совпадения имен файлов
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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