CMD/BAT - [решено] Составить список файлов из папки в заданном виде
-
burolf
CMD/BAT - [решено] Составить список файлов из папки в заданном виде
Дорого времени суток, великие и могучие!
Помогите пожалуйста. Как сделать батник, который из папки с файлами смог бы сформировать файл txt по следующему принципу:
В папке есть n количество файлов (оно всегда растет)
Необходимо в txt файле создать текст следующего формата:
Range("A1").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="P:\files\название файла с расширением" _
, TextToDisplay:="P:\files\название файла с расширением"
Range("A2").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="P:\files\название второго файла с расширением" _
, TextToDisplay:="P:\files\название второго файла с расширением"
.......................
Range("An").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="P:\files\название n-ого файла с расширением" _
, TextToDisplay:="P:\files\название n-ого файла с расширением"
В этом случае "P:\files\" константа, которую можно задавать в зависимости от расположения файла перед запуском батника
ЛИБО
Range("A1").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="название файла с расширением и путем к нему" _
, TextToDisplay:="название файла с расширением и путем к нему"
Range("A2").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="название второго файла с расширением и путем к нему" _
, TextToDisplay:="название второго файла с расширением и путем к нему"
.............................
Range("An").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="название n-ого файла с расширением и путем к нему" _
, TextToDisplay:="название n-ого файла с расширением и путем к нему"
Кому интересно для чего это мне необходимо. Я хочу потом данный текст скопировать в Макрос excel и создать файл с гиперссылками на файлы в папке, в которой этот батник будет запущен.
Непосредственно в excel не раздуплю как это сделать. Помогите пожалуйста. Или подскажите какой софт есть для автоматизации этого процесса.
Помогите пожалуйста. Как сделать батник, который из папки с файлами смог бы сформировать файл txt по следующему принципу:
В папке есть n количество файлов (оно всегда растет)
Необходимо в txt файле создать текст следующего формата:
Range("A1").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="P:\files\название файла с расширением" _
, TextToDisplay:="P:\files\название файла с расширением"
Range("A2").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="P:\files\название второго файла с расширением" _
, TextToDisplay:="P:\files\название второго файла с расширением"
.......................
Range("An").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="P:\files\название n-ого файла с расширением" _
, TextToDisplay:="P:\files\название n-ого файла с расширением"
В этом случае "P:\files\" константа, которую можно задавать в зависимости от расположения файла перед запуском батника
ЛИБО
Range("A1").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="название файла с расширением и путем к нему" _
, TextToDisplay:="название файла с расширением и путем к нему"
Range("A2").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="название второго файла с расширением и путем к нему" _
, TextToDisplay:="название второго файла с расширением и путем к нему"
.............................
Range("An").Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="название n-ого файла с расширением и путем к нему" _
, TextToDisplay:="название n-ого файла с расширением и путем к нему"
Кому интересно для чего это мне необходимо. Я хочу потом данный текст скопировать в Макрос excel и создать файл с гиперссылками на файлы в папке, в которой этот батник будет запущен.
Непосредственно в excel не раздуплю как это сделать. Помогите пожалуйста. Или подскажите какой софт есть для автоматизации этого процесса.
-
Fors1k
Re: CMD/BAT - [решено] Составить список файлов из папки в заданном виде
Цитата burolf:
создать файл с гиперссылками на файлы в папке
Код:
создать файл с гиперссылками на файлы в папке
CMD/BAT - [решено] Составить список файлов из папки в заданном виде
Код:
Код: Выделить всё
param(
$pathFolder = 'C:\files',
$pathXls = 'C:\docs\links.xlsx'
)cls
$Excel = New-Object -ComObject Excel.Application
$WorkBook = $Excel.Workbooks.Add()
$WorkSheet = $WorkBook.Worksheets.Item(1)
gci $pathFolder -rec -file|%{$i=1}{
[void]$WorkSheet.Cells.Hyperlinks.Add(
$workbook.Worksheets.Item(1).Cells.Item($i++,1),$_.FullName
)
}
$Range = $WorkSheet.UsedRange
[void]$Range.EntireColumn.AutoFit()
$workBook.saveAs($pathXls);$excel.Quit()
[Runtime.InteropServices.Marshal]::ReleaseComObject($excel)-
megaloman
Re: CMD/BAT - [решено] Составить список файлов из папки в заданном виде
Fors1k, а кто экземпляр COM освободит? Хотя по идее это должен делать GC, в действительности этого никогда не произойдёт. Поэтому помимо прочего нужно вызвать ReleaseComObject после Quit ([Runtime.InteropServices.Marshal]::RealeaseComObject($excel)).
-
greg zakharov
Re: CMD/BAT - [решено] Составить список файлов из папки в заданном виде
Fors1k, а кто экземпляр COM освободит? Хотя по идее это должен делать GC, в действительности этого никогда не произойдёт. Поэтому помимо прочего нужно вызвать ReleaseComObject после Quit ([Runtime.InteropServices.Marshal]::RealeaseComObject($excel)).
-
burolf
Re: CMD/BAT - [решено] Составить список файлов из папки в заданном виде
Я скопировал этот текст в батник, запустил, но файл не создался. Что я делаю не так? (
-
burolf
Re: CMD/BAT - [решено] Составить список файлов из папки в заданном виде
Наверное, потому, что это не батник. Сохраните текст в файле с расширением ps1 и запускайте через powershell.
-
burolf
Re: CMD/BAT - [решено] Составить список файлов из папки в заданном виде
Цитата burolf:
текст скопировать в Макрос excel и создать файл с гиперссылками на файлы в папке
чего не сразу из txt файла
Код:
Забыл указать, текстовый редактор должен быть не штатный виндовый блокнот, а что-то посолиднее, иначе наверное не получится.
текст скопировать в Макрос excel и создать файл с гиперссылками на файлы в папке
CMD/BAT - [решено] Составить список файлов из папки в заданном виде
чего не сразу из txt файла
Код:
Код: Выделить всё
@echo off
set "spath=C:\Papka"
>file.txt (for /f "delims=" %%a in ('dir /a-d/b/s "%spath%\*.*"') do @set "f=%%a"& call echo file:///%%f:\=/%%)
pauseЗабыл указать, текстовый редактор должен быть не штатный виндовый блокнот, а что-то посолиднее, иначе наверное не получится.
-
alpap
Re: CMD/BAT - [решено] Составить список файлов из папки в заданном виде
спасибо за участие, но при таком варианте просто создается txt файл с адресами на файлы и все. Как сделать именно гиперссылки внутри excel?
-
burolf
Re: CMD/BAT - [решено] Составить список файлов из папки в заданном виде
спасибо за участие, но при таком варианте просто создается txt файл с адресами на файлы и все. Как сделать именно гиперссылки внутри excel?
-
burolf
Re: CMD/BAT - [решено] Составить список файлов из папки в заданном виде
Цитата burolf:
Выдает еще ошибку
Код:
Если покажет меньше пяти, то установите обновление:
Выдает еще ошибку
CMD/BAT - [решено] Составить список файлов из папки в заданном виде
Код:
Код: Выделить всё
$host.Version.MajorЕсли покажет меньше пяти, то установите обновление:
https://www.microsoft.com/en-us/down....aspx?id=54616