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

Вход

Регистрация

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

 

= Мир MS Excel/Упорядочить номера файлов по времени указ. в них - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Упорядочить номера файлов по времени указ. в них (Макросы/Sub)
Упорядочить номера файлов по времени указ. в них
vapima Дата: Среда, 04.02.2015, 15:58 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Доброго дня.
Давно читаю Ваш форум, очень много полезного СПАСИБО.
Но столкнулся с совершенно не решаемой мной проблемой.
Я любитель самоучка, поэтому имею пробелы в совершенно простых моментах.

Есть папка с файлами xls. Название файлов это их время (типа 10-10 или 11-35), формат времени не важен.
Надо в отдельной ячейке каждого файла указать порядковый номер соответствующий времени создания.
Файлы могут быть с разной датой создания, т.е. перемешены.
Файл 10-30 в А1 указать 1
Файл 10-35 в А1 указать 2
Файл 10-50 в А1 указать 4
Файл 10-49 в А1 указать 3

Я понимаю, что надо взять их в массив, упорядочить массив по названию файлов, потом открыть каждый и проставить номера.

Нашел много косвенных примеров, пытался склеить их для моего варианта очень долго. Теперь прошу помощи.
И совсем не понял как прикрутить любой метод упорядочивания (допустим пызрьковый что ли :)) к массиву и стоит ли это?


Сообщение отредактировал vapima - Среда, 04.02.2015, 16:04
 
Ответить
СообщениеДоброго дня.
Давно читаю Ваш форум, очень много полезного СПАСИБО.
Но столкнулся с совершенно не решаемой мной проблемой.
Я любитель самоучка, поэтому имею пробелы в совершенно простых моментах.

Есть папка с файлами xls. Название файлов это их время (типа 10-10 или 11-35), формат времени не важен.
Надо в отдельной ячейке каждого файла указать порядковый номер соответствующий времени создания.
Файлы могут быть с разной датой создания, т.е. перемешены.
Файл 10-30 в А1 указать 1
Файл 10-35 в А1 указать 2
Файл 10-50 в А1 указать 4
Файл 10-49 в А1 указать 3

Я понимаю, что надо взять их в массив, упорядочить массив по названию файлов, потом открыть каждый и проставить номера.

Нашел много косвенных примеров, пытался склеить их для моего варианта очень долго. Теперь прошу помощи.
И совсем не понял как прикрутить любой метод упорядочивания (допустим пызрьковый что ли :)) к массиву и стоит ли это?

Автор - vapima
Дата добавления - 04.02.2015 в 15:58
SLAVICK Дата: Среда, 04.02.2015, 16:08 | Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
допустим пызрьковый что ли

Интересный способ наверно ;)
Нужно отсортировать просто таблицу с именами, или массив?
Список файлов уже в таблице, или искать?
Согласно правилам форума нужен пример того, что и как хотите с исходными данными(т.е. если искать файлы в папке - давайте архив с основным файлом и "искуемыми") :D


Иногда все проще чем кажется с первого взгляда.
 
Ответить
Сообщение
допустим пызрьковый что ли

Интересный способ наверно ;)
Нужно отсортировать просто таблицу с именами, или массив?
Список файлов уже в таблице, или искать?
Согласно правилам форума нужен пример того, что и как хотите с исходными данными(т.е. если искать файлы в папке - давайте архив с основным файлом и "искуемыми") :D

Автор - SLAVICK
Дата добавления - 04.02.2015 в 16:08
vapima Дата: Среда, 04.02.2015, 16:17 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Правило форума это понимаю. Но xls файла нету. Нету таблицы.
Предлагаете что бы макрос создавал таблицу и уже в ней шаманил над порядком?)
Могу конечно создать архив с пустыми файлами с названиями 10-15, 11-30 и т.п., но с рабочей машины это не получится.
За пызрьковый простите))) толстые пальцы ))) пишу с телефона))


Сообщение отредактировал vapima - Среда, 04.02.2015, 16:18
 
Ответить
СообщениеПравило форума это понимаю. Но xls файла нету. Нету таблицы.
Предлагаете что бы макрос создавал таблицу и уже в ней шаманил над порядком?)
Могу конечно создать архив с пустыми файлами с названиями 10-15, 11-30 и т.п., но с рабочей машины это не получится.
За пызрьковый простите))) толстые пальцы ))) пишу с телефона))

Автор - vapima
Дата добавления - 04.02.2015 в 16:17
SLAVICK Дата: Среда, 04.02.2015, 16:46 | Сообщение № 4
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Могу конечно создать архив с пустыми файлами с названиями 10-15, 11-30 и т.п.

Сделайте.
но с рабочей машины это не получится.

Почему не получится?
Я предполагаю, что нужно создать отдельный "Главный" файл, в котором указать где лежат файлы, которые нужно обработать, либо список файлов - которые нужно обработать.
Затем в этом файле написать макрос, который откроет каждый файл и впишет куда нужно порядковый номер... hands


Иногда все проще чем кажется с первого взгляда.
 
Ответить
Сообщение
Могу конечно создать архив с пустыми файлами с названиями 10-15, 11-30 и т.п.

Сделайте.
но с рабочей машины это не получится.

