• ベストアンサー

ACCESS ピボットテーブルではなく・・・

まだまだACCESS初心者ですが、どなたか教えてください。 エクセルで管理データを作成中です。 以下のようにテーブルにコードと担当者を入力しています コード 担当者 A11 山田 A13 井上 A15 田中 A11 鈴木 A13 吉田  ・   この入力をコードごとに コード 担当者 担当者(2) A11 山田  鈴木 A13 井上  吉田 A15 田中  ・   と表示をすることはできないでしょうか・・・。 ピボットテーブルではなく、テーブルやクエリなどで表示をしたいのですが上手くいきません。できるかできないかも分からないのですが、よろしくお願い致します。

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

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

並べる順序を決定できるフィールドが必要です 無い様なのでとりあえず、担当者の文字コード順で並べることにします クエリで下のような式フィールドを作ります 列:"担当者" & DCount("*","テーブル名","コード='" & コード & "' and 担当者<='" & 担当者 & "'") このクエリをクロス集計クエリに変え コード:行見出し 列:列見出し 担当者:値:先頭

maigo-no-koneko
質問者

お礼

できましたーーー! まさにこれがしたかったのです! ありがとうございました。大変勉強になりました。

すると、全ての回答が全文表示されます。

その他の回答 (3)

noname#140971
noname#140971
回答No.4

補足:主キー列の追加も考慮されたがいいです。 Tab2: ID__コード__担当者 1___A11_____山田 2___A13_____井上 3___A15_____田中 4___A11_____鈴木 5___A13_____吉田 6___A11_____鈴木 Tab2 クエリ: コード__担当者___担当者カウント A11_____山田_____1 A11_____鈴木_____2 A11_____鈴木_____3 A13______井上____1 A13______吉田____2 A15______田中____1 SELECT [コード], 担当者, DCount("*","tab2","コード='" & コード & "' AND ID<=" & ID) AS 担当者カウント FROM tab2 ORDER BY [コード], ID; 先の回答で示唆していますが、主キー列はあったがいいです。 一番確実に[担当者カウント]を生成するのは、やはり、主キー列を使うことだからです。 また、リレーショナルデータベースのテーブル設計としても主キー列の設定は必要かと思います。

maigo-no-koneko
質問者

お礼

2回目の書き込みありがとうございます。 説明がつたなくて質問がうまく伝わらず申し訳ございません。 もともとエクセルで表示しようとは考えていなかったので・・・。 まだまだ難しいことばかりで勉強中ですが、書き込みして頂いた内容を熟読し理解していきたいです。 ありがとうございました!

すると、全ての回答が全文表示されます。
noname#140971
noname#140971
回答No.2

エクセルは実際には操作したことがない門外漢ですのでチト外しているかも・・・。 しかし、質問の主旨が全く理解できません。 そこで、私流を示してみます。 tab2: ID___コード___担当者 1____A11______山田 2____A13______井上 3____A15______田中 4____A11______鈴木 5____A13______吉田 このような Access のテーブルがあったとします。 エクセルの各列に次のように表示したいということでしょうか? この場合、アクセスのクエリは余り関係ないと思います。 A11__山田__鈴木 A13__井上__吉田 A15__田中__ =CutStr(DBSelect("SELECT 担当者 FROM tab2 WHERE [コード]='" & A1 & "'"),";",1) =CutStr(DBSelect("SELECT 担当者 FROM tab2 WHERE [コード]='" & A1 & "'"),";",2) このように表示するには、このような式をB1、C1、D1・・・と書いてズズーッと下へコピー。 なお、A1への[コード]の表示は、次のような式で達成されます。 A11=DBLookup("SELECT [コード] FROM Tab2", 1) A13=DBLookup("SELECT [コード] FROM Tab2", 2) A15=DBLookup("SELECT [コード] FROM Tab2", 3) しかし、しかしです。 質問者は、一体、このように SQL文を実行する関数でエクセルに表示しようとしているのか不明。 それとも、こういうアプローチ自体が未定なのでしょうか??? いずれにしろ、その辺りを補足されたがいいですね。

すると、全ての回答が全文表示されます。
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

テーブルAをコピーしてテーブルBを作成 コード、担当者、担当者(2)をフィールドにしてコードを主キーにする。 テーブル追加クエリCでテーブルAをテーブルBに追加する。 コード 担当者 担当者(2) A11 山田 A13 井上 A15 田中 の状態になる。 テーブル更新クエリDでテーブルBのコードを連結キーにテーブルAの内容で 担当者(2)を更新する。 このときテーブルB.担当者<>テーブルA.担当者を条件にする。

すると、全ての回答が全文表示されます。
このQ&Aのポイント
  • エレコムのトラックボールマウスのボールのみ販売しているかについて質問があります。
  • 浮遊マウスのボールがよく外れるため、紛失に備えてボールのスペアが欲しいです。
  • 購入した製品はエレコム トラックボールマウス ハンディタイプ Relacon メディアコントロールボタン搭載 スタンド付 静音 Bluetooth ブラック M-RT1BRXBK です。
回答を見る

専門家に質問してみよう