Используя PowerShell, можно ли преобразовать файл XLSX в XLS?

3204
jes516

Как говорится в названии, возможно ли это? Я нашел несколько скриптов для XLS в XLSX, но не наоборот.

Можно ли это сделать с powershell?

Спасибо

1
Да, это может быть сделано. Если вы можете сделать это с помощью мыши, вы можете сделать это в сценарии. Невозможное возможно. E.V.I.L. 9 лет назад 0

1 ответ на вопрос

2
E.V.I.L.

Настройте свои переменные

$Filepath = 'C:\Users\mad tom vane\Documents\Test1.xlsx' $Filepath = Get-Item -Path $Filepath $NewFilepath = Join-Path -path $Filepath.directory.fullname -ChildPath "$($Filepath.basename).xls" 

Откройте Excel вверх

$Excel = New-Object -ComObject Excel.Application $Excel.Visible = $true #or false 

Мне нравится открывать только для чтения

$Workbook = $Excel.Workbooks.Open($Filepath.fullname,[Type]::Missing,$true) 

Сохраните книгу как xlExcel8 для файла XLS

$Workbook.SaveAs($NewFilepath,56)  #https://technet.microsoft.com/en-us/library/ff730962.aspx $Workbook.Close() $Excel.Quit() [System.Runtime.Interopservices.Marshal]::ReleaseComObject($Excel) Remove-Variable Excel 
Есть ли шанс, что этот скрипт работает на сервере 2003? Я думаю нет, так как это выглядит как процесс переименования. jes516 9 лет назад 0
Я протестировал этот «скрипт» (строки кода) на PowerShell 2.0, и все это работает. http://support.microsoft.com/kb/968929?wa=wsignin1.0 E.V.I.L. 9 лет назад 0
мои извинения, я имел в виду, будет ли он работать на сервере, если на сервере нет Excel / Office 2007+? Другими словами, должна ли машина иметь возможность создавать файлы .xlsx изначально. вышеописанное хорошо работает на моих машинах 7 и 8.1, но у меня есть офис 2013 на обеих из них. на сервере 2003 есть только офис 2003. jes516 9 лет назад 0
Хороший вопрос. У меня нет Office 2003 для тестирования. Я бы просто проверил это и посмотрел, какие ошибки возникают. E.V.I.L. 9 лет назад 0