- ベストアンサー
エクセルのxml形式の詳細について
エクセルではxml形式でデータを保存できるようですが、このxml形式について詳しく定義されているページを教えてください。 例えば、 >Style ss:ID="Default" ss:Name="Normal" ↑のようにやたら「ss」という文字が見れるのですが、これはなんでしょうか? また、下記のように数字をセルに入れる場合は 「Number」を指定するようですが、まとめて定義されているページがあれば教えていただきたいです。 >Data ss:Type="Number" *次のofficeからxmlが標準的な保存形式になるようですが、既存のoffice 2002とかでも読めるxmlを使いたく思います。 が、上記のような保存形式は次世代officeでも読めるんでしょうか?詳しい方、教えていただけると幸いです。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
あまり詳しくないので、一部だけ >「ss」という文字が見れるのですが、これはなんでしょうか? 最初の方に xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" とあると思いますけど これは、XMLの文法的には、名前空間の指定というやつで、 同じような名前、例えばIDとか、が使われる時 ss:ID の様に修飾して、区別するためのものです。 >上記のような保存形式は次世代officeでも読めるんでしょうか? XMLのテキストで構成されていて、バージョン情報も埋め込まれていますから、余程大きな変更が無い限り読み込めると思います。
その他の回答 (5)
本題とは外れますが、面白そうなニュースです MS、OfficeでOpenDocumentをサポート http://www.itmedia.co.jp/news/articles/0607/06/news041.html #ところで・・・自分はMS Office持っていませんが 長い間InfoPathを魅力的に見ています。誰か効果的に使ってます?(笑
お礼
「InfoPath」というのは使ったことないですが、これもまたxmlに絡んでくるのですね・・・ というか、「InfoPath」というのがあって、それを知らなかったので衝撃ですが・・・
- quorette
- ベストアンサー率28% (2/7)
ごめんなさい.私,使っています.といっても,WEBアプリですが. HTMLだとどうしても印刷が貧弱なので,データをXML形式にしてXSLTでExcelのXMLスプレッドシート形式でクライアントに返すということを日常的に行っております... 利点としては,サーバーOSを選ばないこと(いや,ほとんどWinなんですがね.)と,サーバー側にExcel(のCOM)をインストールする必要がないことですかね. 実際の作業としては, 1)Excelで雛形となる形式を作成し,それをXMLスプレッド形式で保存 2)保存したファイルにXSLTタグを埋め込んでいってXSLTを完成させる という手順を踏みます. ですから,この形式の詳しい内容は取り立てて必要ないと思われます. 一応,形式についての解説は参考URLに示したところにあります(英語). ss:は他の方がすでにお答えのように,XMLのネームスペースです.XMLスプレッドシート形式で保存したファイルをエディタで開いたときに最初のほうに xmlns:ss="uri:..... というのがあります.ここで「このタグ中のネームスペースssは,uri:....で定義されたものを示します.」ということを宣言しています. ネームスペースの詳細はXMLの解説書などを参考にされることをオススメします.
- 参考URL:
- http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnexcl2k2/html/odc_xmlss.asp
お礼
なるほど、ありがとうございました。 サーバサイドでは結構使用されているのですね。 xmlに関してはまだよくわかってないので、今後勉強していきたいと思います。 ありがとうございました。
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
#2>あまりアプリからこの形式のエクセルxmlを吐き出す、というのは世間で使われてないようですね。 COMを使わなくて良いというのは、それなりに意味があると思います。 例えば、サーバーでエクセル出力を作るような場合に、エクセルがインストールされていなくても出力できるというようなメリットがあると思います。 また、XSLTを使ってHTMLに変換してWEBで表示というようなことも考えられると思います。 あと、ファイルサイズについてもテキストで保持した方がサイズが小さくなる場合とか圧縮が聞きやすくなるなどのメリットがあるかもしれません。 ということで、これからどんどん使われるようになるんじゃないでしょうか? デメリットは、処理速度ですかね(実際に試してないのでわかりませんが) あと、バージョンの乱立みたいなことで使いにくいモノになるかもしれないとかあるかもしれませんね。
お礼
ありがとうございます。 やはり世間ではあまり使われてないのですね。 実際に自分でエクセル向けxmlを出力するツールを作ってみましたが、ファイルサイズが基本的に重くなりそうです。 任意フォルダのファイル一覧をxmlスプレッドシートで出力し、エクセルで開いてからxlsで保存してみると、 xml:250kb xls:100kb となりました。 なんとなく、xmlスプレッドシートが使われない理由が分かったような気がします・・・
ちょっぴり蛇足。 Office 2003とOffice2007のXMLのフォーマットは異なります。 http://www.microsoft.com/japan/office/preview/developers/filefaq.mspx#EPH とは言え、 Q.以前の .doc、.ppt、.xls ファイル形式は、将来のリリースでも使用できますか。 A.はい。現在のファイル形式は、次期リリースの Microsoft Office System 製品でも使用できます。 Q.XML をサポートしていない前リリースのユーザー用に XML ファイル コンバータは提供されますか。 A.マイクロソフトでは、前リリースの Microsoft Office をお使いのユーザーが新しい形式で作成されたファイルを開くことができるよう、Microsoft Office 2000、Microsoft Office XP、および Microsoft Office 2003 用のコンバータをリリースする予定です。 ということでどちらも読めます。 仕様書を読む気にはならないですが・・・ http://blog.japan.zdnet.com/btl/a/000449.html
お礼
ありがとうございます。 ところで、office2003のxml形式は、あまり世間で使われてないような気がします。 #検索して情報が少ない、プログラム系書式類にあまり記述がない、ということでそう思ったのですが、勘違いだったらすみません。 office2003をバイナリでなく、xmlでいじれるのは結構便利だと思うのですが、世間的にあまり使われてないように思われるのはなぜでしょうか? 何かデメリットとかありましたら、教えてください。
補足
そういえば、office2003のxmlスキーマ・リファレンス(Welcome to the Microsoft Office 2003 Edition XML Schema References)も、邦訳版は出ていませんね。 office2003のxmlはあまり需要がないのかな?
- linus1974
- ベストアンサー率19% (71/370)
>↑のようにやたら「ss」という文字が見れるのですが、これはなんでしょうか? 名前空間(namespace)です。 スキーマは添付URLにあると思います。 古いバージョンのXMLは読めると思います。
お礼
なるほど。 http://www.microsoft.com/japan/office/xml/default.mspx の存在を知りませんでした。 ありがとうございます。
お礼
ありがとうございました。 http://www.microsoft.com/japan/office/xml/default.mspx ↑とかを調べていろいろ見てみましたが、あまりアプリからこの形式のエクセルxmlを吐き出す、というのは世間で使われてないようですね。 どうしようかな。あまり使わないほうがよいのかな。