• 締切済み

[Access]クエリでテキストを合わせて表示させる方法

宜しくお願いします。 例えば、CODEというフィールドに"1000"という 内容が2の行に入っていたとします。 この"1000"というCODEをグループ化させ、 他のフィールドにテキストが入っている場合は、 どちらも合わせて表示させる方法はないのでしょうか? うまく説明できないので、下に図をかきます。 (CODE)  (テキスト) 2000   あいうえお 2000   かきくけこ    ↓グループ化 2000   あいうえおかきくけこ という風にしたい。 宜しくお願いします。

みんなの回答

  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.2

参考まで、希望するデータテーブルを作るVBAコードを作って見ましたので 宜しかったら次の操作でテストしてみてください。 モジュールの「新規作成」に下記コードを貼り付け実行します。 メニューから[ツール]-->[参照設定]で「Microsoft DAO X.X Object Libraly」 にチェックを入れ「Microsoft ActiveX Data Object X.X Library」より 優先順位を上にします。 基になるテーブル名を「テーブル1」とし、フィールドを同じCODEの場合の 整列順を決定するための[No](キー)のほか[CODE],[テキスト]があるとします。 このコードを実行すると新たに「テーブル1_B」というテーブルが出来て 希望通りのデータになっていると思います。 Sub test() Dim db As DAO.Database Dim tb1 As DAO.Recordset Dim tb2 As DAO.Recordset Dim mySQL As String Dim stradd As String Dim code As Integer Set db = CurrentDb mySQL = "SELECT [No],CODE, テキスト" & _     " FROM テーブル1 ORDER BY CODE,[No]" Set tb1 = db.OpenRecordset(mySQL) On Error Resume Next db.Execute "CREATE TABLE テーブル1_B (" & _   "CODE LONG,テキスト TEXT(100)" & ")" mySQL = "DELETE * FROM テーブル1_B" db.Execute mySQL Set tb2 = db.OpenRecordset("テーブル1_B", dbOpenTable) tb1.MoveFirst Do Until tb1.EOF   If code = tb1![code] Then     stradd = stradd & tb1![テキスト]   Else     tb2![テキスト] = stradd     tb2.Update     tb2.AddNew     stradd = ""     code = tb1![code]     tb2![code] = code     stradd = tb1![テキスト]   End If tb1.MoveNext Loop tb2![テキスト] = stradd tb2.Update tb1.Close tb2.Close Set db = Nothing Set tb1 = Nothing Set tb2 = Nothing End Sub

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

クエリを3つ使えば2行までなら出来ます。 クエリ1でグループ化しテキストのフィールドの集計で先頭を選択する。このフィールドをテキスト1として。同じ内容のクエリ2を作りテキストのフィールドの集計で最後を選択する。このフィールドをテキスト2として。 クエリ3を作りクエリ1とクエリ2をテーブル表示させCODE同士をリレーションします。 クエリ3のフィールドはCODEとテキスト1・テキスト2・テキスト3としてテキスト3のフィールドに テキスト3:=[テキスト1]&[テキスト2] とすれば出来ます。 テキスト1・2の表示が要らなければ非表示にすればCODEとテキスト3の状態になります。 今こんなものしか浮かびませんが参考になれば。

