「Web出版サイト」ベータ公開

Q&A集[?]

当サイトでのご質問の受付は終了しました

すべてのコンテンツを読み込み専用としたため、回答欄からも投稿できません

Apache OpenOffice/LibreOfficeのご質問はそれぞれのフォーラムへご投稿ください

質問コーナー

サイト内検索

分類メニュー

関連サイト


本日:1
昨日:2
総数:1737
現在:5


リストボックスの項目変更について

ページOpenOffice.org FAQの登録ページ
投稿者yam
分類
edit/refer
優先順位
edit/refer
状態
edit/refer
カテゴリー
edit/refer
投稿日2009-09-30 11:45:34 (水)
OSWindowsXP
依存するページ
バージョン
edit/refer

メッセージ

回答ページでは行末に「~」を付加する必要はありません

Baseを使って見積書の作成を簡略化したいと考えております。 しかし、データベースに関して全くの初心者のため、どう作成していいのか行詰まっています。よろしくお願いします。

作成したいのは見積書で、項目としては 「見積番号」「機器名称」「規格」「材質」「重量」「単価」「使用重量」「数量」「金額」です。

問題点は「機器名称」「規格」「材質」「重量」「単価」が前の項目によって変化するようリストボックスを作成したいということです。

このようなことをしたい場合、マクロを使用しないと実現出来ないのだろうと思い、質問コーナーのfaq/5/10などを参考にさせていただいたのですが、よくわかりませんでした。

どなたか教えていただけないでしょうか。 データベース・マクロの知識が全くなく、現在ネット等で参考資料を読みあさっている段階です・・・


補足です。

yam (2009-09-30 11:55:23 (水))

「重量」に関しては、「規格」と「材質」が決定すると自動的に表示するようにしたいです。

よろしくお願いします。

無題

ike@九州 (2009-09-30 12:27:51 (水))

現在、分類メニューにて Faq/4 のページが表示されないので Baseの参考ページを見つけるのが苦しいのですが、
faq/4/1680 にて幾つかサンプルがあります。

マクロコードは最初に印刷して添削しながら動作を確認すると分かりやすいと思います。

フォーム作成の前に

M.Kamataki (2009-09-30 12:29:05 (水))

テーブルの構成がわからないと先に進めません。faq/5/10「内容が変化するリストボックスの設置方法」の場合は、test.odb、test2.odbとサンプルデータベースの添付がありました。このようなサンプルでテーブルの構成がわかったので、回答する側も対応できたのです。

おそらくメインテーブルがあり、リストボックスの処理に利用できるサブテーブルがあるはずです。メインテーブルは主にこれから入力されるデータが格納される目的のもの。サブテーブルは「機器名称」「規格」「材質」などの項目のコード番号が格納されるものになるのではないでしょうか。

また「機器名称」と「規格」になんらかの関連があるのであれば、その関連性を解決するためのテーブルもあるはずです。

なお、「重量」の決定についても「規格」「材質」「重量」の関係性がわかるテーブルが必要でしょう。この部分については、たぶん、リストボックスの問題とは関係ないはずです。

これら、テーブル設計を行い、ある程度のデータが入力されたサンプルのデータベースを用意してください。

>データベース・マクロの知識が全くなく、現在ネット等で参考資料を読みあさっている段階です・・・

テーブル設計がまず基本です。ここの部分を理解できないと先に進めませんが、大丈夫でしょうか。

Re: フォーム作成の前に

amano (2009-09-30 15:54:52 (水))

kamatakiさん:
たしかに、そうなのですが...。
さらに、その前からの説明が必要な気がします。

yamさん:
まず、フォームというのは、利便性を向上させるための
ユーザインターフェイスであり、RDBMS本来の機能とは別です。
Baseは、ユーザインターフェイスを構築/使用する、または、
RDBMSからの出力をフォーマットするためのシステムで、
様々なRDBMSと接続させて使えます。
ご理解されているでしょうか。

各RDBMSもユーザインターフェイスを持っていますが、
直接SQLを扱うためのものなので、慣れていない人には使いずらく
(というか、慣れていてもSQLの生成はめんどくさい)、
出力もプレインテキストです。
従って、ここにBase等のアプリケーションの価値があります。

現状データベースです。

yam (2009-10-01 19:16:20 (木))

丁寧に教えていただきありがとうございます。
教えていただいた通り、データを添付させていただきました。
(testo.odb)

全く自信のないデータベースで、あまりのレベルの低さに
皆様に助言頂くのも申し訳なく思います。

よろしくおねがいします。

みなさん同じようなことをやりたいんですねぇ、きっと。

gorodoku (2009-10-01 23:37:07 (木))

上でikeさんが紹介しているfaq/4/1680の質問者のgorodokuです。
私も同じく全くのど素人で、こちらでいろいろお世話になりました。

添付ファイル見させていただきました。金属製品/製函系の会社にお勤めのことと想像されます。
いわゆる材料集計表・重量表などと呼ばれるものに、積算のための金額の項目を加えたものが必要なのだろう、と思います。

