LoginSignup
0
2

More than 5 years have passed since last update.

Sphinxの表をExcelで管理する

Last updated at Posted at 2018-09-07

なんだかんだいって、Excelで管理することになるのが世の習わしです。
Excelで管理されたデータを他で使うために、CSVにすることが多いと思います。
CSVにすると、Sphinxの表がつくれます。

ExcelをCSVに変換する

Excel CSV I/Oアドインというとても便利なアドインがあります。
http://fnya.cocolog-nifty.com/blog/2012/03/excel-csv-io-ex.html

自動化ではありませんが、どのExcelファイルでも使えるという利点があります。
使い方は、開いたExcelファイルで、Excel CSV I/Oのエクスポートボタンを押すだけです。

image.png

ダイアログが出てきますが、基本、そのままエクスポートです。

Sphinxの表をCSVで扱う

Sphinxでは表のデータをCSVファイルから取り込むことができます。
そこで、こんなふうに、Excelファイル, CSVファイル, .rstファイルを置いておけば、Excelファイルを変更して、Excel CSV I/OでCSVエクスポートするだけで、Sphinxの表を更新できます。

image.png

.rstファイルでCSVファイルを指定する方法は、例えばこんな感じです。

ワーディング
===========

ワーディング一覧
---------------

.. csv-table::
   :file: wording.csv
   :encoding: sjis
   :header-rows: 1

残念ながら、SphinxでMarkdownできるようになるcommonmarkでは、この仕組みが機能しないようなので、.mdファイルではできません。

おまけ1: CSVをいろいろ変換する

csvkitというツールが便利です。
https://github.com/wireservice/csvkit

例えば、CSVからJSONに変換したいときには次でOKです。

csvjson data.csv > data.json

おまけ2: 改行が含まれたExcelを扱う

CLEAN関数を使うと、不要な情報(というか変換の邪魔になる情報)を削除できます。
エクスポート用のシートを作成しておいて、そこの全部のセルを元のデータがあるシートを参照してCLEANをかませておけば、元のデータを変更するだけで、クリーンなCSVファイルが手に入ります。

=CLEAN(訪問分担!C3)
0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2