• ベストアンサー

ACCESSのコンボボックスの表示について

質問をお願いいたします。 現在、売上入力用のフォームを作成し、売上対象の方を選択するのに、コンボボックスで、契約者名簿からデータを引っ張ってきています。 この契約者名簿ですが、 「契約ID] 「顧客ID] 「姓」 「名」 「フリガナ」 で、フリガナだけ表示しないように列数を設定し、フリガナの昇順で並べています。 表示は「0cm;2cm;2cm;2cm」にし、顧客IDを選んだり、あいうえお順で選べるようにしています。 ところが、コンボボックスから選ぶ時はわかりやすいのですが、入力後は連結列を1にすると、顧客の氏名のみがボックスには表示されます。 この表示を「顧客番号」&「姓」もしくは「姓」&「名」といった感じで、表示する事は可能でしょうか。 入力時は問題無いのですが、後で閲覧時に、同姓の方が多いため、いちいち右の三角をクリックして、どの顧客かチェックするといった非効率な状態になっています。 初歩的な質問だとは思いますが、過去ログを見ても、どうしてもわからなかったため、何卒よろしくお願いいたします。

noname#42021
noname#42021

質問者が選んだベストアンサー

  • ベストアンサー
  • DexMachina
  • ベストアンサー率73% (1287/1744)
回答No.2

とりあえず、今あるフォーム・クエリに極力手を加えないで対応するとして・・・ そのコンボボックスの隣などにテキストボックスを設置し、コントロールソースに  「=(CB).Columun(1) & "・" & (CB).Columun(2)」   (「(CB)」はコンボボックス名) と入力すれば、コンボボックスの2,3列目のデータが「・」つなぎで表示される ようになります。 (つなぎ文字は好きなように変更可。なお、先頭の「=」を忘れないようご注意) 例えば、コンボボックスの列が「顧客ID,姓,名,フリガナ」とされていて、  「(3,)鈴木,太郎,スズキタロウ」というデータを選択した場合、  テキストボックスには「鈴木・太郎」と表示されます。  *「Column(○)」の「○」には、「表示させたい列の番号-1」の数値を入力します。   (先頭列(→上の例では顧客ID)を表示させたいなら「0」を指定)

その他の回答 (2)

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.3

>入力時は問題無いのですが、後で閲覧時に・・ 閲覧のフォームにテキストボックスを配置してそのコントロールソースに 例えば「顧客番号」&「姓」なら =[顧客番号]&[姓] 例えば「姓」&「名」なら =[姓]&[名] として表示させれば閲覧時に問題ないのではないでしょうか。

  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.1

ドロップダウンしていないときに表示されるのは 表示幅を0以外に指定した一番左端のフィールドのみというのは仕様ですから >「顧客番号」&「姓」もしくは「姓」&「名」といった感じで、 表示させたければ値集合ソースをクエリにして そのようなフィールドを作ってやるしかないですね

