過去の桐井戸端BBS (桐ver.8) |
5632 | 表引き関数の不便さ | ISSEI | 2000/04/19-23:08 |
桐8sp4です。住所を入力するのに編集初期値に #表引き([〒],=,"ZIP.tbl",[〒],[住所]) として住所を入力しているのですが、これを 別のバードにコピー(もちろん”ZIP.tbl”も) 表を開くこともできなくなってしまいます。 再定義から入ればいいのですが,表引き対象表 が指定の場所にない場合には表引きを無効にする なんていう、虫のいい方法はありませんか? どなたかよろしくお願いします。 | |||
5634 | Re:表引き関数の不便さ | 佐田 守弘 | 2000/04/19-23:39 |
記事番号5632へのコメント ISSEIさん >別のバードにコピー(もちろん”ZIP.tbl”も) 「バード」の意味が分からないのですが、どうやら構成が異なる複数のマシン で同じ定義内容のデータを使いたいと言う要望の様ですね。 私のケースで言えば、NECのPC9801シリーズとDOS/Vで名刺管理のシステムを使っていた場合の ケースで紹介します。 郵便番号データは様々な表で表引きしますから、どんな環境でも特定できる場所に入れておきます。 そして、それが可能な場所は、唯一、桐のシステムフォルダとその下のサブフォルダです。 私は、桐のシステムフォルダの直下に「tbl」のフォルダを作り、ここに入れております。 桐のシステムフォルダは、「#桐パス名」関数で調べられます。従って、 代入 &郵便番号簿=#桐パス名+"tbl\ZIP.tbl" とすれば、どの様な環境でも郵便番号データがフルパス名で指定できる事になります。 実際には、この代入コマンドを一括処理の中で実行しておきます。 会話処理だけで行おうとしたら、変数を書き出しておき、桐を起動した時に変数を読み込む方法でも対処できます。 そして、表引きの設定には、表ファイル名の場所に「&郵便番号簿」と変数名で記述します。 この方法で、起動ドライブが異なる複数のマシンでデータの共有が可能でした。 また別の方法として、#WSNAME関数を使うと、PCの名称が調べられます。 これで稼働しているマシンを調べ、#条件選択関数などを使って、 マシン毎に郵便番号データのフルパス名を記述する方法も可能です。 いずれの方法も自宅とオフィスないしモバイルマシンで同じデータを共有したい場合には、必須のテクニックです。 なお関連する話は、私のサイトの例題およびシェアウエア「名刺管理」の解説の中で述べてあります。 佐田守弘(KS-00119) |