• 締切済み

Excel,Accessの他言語からの起動について

Cobolのような従来の事務言語の処理中にExcelやAccessといった簡易言語を起動させデータを受け渡す場合CSVで結果を出力して受け渡すことは、簡単にできます。しかし出力結果を自動でExcelやAccessに取り込ませて結果を出力させる場合には、特別な処理が必要だと思いますが、そのような事務処理言語での記述例や記述の仕方について教えてください。汎用機では半角(1バイト系)と全角(2バイト系)はシフトコードを挟み区別させています。また文字サイズをプログラム中でします。しかしExcel等では出力時に任意に文字サイズを指定できます。そのような事を汎用機でいうJCLの記述のような仕方でPCでできるのか。できるとすればどのように記述すればよいのかを例示しているサイトなどをご存じでしたらご教示ください。よろしくお願いします。

みんなの回答

  • luka3
  • ベストアンサー率72% (424/583)
回答No.1

もう少し実行環境などの情報を書いていただくとよろしいかも。 もしWindows上でやっていいのであれば、、、 例えば次のスクリプトを sample.vbs という名前で保存したのち、Excelの入っているPCでダブルクリックで実行してみて下さい。 -- ここから Set excel = CreateObject("Excel.Application") excel.Visible = True Set book = excel.Workbooks.Add book.Sheets("sheet1").Cells(1, 1).Value = "テスト" book.Sheets("sheet1").Cells(1, 1).Font.Size = 20 book.Sheets("sheet1").Cells(1, 1).Interior.ColorIndex = 6 -- ここまで たったこれだけのテキストファイルでも、エクセルに色々書き込みできるのがわかりますでしょうか。 このスクリプトをCOBOLで出力して最後にWindows上で実行すれば書式付きのエクセルが作れます。 また、最近のOfficeであれば中身はXMLというテキストファイル(をZIP圧縮したもの)なので、このフォーマットに従って記述できればエクセルで扱えます。 Javaでは対応しているようです。 ・最新ExcelフォーマットをJavaで操作するための基礎 (1/2) - @IT http://www.atmarkit.co.jp/fjava/special/ooxml02/ooxml02_1.html 「COBOL EXCEL」で検索すると色々出てきますので、この中にも参考にできるものがあるのではないでしょうか。

kaitosha
質問者

お礼

有り難うございます。補足に書くことかも知れませんが、セルを2次元表として考え、レコード1件ごとにループでデータをMOVEして例示のようなテキストデータとして書き出し、それを実行すれば、CSVで書き出すことなくエクセルで扱えるということですね。やってみます。有り難うございます。

関連するQ&A