関連するQ&A

  • アクセス2000です。クエリについて教えて下さい!!

    アクセス初心者です。クエリについて教えて下さい!! 注文書を作成できるものを作りたいのですが、 テーブルで M商品 ・グループコード(テキスト型) 主キー ・品番(数値型) 主キー ・サイズ(テキスト型) 主キー ・品名(テキスト型) ・単位コード(数値型) ・現在庫数(テキスト型) ・下限在庫数(テキスト型) T注文 ・伝票No.(テキスト型) 主キー ・日付(日付/時刻型) ・注文状況(数値型) ・希望納期(日付/時刻型) ・仕入先コード(テキスト型) ・納入場所コード(数値型) ・担当者コード(テキスト型) ・備考(メモ型) WT明細 ・伝票No.(テキスト型) 主キー ・行番号(数値型) 主キー ・グループコード(テキスト型) ・品番(数値型) ・サイズ(テキスト型) ・数量(テキスト型) ・単位(テキスト型) ・備考(テキスト型) T単位 ・単位コード(数値型) 主キー ・単位(テキスト型) があって クエリで WT明細とM商品とT単位を結合して ・伝票No. ・行番号 ・グループコード ・品番 ・サイズ ・品名 ・数量 ・単位コード ・単位 ・備考 としているのですが、フォームで入力する時に グループ、品番、サイズに値を入力したときはちゃんと品名がでるのですが、サイズに何も記入しないときは空白になるんです。 説明すると M商品 グループコード 品番 サイズ 品名 15 、3、 25.5bl、 靴黒25.5 の時は「靴黒25.5」が品名にでてくるのですが グループコード 品番 サイズ 品名 99、 999、(サイズ空白)、 その他 の時に「その他」が品名にでてきません。 どうしたらいいですか? ちなみに「その他」と出てきても名前を変更する場合がありますが そのときにその場では「その他」を「靴エナメル」も変更しても M商品の「その他」は「その他」のままにしておきたいです。 分かりづらい説明ですが、どなたかご教授下さい。

  • Access97のクエリー(sql文)について

    [A]テーブルに[CODE.DATE.CHK]とフィールドがあります 内容は、 [CODE][DATE][CHK] 01.2007/06/01.0 01.2007/06/10.1 01.2007/06/11.1 02.2007/05/01.0 02.2007/05/10.1 と、します。 結果を 01.3.2 02.2.1  と、したいのです。 つまり、[DATE]の行数と、[CHK]が1の件数が とりたいのです。 SELECT A.CODE, Count(A.DATE) AS CNT FROM A GROUP BY A.CODE; と、すれば、[DATE]の行数はとれます。 [CHK]が1の件数の取り方が解りません。 宜しくお願い致します。

  • アクセスのクエリの結果をテキストボックスに表示

    会員名簿のデータベースで、全ての男性会員の名前をテキストボックスに表示したいと思っています。 [性別]のフィールドが『男性』の会員の[氏名]フィールドを出力するクエリは作ったのですが、この[氏名]フィールドの内容を全てテキストボックスに表示するにはどうすればよいのでしょうか? テキストボックスのコントロールソースを『=[男性会員選択クエリ]![氏名]』にすると、『#Name?』と表示されてしまいます。  "DLookUp"だと、一番最初の男性会員の[氏名]しか出てこないため、目的を達成できません。 よろしくお願いします。

  • アクセス初心者です!!クエリについて教えて下さい!!

    アクセス初心者です。クエリについて教えて下さい!! 注文書を作成できるものを作りたいのですが、 テーブルで M商品 ・グループコード(テキスト型) 主キー ・品番(数値型) 主キー ・サイズ(テキスト型) 主キー ・品名(テキスト型) ・単位コード(数値型) ・現在庫数(テキスト型) ・下限在庫数(テキスト型) T注文 ・伝票No.(テキスト型) 主キー ・日付(日付/時刻型) ・注文状況(数値型) ・希望納期(日付/時刻型) ・仕入先コード(テキスト型) ・納入場所コード(数値型) ・担当者コード(テキスト型) ・備考(メモ型) WT明細 ・伝票No.(テキスト型) 主キー ・行番号(数値型) 主キー ・グループコード(テキスト型) ・品番(数値型) ・サイズ(テキスト型) ・数量(テキスト型) ・単位(テキスト型) ・備考(テキスト型) T単位 ・単位コード(数値型) 主キー ・単位(テキスト型) があって クエリで WT明細とM商品とT単位を結合して ・伝票No. ・行番号 ・グループコード ・品番 ・サイズ ・品名 ・数量 ・単位コード ・単位 ・備考 としているのですが、フォームで入力する時に グループ、品番、サイズに値を入力したときはちゃんと品名がでるのですが、 サイズに何も記入しないときは空白になるんです。 説明すると M商品 グループコード 品番 サイズ 品名 15 、3、 25.5bl、 靴黒25.5 の時は「靴黒25.5」が品名にでてくるのですが グループコード 品番 サイズ 品名 99、 999、(サイズ空白)、 その他 の時に「その他」が品名にでてきません。 どうしたらいいですか? ちなみに「その他」と出てきても名前を変更する場合がありますが そのときにその場では「その他」を「靴エナメル」も変更しても M商品の「その他」は「その他」のままにしておきたいです。 分かりづらい説明ですが、どなたかご教授下さい。 補足 SQL?を載せます。宜しくお願いします。 SELECT WT明細.伝票No., WT明細.行番号, WT明細.グループコード, WT明細.品番, WT明細.サイズ, M商品.品名, WT明細.数量, WT明細.合計, WT明細.備考, T単位.単位 FROM (M商品 RIGHT JOIN WT明細 ON (M商品.サイズ = WT明細.サイズ) AND (M商品.品番 = WT明細.品番) AND (M商品.グループコード = WT明細.グループコード)) LEFT JOIN T単位 ON M商品.単位コード = T単位.コード;

  • アクセス初心者です。クエリについて教えて下さい!!

    アクセス初心者です。クエリについて教えて下さい!! 注文書を作成できるものを作りたいのですが、 テーブルで M商品 ・グループコード(テキスト型) 主キー ・品番(数値型) 主キー ・サイズ(テキスト型) 主キー ・品名(テキスト型) ・単位コード(数値型) ・現在庫数(テキスト型) ・下限在庫数(テキスト型) T注文 ・伝票No.(テキスト型) 主キー ・日付(日付/時刻型) ・注文状況(数値型) ・希望納期(日付/時刻型) ・仕入先コード(テキスト型) ・納入場所コード(数値型) ・担当者コード(テキスト型) ・備考(メモ型) WT明細 ・伝票No.(テキスト型) 主キー ・行番号(数値型) 主キー ・グループコード(テキスト型) ・品番(数値型) ・サイズ(テキスト型) ・数量(テキスト型) ・単位(テキスト型) ・備考(テキスト型) T単位 ・単位コード(数値型) 主キー ・単位(テキスト型) があって クエリで WT明細とM商品とT単位を結合して ・伝票No. ・行番号 ・グループコード ・品番 ・サイズ ・品名 ・数量 ・単位コード ・単位 ・備考 としているのですが、フォームで入力する時に グループ、品番、サイズに値を入力したときはちゃんと品名がでるのですが、サイズに何も記入しないときは空白になるんです。 説明すると M商品 グループコード 品番 サイズ 品名 15 、3、 25.5bl、 靴黒25.5 の時は「靴黒25.5」が品名にでてくるのですが グループコード 品番 サイズ 品名 99、 999、(サイズ空白)、 その他 の時に「その他」が品名にでてきません。 どうしたらいいですか? ちなみに「その他」と出てきても名前を変更する場合がありますが そのときにその場では「その他」を「靴エナメル」も変更しても M商品の「その他」は「その他」のままにしておきたいです。 分かりづらい説明ですが、どなたかご教授下さい。 SQL?を載せます。宜しくお願いします。 SELECT WT明細.伝票No., WT明細.行番号, WT明細.グループコード, WT明細.品番, WT明細.サイズ, M商品.品名, WT明細.数量, WT明細.合計, WT明細.備考, T単位.単位 FROM (M商品 RIGHT JOIN WT明細 ON (M商品.サイズ = WT明細.サイズ) AND (M商品.品番 = WT明細.品番) AND (M商品.グループコード = WT明細.グループコード)) LEFT JOIN T単位 ON M商品.単位コード = T単位.コード; 宜しくお願いします。

  • Accessのクエリでハイパーリンクの作成したい

    Access2003にて、[商品]テーブルを使って、社内の別システム上にある商品ごとの詳細ページ(IEで閲覧するページです)へのハイパーリンクをクエリで作成したいのですが、全部で1600件ほどあるデータに対して、一括で作成するにはどのような方法がよいのかわからないで、教えてください。 クエリでは[商品]テーブルにある以下のフィールドを使います。  ○[マスタNo]フィールド(数値型)  ○[商品名]フィールド(テキスト型)  ○[商品コード]フィールド(テキスト型)  ※[商品コード]フィールドは半角英数の羅列です。 別システム上のURLは[http://shouhin/iteminfo.ashx?code=[商品コード]]となっています。 上記のように、別システムの詳細ページのURLでcode=の後に続く文字列は[商品]テーブルの[商品コード]フィールドになります。 クエリでは、[商品名]フィールドに上記のURLのハイパーリンクを貼り付けるか、新たなフィールドを設けてハイパーリンクを作成するのか、どちらかを実現したいので、ご教示よろしくお願いします。

  • JavaScriptでテキストを表示・非表示・・・

    こんばんは。お世話になります。 JavaScriptでテキストがボタンを押すと表示/非表示と切り替わるようにしたいです。 サイトを参考に試してみましたが一か所しか表示/非表示となりませんでした。 1行おきに表示/非表示としたいのでブロック単位では指定出来ません。 display構文を使って作りました。 div idがそれぞれの部分に必要かと思い、div id="○○a"、div id="○○b"という風に付けましたがうまくいきませんでした。    ↓このような形にしたいです  あいうえおかきくけこ   サシスセソタチツテト ←この行を表示/非表示  なにぬねのはひふへほ   マミムメモヤユヨ ←この行を表示/非表示 こういう風なように打ちました。 あいうえおかきくけこ<br> <div id="disp">サシスセソタチツテト</div><br>         なにぬねのはひふへほ<br>  <div id="disp">マミムメモヤユヨ</div><br> <form> <input type="button" value="表示" onclick="Hyoji1(0)"> <input type="button" value="非表示" onclick="Hyoji1(1)"> </form> <script type="text/javascript"> <!-- function Hyoji1(num) { if (num == 0) { document.getElementById("disp").style.display="block"; } else { document.getElementById("disp").style.display="none"; } } // --> </script> どの辺りを間違っているでしょうか?宜しくお願い致します。

  • アクセスフォーム コンボボックスで選んだ値を別のテキストボックスにまとめて表示したい!

    他でもコンボボックスの質問をしましたringo0120です。質問が2つに分かれて申し訳ありません。 アクセスフォームの中に「A」「B」「C」「D」と 4つのコンボボックスがあります。  「A」あいう  「B」えお  「C」かき  「D」く というふうにコンボボックスで選んだとします。 この4つをまとめてポンと他のボックスにくっつけて 表示したいのです。  「テキストボックス」あいうえおかきく というふうに。 どうやってもうまくいきません。 誰か教えてください! よろしくお願いします。

  • テキストボックスのレイアウトを行内にできない!

    wordで行と行の間にテキストボックスを挿入して、 折り返しの種類と配置を”行内”にしたいのですが、なぜか選択できません。 どうしたらいいのでしょうか・・・ 【例】 あいうえおかきくけこさしすせそ   □□□□□□□□□□□   □□□□□□□□□□□ あいうえおかきくけこさしすせそ (うまく表現できなかったのですが↑ロ・・・は1つのテキストボックスです)

  • Access クエリより集計という列の使い方

    単純な質問ですいません。 クエリで、Σマークをクリックすると集計という行が出て グループ化と表示されています。 このグループ化とはどういう意味でしょうか。 また、演算をかけてある列フィールドに対しては“演算”を選んだ方がいいのでしょうか。 とか、合計をかけてある列フィールドには“合計”を選んでおいたほうがよい?。。 ちょっとよくわかりません・・。

専門家に質問してみよう