Почему не получится?
Я предполагаю, что нужно создать отдельный "Главный" файл, в котором указать где лежат файлы, которые нужно обработать, либо список файлов - которые нужно обработать.
Затем в этом файле написать макрос, который откроет каждый файл и впишет куда нужно порядковый номер... hands

Автор - SLAVICK
Дата добавления - 04.02.2015 в 16:46
vapima Дата: Среда, 04.02.2015, 17:00 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Я бы рад, но не могу с телфона создать архив с эксель файлами. На работе могу только читать форум, но мне кажется это оффтоп))
Файлов может быть разное количество. Их сначало надо найти в этой папке этим же макросом, по факту в папке только нужные файлы.
Поэтому о списке файлов речи не идет.
 
Ответить
СообщениеЯ бы рад, но не могу с телфона создать архив с эксель файлами. На работе могу только читать форум, но мне кажется это оффтоп))
Файлов может быть разное количество. Их сначало надо найти в этой папке этим же макросом, по факту в папке только нужные файлы.
Поэтому о списке файлов речи не идет.

Автор - vapima
Дата добавления - 04.02.2015 в 17:00
vapima Дата: Среда, 04.02.2015, 17:28 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Старт беру вот с такого макроса, найденого на просторах интернета.
Но совершенно не могу придумать как к нему прикрутить сортировку...
[vba]
Код
Sub Get_All_File_from_Folder()
     Dim sFolder As String, sFiles As String
     sFolder = "C:\VOPPERS\"
     sFolder = sFolder & IIf(Right(sFolder, 1) = Application.PathSeparator, "", Application.PathSeparator)
     'отключаем обновление экрана, чтобы наши действия не мелькали
     Application.ScreenUpdating = False
     sFiles = Dir(sFolder & "*.xls*")
     Do While sFiles <> ""
         'открываем книгу
         Workbooks.Open sFolder & sFiles
         'действия с файлом
         'Запишем на первый лист книги в ячейку А1
         ActiveWorkbook.Sheets(1).Range("A1").Value = "НОМЕР"
         'Закрываем книгу с сохранением изменений
         ActiveWorkbook.Close True 'если поставить False - книга будет закрыта без сохранения
         sFiles = Dir
     Loop
     'возвращаем ранее отключенное обновление экрана
     Application.ScreenUpdating = True
End Sub
[/vba]
 
Ответить
СообщениеСтарт беру вот с такого макроса, найденого на просторах интернета.
Но совершенно не могу придумать как к нему прикрутить сортировку...
[vba]
Код
Sub Get_All_File_from_Folder()
     Dim sFolder As String, sFiles As String
     sFolder = "C:\VOPPERS\"
     sFolder = sFolder & IIf(Right(sFolder, 1) = Application.PathSeparator, "", Application.PathSeparator)
     'отключаем обновление экрана, чтобы наши действия не мелькали
     Application.ScreenUpdating = False
     sFiles = Dir(sFolder & "*.xls*")
     Do While sFiles <> ""
         'открываем книгу
         Workbooks.Open sFolder & sFiles
         'действия с файлом
         'Запишем на первый лист книги в ячейку А1
         ActiveWorkbook.Sheets(1).Range("A1").Value = "НОМЕР"
         'Закрываем книгу с сохранением изменений
         ActiveWorkbook.Close True 'если поставить False - книга будет закрыта без сохранения
         sFiles = Dir
     Loop
     'возвращаем ранее отключенное обновление экрана
     Application.ScreenUpdating = True
End Sub
[/vba]

Автор - vapima
Дата добавления - 04.02.2015 в 17:28
Manyasha Дата: Среда, 04.02.2015, 18:18 | Сообщение № 7
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
Посмотрите файл, названия книг вывожу на лист, потом сортирую, а потом только открываю и проставляю номер.

Но, у меня и без сортировки нумерация правильно записывается. Наверное эксель сам по себе перебирает файлы в папке по алфавиту...
К сообщению приложен файл: main.xlsm (15.6 Kb)


ЯД: 410013299366744 WM: R193491431804
 
Ответить
СообщениеПосмотрите файл, названия книг вывожу на лист, потом сортирую, а потом только открываю и проставляю номер.

Но, у меня и без сортировки нумерация правильно записывается. Наверное эксель сам по себе перебирает файлы в папке по алфавиту...

Автор - Manyasha
Дата добавления - 04.02.2015 в 18:18
SLAVICK Дата: Среда, 04.02.2015, 18:29 | Сообщение № 8
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Ну и мой вариант :D
Загрузка в словарь, потом
Сортировка в массиве
К сообщению приложен файл: 11.rar (55.5 Kb)


Иногда все проще чем кажется с первого взгляда.
 
Ответить
СообщениеНу и мой вариант :D
Загрузка в словарь, потом
Сортировка в массиве

Автор - SLAVICK
Дата добавления - 04.02.2015 в 18:29
vapima Дата: Среда, 04.02.2015, 21:56 | Сообщение № 9
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Спасибо всем! Помогло)))
 
Ответить
СообщениеСпасибо всем! Помогло)))

Автор - vapima
Дата добавления - 04.02.2015 в 21:56
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Упорядочить номера файлов по времени указ. в них (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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