この系統のフリーソフト、ありそうで無いんですよね、だから皆困ってるんだと思います、私もそうですから。

faq/4/1680faq/4/1789faq/4/1799faq/4/1812あたりに私の悪戦苦闘ぶりが見れますので。特に4/1789の添付ファイル辺りが近いイメージなのかなぁ、と。
このページの右上の検索でfaq番号を入れても探せると思います。ご参考までに。私のは現業が忙しくなり、未だ完了せず、です(涙)

まずはサンプルの手直し

M.Kamataki (2009-10-02 00:15:45 (金))

テーブルとフォームの説明がほしいのですが、その前にサンプルファイルの添削をしてみました。

  • マクロ未登録の状態だったのでModule1を削除 ⇒ ファイル読み込み時のマクロの確認が出なくなる
  • 「01品名・規格入力用」フォームの「品名・規格番号」欄の不具合 ⇒ 「規格番号」フィールドを再割り当て
  • 「tesutoF」フォームにまったくレコードが表示されない ⇒ メインフォーム、サブフォームとも「データのみ追加」を「いいえ」に

以上、意図がよくわからなかったのですが、直しておかないと先に進まないと思いました。以下に直したものを添付します。

filefaq5_92_1.odb

ありがとうございます

yam (2009-10-02 11:06:13 (金))

さっそくお返事いただきありがとうございます。

Gorodokuさん:
おっしゃる通り!!なんです。
私のパソコンスキルは、事務作業をするのに困らない程度で、
過去の質問を解読!?するにも一苦労といった感じです。
教えていただいたfaq参考にさせていただきます。

M.Kamatakiさん:
添削ありがとうございます。
ご指摘いただいた3点なのですが、意図的にしたわけではなく、
そうなってしまった。という感じなんです・・・すみません。

テーブルとフォームの説明ですが、
「01材質T」「01品名T」テーブルは
「01品名・規格T」テーブルを作る為、「01品名・規格入力」フォーム入力の際
リストボックスにて選択できるようにと思い作成しました。
「01見積T」「01見積明細T2」テーブルに関しては、
積算をする際に必要な項目ということで作成しました。
「tesutoF」フォームは積算をする為のものです。
見よう見まねで作成しているので、無駄なテーブルや足りないものが多々あるかと思います。


上記のような説明でいいのでしょうか?
まったくおかしな返答をしていたらすみません。

もう少し伺います

M.Kamataki (2009-10-02 16:06:08 (金))

>ご指摘いただいた3点なのですが、意図的にしたわけではなく、
>そうなってしまった。という感じなんです・・・すみません。

そういうことかなと思っておりました。直す方法を書いておきましたが、参考になりましたでしょうか。

テーブルとフォームの関係はだいたい理解できました。そこでもう少し伺います。

「01見積T」「01見積明細T2」と2つのテーブルに分けている理由は何かありますでしょうか。1つにまとめたほうがフォームは作成しやすくなると思いましたので。

その1つにまとめたテーブルに「規格番号」というフィールドを設け、「01品名・規格T」テーブルとリンクさせることで、「品名」「規格名」「単位重量」「単価」「材質番号」が一応表示できるようになります。「規格番号」はプライマリキーなので、これらのデータをまとめて指定できますよね。「01品名・規格T」テーブルはそういう目的のものと考えて良いでしょうか。そして最終的には何件ぐらいのレコード数になるのでしょうか。

>「tesutoF」フォームは積算をする為のものです。

ということは、最終的な見積書に盛り込まれる要素は、「tesutoF」フォームに含まれているということですよね。

さて、「リストボックスで項目を絞り込みたいという」ご質問なら、確かにgorodokuさんのサンプルなどが参考になると思います。参考にされたサンプルファイルのどこが理解できないのか、具体的に指摘されると回答しやすいと思いますよ。

Baseのバージョンに注意しましょう

M.Kamataki (2009-10-02 16:09:31 (金))

マクロの扱いの仕様がOpenOffice.org 3.1から変わっています。もし、現在、お使いのBaseが3.0.1であれば、最新の3.1.1をお使いになることをお薦めします。gorodokuさんのマクロ入りのサンプルは、3.0.1では動作しないと思いますので。

遅くなりましたが

yam (2009-10-29 14:41:59 (木))

やっとなんとかここまで作成できました。(faq5_921_2)

と言っても、gorodokuさんのサンプルをかなり使わせていただいてます・・・
すみません。

リストボックスの項目変更もマクロを触りながら、
どこがどの動きをしているのか、なんとなくわかってきました。

完璧に理解するにはまだまだ時間がかかりそうなので、
一旦完了にさせていただきます。

質問の仕方すらわからないような私に親切、丁寧に教えていただき
ありがとうございます。

今後もお世話になると思いますがよろしくお願いします。

お名前:
題名:


添付ファイル: filefaq5_921_2.odb 552件 [詳細] filefaq5_92_1.odb 1215件 [詳細] filetesuto.odb 570件 [詳細]