Word、Excelドキュメントを自動生成する方法

2014年5月19日

業務システムでは、何かしらのドキュメントを自動作成することを
求められることが多いです。
ドキュメントといっても幅広く、
見積書、請求書、出荷伝票など(単票)から、
出荷一覧、請求一覧、顧客一覧、といった一覧情報(帳票)まで様々です。

たいていのお客様はWordやExcelでの閲覧・編集を望まれるのですが、
簡単そうに見えて、なかなかご要望どおりにできませんでした。
しかし最近、ようやくこのご要望に対応可能な方法を見つけることができました。

これまで


よくご存じの方が多いかもしれませんが、「CSVファイル」というファイルがあります。
Excelで開くことのできるファイルなのですが、弱点は
セルに形式(数値のカンマ区切りや右寄せ・左寄せ、0埋めなど)をつけることできない点にあります。

ただ、システムから作成するには容易なファイル形式のため、
長い間、システムから一覧情報を書き出す場合には、csvファイルが使われてきました。

セルに形式をつけられないだけでなく、
グラフも画像もつけられないので、
すべて文字データだけです。
お客様にはこの文字データを元にExcelで加工していただくなど
一手間かけていただく必要がありました。

Excel2003 XML、Word2003 XML


Excel2003, Word2003 では、xlsやdocファイルを
xmlファイルとして保存できるモードが用意されました。
xmlファイルは、htmlのいとこのようなもので、
csvファイルと同様、システムから作成するのが容易なファイル形式でした。

ですので、システムから Excel2003 XML の形式でファイルを作成し、
お客様には Excel で開いてもらうと、
セルに形式のついたファイルを開くことができるわけです。
金額には¥をつけたり、タイトル行には色をつけたり罫線を引いたり、
または印刷範囲の設定もすることができます。

ただし、csvファイルと同様、画像やグラフの埋め込みはできませんでした。
また、このxmlファイルをダブルクリックしても、環境によってはExcelやWordが
起動するわけではない、という問題もありました。

xlsx, docx


Excel2007, Word2007 になって xlsx, docx というファイルがサポートされました。
もうこれらの製品ができてから7~8年経過しているので
xlsxやdocxが、ExcelやWordのファイルであることを認知されている方も多いと思います。

xlsやdocのような以前の形式をプログラムで自動作成するのは
あまり推奨されないある種の逃げ道を使うことでなんとか実現できる、
という敷居の高いものでした。

一方、xlsx, docx は規格化されており
上述のcsvやxmlほどではないにせよ、
プログラムで作成するのにそれほど敷居の高いファイル形式ではありません。
ですので、その規格に則って作れば作れないことはない、というのが
つい最近までの私の認識でした。

「作れないことはない」が「規格通りに作るには手間がかかる」というのがネックで
どうしたらよいのか、ずっと考えていたのですが、
先日下記のオープンソースを見つけました。

OpenTBS
http://www.tinybutstrong.com/opentbs.php

詳細は割愛しますが、前提としてPHPで動作しているシステムでなら使うことができます。
ひな形のxlsx, docx を用意し、これをテンプレートとして利用することで
データを差し込みしてxlsx, docx を作るようなイメージです。

これまでのcsvやExcel 2003XML, Word 2003XMLと違い、
グラフや図表、マクロまでをあらかじめ含めたファイルを
システムで自動作成することができます。

お問い合わせ

本記事(Word、Excelドキュメントを自動生成する方法)にかかわること、 中小企業様さま向けの社内向け業務ウェブシステムにかかわることなど ご相談、ご質問などがありましたら何なりとお問い合わせください。





captcha

この記事の著者

イルカシステム(株) イルカシステム株式会社

イルカシステム(株)は、以下のような業務用ウェブシステムのご提案、受託開発、運用を行っております。

1.中小企業さま向けの社内向け業務ウェブシステム(営業支援、顧客管理、受注管理、請求入金管理、在庫管理、経営数値管理など)

2.医療業界向けの業務改善システム

※業務ウェブシステムの開発を効率化するための自社サービス「イルカベーカリー」をご提供しております。
※医療業界向けに、臨床研究の無作為割付自動化のための自社サービス「ムジンワリ」をご提供しております。

お問合せはお気軽に、こちらからどうぞ! → イルカシステム株式会社へ問合せ

著者:イルカシステム株式会社