step3用のPythonスクリプト
説明
更新用。
エクセル表をjsonファイルに変換する。
step3xls.batから直接呼び出される。
Python 3 用。
使用方法
excel_to_json.py E:\scratch\Hello2.xls E:\scratch
excel_to_json.py Hello2.xls E:\scratch --noheader
excel_to_json.py Hello2.xls E:\scratch --columns B:C
excel_to_json.py Hello2.xls E:\scratch --origin B3 --columns B:C
excel_to_json.py Hello3.xls E:\scratch --url C
第1引数: 変換元エクセルブック(フルパスまたは出力先パス)
第2引数: 出力先ディレクトリ(フルパス)
--pattern: ファイル名曖昧指定(正規表現)
--sheet: 対象ワークシート(複数、省略時はすべて)
--origin: 基準セル(表範囲の左上アドレス、省略時はA1)
--columns: 有効カラム(絶対列アドレス)
--url: Hyperlink情報を持つ列(絶対列アドレス)
--noheader: 1行目からデータとして扱う
--text: Valueの代わりにTextを読む
--formula: Valueの代わりにFormulaR1C1を読む
--invisible: エクセルを非表示にする
--verbose: 冗長な情報を出力する
生成するjsonは、ArrayのArray。行優先マトリックス。
sheet指定があれば、そのシート群が対象で、なければ全部が対象。
A1がブランクでないシートを変換対象とする。
シート単位でjsonファイルを作る。
すべてのシートが同じ形式だと想定している。
origin (A1)からの連続領域を有効データの範囲とする。
columns指定があれば、それを優先し、なければ、先頭シートの形式を優先する。
各シートを、sheet1.json等の連番ファイルに変換する。
ファイルとシート名の関連情報を、index.jsonに書き出す。
ヘッダー情報があれば、columns.jsonに書き出す。
url指定した列にHyperlink情報があれば、url情報としてカラム末尾に追加する。
pattern指定があれば、変換元ディレクトリで、パターンに一致し、
タイムスタンプが最も新しいファイルを変換元とする。
エクセル本体が必要(インストール済みであること)。
このプログラムはエクセルを起動し、
指定されたブックを開き、
変換したjsonを保存し、
エクセルを閉じる。