import org.codehaus.groovy.scriptom.*;
import org.codehaus.groovy.scriptom.tlb.office.excel.*;
Scriptom.inApartment
{
ea = new ActiveXObject("Excel.Application")
wb = ea.workbooks.open(new File("test1.xls").canonicalPath)
// 最初のシート名の表示
println(wb.sheets(1).name)
// シートの個数
println(wb.sheets.count)
// 各シート名の列挙
for(es in wb.sheets){
println(es.name)
}
wb.close
}
サンプルエクセルファイル(test1.xls)
上図のような「テスト1」、「Sheet2」、「Sheet3」という名称のシートを含む
エクセルファイルを用意して実行すると、以下のように実行結果が表示されます。
C:\share\excel\>groovy ScriptomExcel1.groovy
テスト1
3
テスト1
Sheet2
Sheet3
動作環境
JDK 1.6 Update14, groovy1.6.3, Microsoft Office 2007
WSHで同様の処理を行うには、以下のスクリプトを実行します。
Set sh = CreateObject("WScript.Shell")
Set xa = CreateObject("Excel.Application")
Set wb = xa.workbooks.open(sh.CurrentDirectory + "\test1.xls")
' 最初のシート名の表示
WScript.StdOut.WriteLine wb.sheets(1).name
' シートの個数
WScript.StdOut.WriteLine wb.sheets.count
' 各シート名の列挙
for each es in wb.sheets
WScript.StdOut.WriteLine es.name
next
wb.close
関連情報
0 件のコメント:
コメントを投稿