Доброго здравия. Встала задача по сортировке списка имен файлов. Думаю, задачу возможно решить с помощью Эксель... но как? ничего путного в голову не пиходит.
Есть папка с файлами. имя файла состоит из «общей части (в примере QW.ERT.12.34567.89 – сохранен тип знака («буква/цифра) и «индивидуальной» - три цифры. Файлы могут быть пяти типов (расширений)
QW.ERT.12.34567.89.100.тип1 (имя файла «тип1» может оканчиваться только на ноль) QW.ERT.12.34567.89.101.тип2 (имя файла «тип2» не может оканчиваться на ноль) QW.ERT.12.34567.89.100.тип3 QW.ERT.12.34567.89.101.тип3 QW.ERT.12.34567.89.101.тип4(имя файла «тип4» не может оканчиваться на ноль) QW.ERT.12.34567.89.100.тип5 (имя файла «тип5» может оканчиваться только на ноль) «не может оканчиваться» надо понимать как «таких файлов не существует». И так далее. Всего около 600 имен. Соответственно, для каждого имени – возможно три типа (расширения) – тип1, тип3 и тип5 (если оканчивается на 0) или тип2, тип3 и тип4 (если оканчивается НЕ на 0).
Сделать список файлов, имеющихся в папке – не вопрос, утилит, рашающих этот вопрос полно. Загрузить эти значения в ячейки первого столбца тоже не проблема.
Возможно ли создать «сортировщик», который - (как минимум) сможет перекинуть имена файлов "тип1" из первого столбц во второй, "тип2" - в третий и так далее. - "уплотнит список по вертикали" так, чтобы в каждой строке были одноименные файлы
Доброго здравия. Встала задача по сортировке списка имен файлов. Думаю, задачу возможно решить с помощью Эксель... но как? ничего путного в голову не пиходит.
Есть папка с файлами. имя файла состоит из «общей части (в примере QW.ERT.12.34567.89 – сохранен тип знака («буква/цифра) и «индивидуальной» - три цифры. Файлы могут быть пяти типов (расширений)
QW.ERT.12.34567.89.100.тип1 (имя файла «тип1» может оканчиваться только на ноль) QW.ERT.12.34567.89.101.тип2 (имя файла «тип2» не может оканчиваться на ноль) QW.ERT.12.34567.89.100.тип3 QW.ERT.12.34567.89.101.тип3 QW.ERT.12.34567.89.101.тип4(имя файла «тип4» не может оканчиваться на ноль) QW.ERT.12.34567.89.100.тип5 (имя файла «тип5» может оканчиваться только на ноль) «не может оканчиваться» надо понимать как «таких файлов не существует». И так далее. Всего около 600 имен. Соответственно, для каждого имени – возможно три типа (расширения) – тип1, тип3 и тип5 (если оканчивается на 0) или тип2, тип3 и тип4 (если оканчивается НЕ на 0).
Сделать список файлов, имеющихся в папке – не вопрос, утилит, рашающих этот вопрос полно. Загрузить эти значения в ячейки первого столбца тоже не проблема.
Возможно ли создать «сортировщик», который - (как минимум) сможет перекинуть имена файлов "тип1" из первого столбц во второй, "тип2" - в третий и так далее. - "уплотнит список по вертикали" так, чтобы в каждой строке были одноименные файлыWildmechanic1488
не понял для чего что на что заканчивается или не заканчивается. дело же в расширении тип1 и т.д. или я чего-то не понял?
поменяйте на "свои" [vba]
Код
Sub u_748() Application.ScreenUpdating = False Columns("A:E").ClearContents a = ThisWorkbook.Path 'папка с файлами (в данном случае, та в которой этот файл) b$ = Dir(a & "\*.*") Do While b$ <> "" c = Right(b, 4) '4 правых символа ~ расширение If c = "xlsx" Then f = 1 'расширение - 1. столбец If c = "xlsm" Then f = 2 'расширение - 2. столбец 'и т.д. g = Cells(Rows.Count, f).End(xlUp).Row + 1 'след пустая ячейка столбца Cells(g, f) = b b$ = Dir Loop Application.ScreenUpdating = True End Sub
[/vba]
не понял для чего что на что заканчивается или не заканчивается. дело же в расширении тип1 и т.д. или я чего-то не понял?
поменяйте на "свои" [vba]
Код
Sub u_748() Application.ScreenUpdating = False Columns("A:E").ClearContents a = ThisWorkbook.Path 'папка с файлами (в данном случае, та в которой этот файл) b$ = Dir(a & "\*.*") Do While b$ <> "" c = Right(b, 4) '4 правых символа ~ расширение If c = "xlsx" Then f = 1 'расширение - 1. столбец If c = "xlsm" Then f = 2 'расширение - 2. столбец 'и т.д. g = Cells(Rows.Count, f).End(xlUp).Row + 1 'след пустая ячейка столбца Cells(g, f) = b b$ = Dir Loop Application.ScreenUpdating = True End Sub