Страницы: 1
RSS
Интересные вопросы по VBA(продолжение темы из старого форума), Постим сюда вопросы для обсуждения(ну и готовые решения, если они того стоят).
 
Как оказалось, диалоги выбора файлов блокируют выбранную папку. Впервые столкнулся. Проблема из темы: http://www.planetaexcel.ru/forum/?PAGE_NAME=message&FID=1&TID=49014&MID=407152#message407152
Там же и варианты решения. Но может кто чего поизящней подскажет? :D
Я сам - дурнее всякого примера! ...
 
Неясно, что советовать.
Ведь для методов .GetOpenFilename/.SaveAsFilename прямо заявлено: "may change the current drive or folder". То есть они неявно используют ChDrive + ChDir. И становится понятно, что после их использования проверку надо производить не только на результат, возвращаемый методом, но и на CurDir().
 
Цитата
AndreTM пишет:
прямо заявлено: " may change the current drive or folder "
AndreTM, а откуда ты это взял? В моей справке для 2003 этого нет ни для GetOpenFilename, ни для FileDialog. Хотя это и так само собой разумеется. Дело не в этом. Метод отработал и должен освободить папку, тем более, что возвращает не файл, а всего лишь строку(и). А он подлец блокирует выбранную папку от изменений.
Я сам - дурнее всякого примера! ...
 
Цитата
KuklP пишет:
Как оказалось, диалоги выбора файлов блокируют выбранную папку.
Это как понять?) Огласите весь список, а то читать пост лень.)
There is no knowledge that is not power
 
В теме по ссылке не дают переименовать, удалить папку.
Я сам - дурнее всякого примера! ...
 
Мне кажется это логически правильно - человек выбрал папку и что-то делает с её содержимым. И никто другой в это время не имеет права эту папку менять/удалять.
Как обойти - уже проверено Сергеем с ChDir.
Другой вариант - может сохранить имя в public переменной и затем обработать другим кодом (например по таймеру через секунду)?
Изменено: Hugo - 18.06.2013 10:42:19
Страницы: 1
Наверх