過去の桐井戸端BBS (桐ver.9)
28243 表引きで表引き一覧から選んだりコードで一発指定したりどちらでもできるようにしたい パック 2004/11/20-08:30
こんにちは

最近悩んでいることがあります。
表引きを使って入力するテーブルがあります。

コードが00から99まであり、それに対応するデータを表引きしています。

自分はマウス操作が嫌いなので、表引き一覧を表示しないで、コードを直接入力しています。
他の人は表引き一覧を表示して選択しています。
自分も全部の項目を覚えているわけではないので、たまに選択して入力しています。

そこで、表引き一覧を表示しておいて、コード入力一発で入力もできるなんて難しいでしょうか?

どうぞよろしくお願いします。

28253 Re:表引きの一発指定 佐田 守弘 2004/11/23-01:43
記事番号28243へのコメント
パックさん
表引きのパネルが表示されている状態で、パネルを使わないで入力するのはできないでしょうね。
これは値集合の場合でもほぼ同じです。
ただし値集合の場合には表示されている値の左側に表示されている数字を選んで入力できます。
以前の桐ver.5では、「=」と値集合の番号を入力することで、
下の方にある値も直接入力できたのですが、今の桐にはこの機能がなくなった様です。
この機能があると、要望の機能に極めて近いことができたのですが。

所で、
>コードが00から99まであり、それに対応するデータを表引きしています。
>自分はマウス操作が嫌いなので、表引き一覧を表示しないで、コードを直接
>入力しています。
の部分が具体的にどの様にしているのかが、良く分りません。
00〜99のコードと、それに対応する値の両方を表に入力してるのでしょうか。
それともコードは表に入力せず、表引きだけに使っているのでしょうか。
このあたりがもう少し分ると、別の角度から参考になるアドバイスができるかとも思います。

参考までにですが、私は、表引きは必ずしも使わないけど、
時として使う様なケースでは、表引きパネルを自動表示しない設定にしております。
そして表引きパネルを表示させるのにマウスを使うのは面倒なので、
キー操作で表示させる様にしています。
あるいはこの方法が便利かとも思いますが。

佐田守弘(KS-00119)
28255 Re:表引きの一発指定 パック 2004/11/23-02:58
記事番号28253へのコメント
佐田さんコメントありがとうございました。

>所で、
>>コードが00から99まであり、それに対応するデータを表引きしています。
>>自分はマウス操作が嫌いなので、表引き一覧を表示しないで、コードを直接
>>入力しています。
>の部分が具体的にどの様にしているのかが、良く分りません。
>00〜99のコードと、それに対応する値の両方を表に入力してるのでしょうか。
>それともコードは表に入力せず、表引きだけに使っているのでしょうか。
>このあたりがもう少し分ると、別の角度から参考になるアドバイスができる
>かとも思います。

そうなんです。コードとデータを両方とも表に入力しています。
コードの項目で、表引き一覧からコードを選択して入力します。
データの項目で、選択されたコードからデータを表引きしてきて表示しています。
1つの表にコードとデータが表示されていた方が、今後の作業をする上でも何かと便利なのでそうしています。
コード選択間違いもすぐ見つかると思うので。

>参考までにですが、私は、表引きは必ずしも使わないけど、時として使う
>様なケースでは、表引きパネルを自動表示しない設定にしております。
>そして表引きパネルを表示させるのにマウスを使うのは面倒なので、キー
>操作で表示させる様にしています。あるいはこの方法が便利かとも思いますが。

自分は同じようにパネルを表示しないで入力していて、必要なときにAlt+↓で表示させています。
他の皆さんはパネル自動表示し、カーソルなどで選択しているように思います。
他の人にも同じ方法で入力してもらうよう、皆さんのテーブルもパネルを自動表示しない設定に
統一してしまった方が早いのかとも思っています。
以前に一度そのように試みたのですが、Alt+↓の操作が知らないのか覚えにくいのか
使いづらいのか分かりませんが、マウスでパネル表示させていたように思います。
その後要望により自分以外の方のテーブルはパネル自動表示設定に戻しました。
もう少し頑張って指導すれば良かったですかねぇ。
入力用フォームを作って、その項目に来たときわかりやすいコメントを表示すればいいのかな?

28256 フォームを使うなら 佐田 守弘 2004/11/23-09:52
記事番号28255へのコメント
パックさん
どうやら、御自身が使う時には表引きパネルを自動表示せず、他の人が使う時には
表引きパネルを自動表示するという様に、操作環境を使用者に応じて変換させたい
という事が質問の主旨の様ですね。

であるなら、フォームを使う方法で解決策がありそうです。
次の様な方法で可能性があると思います。

@表の表引きの設定
表には表引きの設定を行って下さい。自動表示ありなしはどちらでも構いません。

Aフォームの入力支援ボタンでの表引きの設定
コードの項目のテキストボックスには入力支援ボタンを作り、表引きを設定して下さい。
他の人優先で「自動表示あり」に設定しておくのが良いでしょう。

B自動表示ありなしの切り替え
自動表示ありなしを保持するためのフラグとして局所変数(仮に「&自動表示」)を定義しておいて下さい。
フォームにはグループボックスを作り、このソースに「&自動表示」を設定します。
グループボックスの中にはトグルボタン(他のボタンでも可)を2つ作り、
片方を「自動表示」、他方を「非表示」とします。
つまりこのボタンで「&自動表示」の値を変化させるわけです。
そしてこのグループボックスのソース値更新イベントに次の様なコマンドを設定します。
 ケース開始
  ケース (&自動表示=1)
   オブジェクト操作 @入力支援ボタン_nn.自動表示="する"
  ケース (&自動表示=0)
   オブジェクト操作 @入力支援ボタン_nn.自動表示="しない"
 ケース終了

以上でお分りと思いますが、グループボックスの自動表示する・しないの切り替えで、
表引きパネルの自動表示を行うか、行わないかの切り替えができるのではないかと思います。
詳しい確認はしておりませんが、試してみて下さい。

佐田守弘(KS-00119)

戻る