2012-03-08 2 views
0

У меня мало файлов excel, где у каждого файла есть несколько книг.Как сохранить только необходимую книгу в excel с помощью powershell?

Предположим, что имена книг называются следующими.

Introduction 
Testcase 
Testresult 

предположить Кроме того, все XLS файлы находятся в одной папке (для бывших: C: \ Servers)

Testsample.xlsx 
TestExecution.xlsx and few more xlsx files ... 

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

результирующие файлы, такие как,

Testsample-res.xlsx TestExecution-res.xlsx и несколько более результирующих XLSX файлов

Как сохранить только TestResult книги в новых XLS файлах? (С помощью PowerShell скрипт)

ответ

2

Это будет движение TestResult лист на новый документ Excel (заменить Move() с Copy(), чтобы оставить оригинальный лист в исходном DOC):

$xl = New-Object -ComObject Excel.Application 
$xl.Visible=$true 
$wb = $xl.Workbooks.Add('D:\Book1.xlsx') 
$wb.Sheets.Item('Testresult').Move() 
$xl.ActiveWorkbook.SaveAs('D:\Testresult.xlsx') 
$xl.Quit() 
+0

Buddy, Он работает, если у него есть один файл excel. Извините, что не упоминал об этом раньше. У меня нет только одного xls-файла. У меня есть 4 или 5 файлов xlsx. Я пытался поставить ваше решение внутри цикла foreach, и он генерирует исключение. «Вы не можете вызывать метод с нулевым значением». Я немного изменил свой вопрос. – Samselvaprabu

+0

Спасибо, друг. Я написал код внутри функции и вызываю его через цикл foreach. Он работает нормально. Ваш ответ принят – Samselvaprabu

Смежные вопросы