関連するQ&A

  • ACCESS2000 コンボボックス絞込み

    こんにちは。以前に同じ質問をしたのですが、分からなかったので再度質問させて頂きます。 フォームでコンボボックスで入力しているのでが、 1つ目で選択したら2つ目のコンボボックスに1と関連するデーターしか表示しないようにしたいのですが・・。 テーブル 売上区分1  売上区分1ID  オートナンバー  売上区分1   テキスト型 テーブル 売上区分2  売上区分2ID  オートナンバー  売上区分1   数値  売上区分2   テクスト型 ファームの表示はそれぞれ、区分名が表示されるようになってます。 コンボ1で選んだのが、商品区分1IDが1ならコンボ2で表示されるのが、テーブル 売上区分2 の 売上区分1が1のものだけ表示できるようにしたいです。 説明が悪いかもしれませんが、お願いします。 初心者なもので、分かりやすく書いていただければありがたいです。お願いします。  

  • Accessのコンボボックスで表示させるデータを1500件の中から条件値で絞り込むにはどうしたらいいのでしょうか?

    Access2003を使用しています 次のようなことをしたいのですが、方法がわからず悩んでいます。 「対応履歴」というフォームがあります。 その中にテキストボックス「ユーザNO」と「顧客名」があります。 ●このフォームの「顧客名」を入力したら、「ユーザNO」が自動的に入るようにしたいです●  (顧客から問合せが入った時点で顧客から聞きだせるのは顧客名で、ユーザIDは受付担当者がデータベースで調べたあとじゃないとわからないからです)。 「顧客名」はコンボボックスにして抽出をしたいです。 それの元ソースは、テーブル「顧客情報」から引っ張りたいのですが、1500件ほどあるので、見つけるのが困難なのがネックです。 そこで私が思いついたのは、抽出条件を指定するテキストボックスを別に設けて、そこに入力した文字を含む顧客名だけを顧客名コンボボボックスに表示させる方法です。([山]と入力すれば、山中、大山、(株)山田屋など「山」を含むすべての顧客名が候補にあがる) その中から該当する顧客名を選ぶと、ユーザNOテキストボックスにも自動的に入力される・・・といったものです。 このようなことは可能でしょうか? とすれば、どのような設定をすればいいのでしょうか? 私なりにやってみましたが、「顧客名」コンボボックスの候補の絞込みが出来ません。 私が考えた方法以外でも構わないのです。 F対応履歴の入力画面で「顧客名」から「ユーザNO」(T顧客情報にある顧客名とユーザNO)が連動されて入力できればいいのです。 F対応履歴 ユーザNO・・・テキストボックス 顧客名・・・コンボボックス 対応履歴ID T対応履歴 ユーザNO・・・テキスト型 顧客名・・・テキスト型 対応履歴ID・・・オートナンバー―――主キー T顧客情報 ユーザNO・・・テキスト型―――主キー 顧客名・・・テキスト型 フリガナ・・・テキスト型 どなたかお知恵をお貸しください。 よろしくお願いいたします。

  • Access コンボボックスの絞り込み後の表示

    Access2002を使用しております。 コンボボックスAに連動したデータを絞り込みさせるコンボボックスBがありますが、一旦入力後は、コンボボックスAの値にかかわらずコンボボックスBに入力したデータを表示させるにはどうしたらよいでしょうか? 例として、次の3つのテーブルを基にデータベースを作成しております: メインテーブル フィールド名: ID 社名 担当者 社名テーブル ID   社名   住所 etc... ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 1    A社 2    B社  担当者テーブル ID   社名ID   担当者名  電話番号 etc... ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ 1    1      木村 2    2      佐藤 3    1      田中 4    2      斎藤 メインテーブルを基にしてフォームを作成し、 「メイン」というフォーム名にして 「社名」「担当者」をフィールドのコントロールをコンボボックスに変更しました。 「社名」フィールドの値集合ソースを「社名テーブル」から引き出し SELECT [社名テーブル].ID, [社名テーブル].社名 FROM 社名テーブル; 列数2  で設定し、社名をコンボボックスで選択できるようにしました。 そして 「担当者」フィールドの値集合ソースを「担当者テーブル」から引き出し SELECT 担当者テーブル.ID, 担当者テーブル.担当者名, 担当者テーブル.社名 FROM 担当者テーブル WHERE (((担当者テーブル.社名)=forms!メイン.社名)); で設定しました。 「社名」フィールドの「更新後処理」で Private Sub 社名_AfterUpdate()     Me!担当者.Requery End Sub を設定しました。 「メイン」フォームをフォームビューで開き、「社名」コンボボックスで「A社」を選択すると 「担当者」コンボボックスで「木村」と「田中」が表示されるので、「木村」を選択します。 次のレコードに移り、「社名」コンボボックスで「B社」を選択すると 「担当者」コンボボックスで「佐藤」「斎藤」が表示されるので、「佐藤」を選択します。 さて、「佐藤」を入力した時点で、前のレコード(「A社」「木村」を選択)に戻ると 「担当者」欄が空欄で表示されます。 メインテーブルには全てデータは入力されています。 データ入力時は「担当者」コンボボックスは「社名」コンボボックスで選択した値に連動させたいのですが、 このようにデータ入力済みの場合は 最初のコンボボックスの値にかかわらず(この場合は直近に選択した社名がA社・B社のいずれかであろうとも) 入力済みのデータ(「木村」「佐藤」)がフォームに表示されるようにしたいのですが 何か良い方法はないでしょうか? 出来れば入力専用と読み取り専用のフォームを2つ使用するのではなく、1つのフォームで事足りればありがたいのですが・・・

  • ACCESSでコンボボックスにSQLで抽出した値を表示したい

    いつもお世話になっております。 ACCESS初心者です。 テキストボックスに入力したフリガナから、あいまい検索させ抽出した ものをコンボボックスに表示させたいのですが、うまくいきません。。 (コンボボックスに何も表示されないです) 過去の質問やネット検索でも調べたのですがイマイチ分かりませんでした。 どなたか詳しい方、ご教示いただけると嬉しいです。 OS:windowXP ACCESS:Ver2003 Private Sub テキストボックス名_Afterupdate() Me.コンボボックス名.RowSource = "SELECT フィールド名 FROM テーブル名 WHERE フリガナ LIKE '" & Me!テキストボックス名 & "*';" End Sub どうぞよろしくお願いいたします。

  • コンボボックスのテキスト窓にデータを表示させたい

    オフィスソフト環境:ACCESS2007(諸般の事情により使用中) [アドバイスの背景とお願いしたいこと] ◆アドバイスの背景 コンボボックスを使ったフォームで入力を行っています。テーブルにはID(数値)「食材名、素材名」が入力されるのですが、フォームのコンボボックス「2段目」には素材名(入力済)が表示されません。但し、1段目のコンボボックスには数値ではなく食材名(入力済)が表示されています。 ◆お願いしたいこと(実現したいこと) 入力フォームを過去入力を遡り確認することもありますので、1段目同様に素材名(入力済)を表示させたいと思っています。 [対象オブジェクト] ◆テーブル:T_食材管理「質問対象フィールドのみ記載」 ・テーブル名:T_食材管理:食材名(数値型)、素材名(数値型) ・テーブル名:T_食材名:食材名ID、食材名 ・テーブル名:T_素材名:素材名ID、素材名、食材名ID ◆フォーム:F_食材管理「質問対象オブジェクトのみ記載」 ・フォーム(F_食材管理)のレコードソース名:T_食材管理 [1段目コンボボックスの設定] ・コンボボックス名:食材名(参照テーブル名:T_食材名) ・クエリビルダ設定フィールド:「食材名ID、食材名」 ・書式(列数):2 ・書式(列幅):0cm;2.551cm ・コントロールソース:SELECT T_食材名.食材名ID, T_食材名.食材名 FROM T_食材名 [2段目コンボボックスの設定] ・コンボボックス名:素材名(参照テーブル名:T_食材名) ・クエリビルダ設定フィールド:「素材名ID、素材名、食材名ID(抽出条件:[Forms]![F_食材管理]![食材名])」 ・プロパティーの書式(列数):3 ・プロパティーの書式(列幅):0cm;2.551cm;0cm ・コントロールソース:SELECT T_素材名.素材名ID, T_素材名.素材名, T_素材名.食材名ID FROM T_素材名 WHERE (((T_素材名.食材名ID)=[Forms]![F_食材管理]![食材名])); 説明にだらだらの羅列感をお感じになられるもしれませんが、簡潔に説明ができず申し訳ございません。宜しくお願いします。

  • accessのコンボボックスのことで質問です。

    accessを勉強しているのですが、ちょっとしたことで分からなくなってしまいました・・。 質問の内容なのですが、まずフォーム上にコンボボックスAとコンボボックスBを配置するとします。 レコードソースには仮に[情報テーブル]というテーブルが選択されているとします。 コンボボックスAには[情報テーブル]のフィールド名が、 例えば[顧客NO]、[商品]、[値段]というフィールド名が入っているとし、フィールドにはそれぞれ10件ずつデータが入力されています。 そしてコンボボックスAで[顧客NO]を選択するとコンボボックスBに[顧客NO]の10件のデータが挿入され、選択できるようにしたいのです。 他のフィールド名を選んだときにも同じようにコンボボックスBにフィールドのデータが入るようにしたいと思っています。 コンボボックスAにテーブル名を入れることはできたのですが、 コンボボックスAで選択されたフィールドのデータを、コンボボックスBで選択できるようにするというやり方がわからないのです・・。 accessは2002を使っています。 よろしくお願いします。

  • マイクロソフトアクセスのコンボボックス

    アクセス初心者です。仕事上、アクセスと格闘中です。 注文の入力時の話です。顧客住所の入力ミスを防止するため、コンボボックスで顧客番号を選ぶと担当者や住所などの顧客情報が自動で入力できるそうですが、実際にはうまくできません。コンボボックスで顧客情報を表示して顧客番号を入力するところまではできました。が、住所等の表示方法が分かりません。ご存知の方、お知恵を貸してください。

  • アクセス2007 コンボボックスの複数列の書式設定

    アクセス2007 コンボボックスの複数列の書式設定 列数 3 、列幅 0cm;1.501cm;1cm のコンボボックスです VB側でソースを変えています。 コンボ.RowSource = "SELECT テーブル名.ID, テーブル名.商品, テーブル名.金額  FROM テーブル名 WHERE (~~~~~~ ここで、商品名、金額を「右詰め」、金額を「#,##0」(1,230)としたいのですがフォーマットの記述はどのようにするのでしょうか? お願い致します。

  • コンボボックスの2列目の値を表示させる方法はありま

    アクセス2003です。 コンボボックスの2列目の値を表示させる方法はありますか? テーブル1には ID 会社名 1 山田建設 2 田中株式会社 といれ、 テーブル1をレコードソースとするフォームを作り、コンボボックスを設置し そのコンボボックスのプロパティは 値集合タイプ:テーブル/クエリ 値集合ソース:テーブル1 列数:2 にしました。 この場合、コンボボックスで値を選択した後は、一番左側の数字がコンボボックスに入力されますが 左から2列目の値を表示させる方法はありますか? IDと会社名のフィールドを順番を変えることなく、IDが左、会社名が右にしたいです。 エクセルで例えると http://www.moug.net/tech/exvba/0090021.html と同じようなことをアクセスで行いたいです。 プロパティではなくエクセルのようにVBAで配列を使うしかないのでしょうか?(コードもわかりませんが) よろしくお願い致します。

  • Access2000 コンボボックスで…

    こんにちは。Accessは…初心者です。 フォーム上のコンボボックスについての質問です。よろしくお願いします。 Windows2000/Access2000です。 次のようなテーブルがあるとします。 「作家」…作家ID,作家名 「作品」…作品ID,作家ID(「作家」テーブルから[作家名]を引っ張ってきます)作品名 「許諾」…許諾ID,作家ID(「作家」テーブルから[作家名]を引っ張ってきます),作品ID(「作品」テーブルから[作品名]を引っ張ってきます),許諾情報 「許諾」テーブルを元にして、フォームウィザードから単票形式で「許諾フォーム」を作成しました。 このとき[作家ID]と[作品ID]は自動的にコンボボックスになりますが、[作品ID]コンボボックスに、[作家ID]コンボボックスで選択した作家の作品のみを表示したいのです。 ([作家ID]でAさんを選択したら[作品ID]にAさんの作品だけが表示されるようにしたい、ということです。) 似た内容の質問を参考にしたり、いろいろなAccessのサイトを検索したりして試したのですが、イマイチ???でした。 何かよい方法がありましたらご教示ください。 お願いします。