さていよいよPCを使った年代コードの入力方法についてです。これを書き終わって、ようやくホームページについての私の冬休みのノルマが終わります。ま、それも私の勝手ではありますが…f(^ー^;他には後2つ雑文を書かなければなりませんので、頑張ります。
◎年号と月と日の入力は別々に!
【史料学11】でも述べましたが、年代コード入力を実施するためには、年号と月と日を別々の項目(セル)に入力することがもっとも重要な要素になります。もちろん、他のもっと効果的な方法論もあるでしょう。ただ、基本的にデジタルデータというのは、合体するのはたやすく、分離することの方が難しいのです。だから、ここでのやり方では、この別々にするということがミソなのです。また、私はデータベースソフト「桐」を使っていますが、表計算ソフトのExcelなどでも考え方は同じです。たまに史料整理の手伝いなんかに行くと、PC化の方法としてExcelでの入力を要請されることがあります。それはそれで構わないのですが、年月日を一つのセルに入れるように要請されるともうがっかりします。桐はExcelと自由にデータをやり取りできるので、年月日を分けてさえあれば、後からでも年代コードを一括して変換することが可能で、だから、「年代表記と年代コード」の基礎編や応用編で列記したような順番に並び替えることも可能になってくるのです。歴史学は時系列に並び替えるということが基本中の基本ですから、ましてや大勢でアトランダムに史料整理をする時には、そうした「しくみ」を考えておく必要があります。2008年度からちょっとお手伝いをした伊豆韮山(静岡県伊豆の国市韮山)の幕府代官江川文庫の整理でも残念な思いをしたものでした。
◎表引き機能で年月日コードを自動入力
それでは、具体的にどのようにしたら年代コードを自動的に入力できるなるのでしょうか?「桐」の場合は、表引き機能というのを使います。では、表引き機能とはどのようなものでしょうか?その前にちょっと復習しておきましょう。
基礎編・応用編でも書いたように、ここでの方法論は、年号を5桁、月を3桁、月を3桁の数値で表現して、それぞれの1桁目を操作することで並び替えを実施するというのが基本的な考え方でした。そうであるならば、例えば元治2年2月2日であれば、18650と020と020に分解できます。元治2年2月であれば、18650と201と000で、元治2年だけであれば18651と000と000です。ですので、「年号」の項目(セル)に「元治 2」と入力すれば、あらかじめ作っておいた年号コードの一覧表から、これに該当する「18650」という数値を拾ってきて「年号コード」の項目にこの数値が入るようにします。同じように「月」の項目(セル)に「2」と入力すれば、同じようにあらかじめ作っておいた月コードの一覧表から、これに該当する「020」という数値を引いてきます。さらに「日」の項目(セル)に同じように「2」と入力すれば、これもあらかじめ作っておいた日コードの一覧表から、これに該当する「020」を引いてきて入力させるということです。
つまりここではあらかじめ年号コードと月コードと日コードの一覧表を作っておくというのがミソなのです。ここで目録として作成したい表の年号、月、日と、この年月日コードの一覧表を照合させて、それに対応したものをそれぞれの年号、月、日コードの項目に自動的に入力させ、最後にこれらの数値を合体させれば年代コードの入力完成です。この項目(セル)同士を照合して、対応する数値を入力させるという機能を「桐」では表引き機能といっています。ExcelではVLOOKUP関数と呼ばれるものと同等だと思います。
◎小数点を使う
ここで一つお詫びです。実は、現在では年代コードとしての11桁の数値は使っていません。現在は、PCでの利便性を考えて年号コードだけは整数として、月以下は小数点以下の数値とし、これを「合計」するようにしています。基本的な原理を理解していただくために、あえて11桁の数字から話をさせてもらいました。なお、整数の年号コードは自由に調整できる範囲を広げるために5桁ではなく6桁の数値を使っています。先の元治2年2月2日の例でいきますと、元治2年が「186500」で、2月が「0.02」2日が「0.00002」となります。つまり、これを合計すれば「186500.02002」となります。これが元治2年2月までですと2月の部分が「0.02」で日の部分は「0.0005」となりますから「186500.0205」、年で終われば、月の部分を「0.2」として日が「0.0005」ですから「196500.2005」となるというものです。これで十干十二支だけしかないもの、十二支だけのもの、月以降がわかるものなどについても対応できるようになるのです。
論より証拠です。この年号コードと月コード、日コードをExcelに変換してダウンロードできるようにしておきますので、興味のある方は確認してみて下さい。なお、月コードと日コードはそんなに数がありませんので「月日コード」として一つのファイルにしています。
◎実演してみましょう!
なかなか文章で表現するのは難しいです(^_^;)ここも論より証拠です!実際に表引きをやっているところをスクリーンショットして、その図版で紹介してみましょう。例文はこれまでの通り西暦の1865年です。この年は4月7日に改元して、改元以前が元治2年、以後か慶応元年になります。また、5月には閏月もあります。ちょっと画像が小さいので、詳細は図像をクリックしてご覧下さい。
(1)元治2年2月2日のパターン
1番はじめの画像でもわかりますように、これを援用して西暦の一覧表を作っておくと、元号を入力すれば、自動的に西暦を入力することもできます。続いて慶応元年を入力するパターンを図示しましょう。
(2)慶応元年4月と閏5月のパターン
(3)慶応元年で終わるパターンと慶応元年と推測されるパターン
とりあえず、こうやって入力していくと、「年号コード」と「月コード」「日コード」を合計した「コード」の部分の数値が規則に沿った形になっていきますから、入力がアトランダムであっても「コード」をsort(並び替え)すれば、基礎編や応用編で解説した年月日の整列規則通りに並べることができるのです。つまりはこんな感じです。
ここではアトランダムに入力したのですが、最後に「コード」の項目を昇順することによって、このように並び替えることができるのです。理解していただけましたでしょうか?なお、「年」の項目(セル)で元号と1桁の年の数値の間を半角分あけているのは、後から年月日の表記を合体した際にきれいに見えるようにするためです。
この表のように「元治 2」年と「2」月と「2」日を別々に入力したとしても、関数を使えば、これらを合体して「元治 2. 2. 2」のような形にすることができるのです。もちろん、これは1つの項目(セル)の中に収めます。その方法についてはまた次回に!