PowerShell で Excel 2007 のシートを操作する
PowerShell ??????????????????????? Excel ???????????????????????????????? Excel ?????????????????????????????????????????
2007 Office system ???????????? Office Open XML ??????????????????????????????? API ??????????System.IO.Packaging ????????.NET Framework 3.0 ???????????????Excel 2007 ?? (xlsx) ?????System.IO.Packaging ?????? Excel ???????????????????????????????????????????Office OpenXML ????????????
?????CodePlex ?????????????????????????????????????Excel 2007 ?????????????????????????? System.IO.Packaging ???? ????
ExcelPackage: Office Open XML Format file creation
https://www.codeplex.com/ExcelPackage
???? (?????)?????????????????????????????ExcelPackageBinary.zip ?????? ExcelPackage.dll ?????????????? Excel ????????TestSheet.xlsx ??? ExcelPackage.dll ?????????????????
? ? ?? ?? ?? ?? ?? ??
System.IO.Packaging ??????? .NET Framework 3.0 ???????????????????? PowerShell ???????
[Reflection.Assembly]::LoadFrom("$pwd\excelpackage.dll")
$ep = New-Object OfficeOpenXml.ExcelPackage (dir TestSheet.xlsx)
foreach ($i in 1..4) {
foreach ($j in 1..2) {
$ep.workbook.worksheets[1].Cell($i,$j).value
}
}
????????????????????????
?
?
??
??
??
??
??
??
??????(???????????????????????????????????)
???????????? Excel 2007 ???????????????????????????????????????????
Comments
Anonymous
January 01, 2003
そうですね、サーバーに Office をインストールすることは考えられない、というお話をよく聞きます。Office のアプリケーションなしでデータを読み書きできる Open XML は、意外なところで有効かもしれません。ぜひ試してみてください。 一方で、MMCベースの管理ツールは、リモートコンピュータに接続できるものが増えてきましたので、クライアトマシンに管理ツールだけインストールしてリモート管理、というスタイルが増えてくるかもしれませんね。特にユーザーやグループに対して、こまかく管理権限を委任してる場合は、そのスタイルが向いていると思います。となると、管理ツールと Office が同じマシンに入っているのも違和感無いです。 どちらも一長一短だと思いますが、自由度が高まる分、組織ごとにしっかり方針を決めないといけませんね。Anonymous
January 01, 2003
The comment has been removedAnonymous
January 01, 2003
The comment has been removed