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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.06.2017, 11:40   #1
djrec
Новичок
Джуниор
 
Регистрация: 15.06.2017
Сообщений: 5
По умолчанию Как переименовать все файлы в папке, на имена из столбца таблицы excel?

Нужно поочередно переименовать все фотографии (JPEG) в папке, взяв имя (7 значное число) в столбце таблицы excel. То есть первый имя файла в папке = первая ячейка в столбце.



лист - "Лист1".
столбец- "А"
djrec вне форума Ответить с цитированием
Старый 15.06.2017, 12:04   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от djrec Посмотреть сообщение
То есть первый имя файла в папке
что это значит - "первый" ? По тому, как они записаны в файловой системе (физически)?
Так этот порядок может быть совершенно не тот, как Вы ожидаете.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.06.2017, 12:27   #3
vefer
Форумчанин
 
Регистрация: 11.10.2010
Сообщений: 134
По умолчанию

Сначала переименуйте вручную номерами по порядку, ну или программой какой нибудь, их много. А потом макросом можно уже. Код погуглите.
vefer вне форума Ответить с цитированием
Старый 15.06.2017, 13:15   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от vefer Посмотреть сообщение
Сначала переименуйте вручную номерами по порядку, ну или программой какой нибудь, их много.
в общем случае нет смысла предварительно переименовывать.
надо сразу переименовать в нужное.
В макросе это делать или в каком-нибудь батнике - это уже другой вопрос.
К тому же автор темы не ответил на заданный вопрос (а это принципиально важный аспект).
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.06.2017, 13:26   #5
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
К тому же автор темы не ответил на заданный вопрос
А если кроме "Новая тема" пользовался и "Найти", получил хайп бы раньше
http://www.programmersforum.ru/showthread.php?t=60191
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 15.06.2017, 13:29   #6
vefer
Форумчанин
 
Регистрация: 11.10.2010
Сообщений: 134
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
в общем случае нет смысла предварительно переименовывать.
Смысл есть, если нужно определенный порядок соблюсти, да и код легче написать будет, а то ведь не понятно как их переименовывать - либо в алфавитном порядке, либо в хронологическом, а может вообще вразнобой.
vefer вне форума Ответить с цитированием
Старый 15.06.2017, 14:04   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от vefer Посмотреть сообщение
Смысл есть, если нужно определенный порядок соблюсти
нет смысла. Ведь этой программе, которой Вы собираетесь переименовывать предварительно нужно определённый порядок соблюсти. Так смыслы переименовывать первый в файл в 1.jpg, если можно переименовывать файл в имя из ячейки[1],
второй в файл в 2.jpg, если можно переименовывать файл в имя из ячейки[2] и т.д.

так что - нет смысла.

да и уже привели ссылку на тему, где есть рабочий макрос (в разных вариантах) - бери, подправь под себя и запускай!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.06.2017, 15:05   #8
djrec
Новичок
Джуниор
 
Регистрация: 15.06.2017
Сообщений: 5
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
что это значит - "первый" ? По тому, как они записаны в файловой системе (физически)?
Так этот порядок может быть совершенно не тот, как Вы ожидаете.
файлы имеют вид DSC_....jpg, в точках четырехзначное число по возрастанию. То есть сортировка либо по имени от А до Я, либо по времени создания файла (что в этом случае одно и то же)
djrec вне форума Ответить с цитированием
Старый 15.06.2017, 15:12   #9
djrec
Новичок
Джуниор
 
Регистрация: 15.06.2017
Сообщений: 5
По умолчанию

Цитата:
Сообщение от Aleksandr H. Посмотреть сообщение
А если кроме "Новая тема" пользовался и "Найти", получил хайп бы раньше
http://www.programmersforum.ru/showthread.php?t=60191
Да я эту страницу и нашел в гугле, но к сожалению задача в ней немного другая, а в VBA я никогда не работал, по этому у меня сложность даже отредактировать ту программу.



NewFilename = НовоеИмяФайла(sh.Cells(1, 1))

Как прописать, что бы имя файла бралось каждый раз не с одной и той же ячейки, а опускалось по столбцу вниз. А1, А2, А3... итд ? новый файл следующая ячейка?

Последний раз редактировалось djrec; 15.06.2017 в 15:35.
djrec вне форума Ответить с цитированием
Старый 15.06.2017, 15:55   #10
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

А если файлов в папке > ячеек в А ?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Переименовать файлы в папке FakeGen Общие вопросы Delphi 19 04.08.2011 10:34
как отобразить в таблице (на форме) все файлы которые находятся в определённой папке? mojohead Помощь студентам 10 05.04.2011 10:48
Переименовать файлы в папке (с условием) Gvaridos Microsoft Office Excel 3 01.11.2010 11:31
Как найти все файлы в папке? blackstersl Общие вопросы Delphi 3 24.06.2009 16:52
как определить какие файлы есть в папке и вывести их имена в текстовый файл Tdoctor Паскаль, Turbo Pascal, PascalABC.NET 3 04.11.2008 05:18