• ベストアンサー

Accessデータベースで行と列を指定して出力・・・

Accessのデータベースを使っています。 行と列を指定すると、1つだけ結果が出ると思うんですが、それを選択し、出力する方法を教えてください。

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

  • ベストアンサー
noname#102878
noname#102878
回答No.4

横から失礼します。 ASPのカテゴリーに質問していれば「ASPからです」の部分は暗黙の情報になってたんですけどね・・・ と言うことは置いといて。 ASPのサーバサイド・スクリプトでAccessのMDBにアタッチする方法はすでにご存知だと思うので割愛します。 Access自体の使い方もわかりますよね? クエリーも作れますよね? で、それを前提に進めます。 > 3.行と列を指定する方法は、顧客IDが"1012"の人とかです。 MDBファイルをAccessで開いて、必要な条件で選択クエリーを作成してください。(保存はしなくていいです) クエリーのビューをデザインから「SQLビュー」に切り替えると先のクエリーのSQL文字列表記が表示されるので、これをASPコード内で使用してください。 例えば、テーブル[tbl01顧客]のフィールド[m01顧客ID]の値が文字列「1012」のレコードの、フィールド[m01顧客ID]とフィールド[m01顧客名]とフィールド[m01顧客会社名]を取得したいなら、 "SELECT m01顧客ID, m01顧客名, m01顧客会社名 FROM tbl01顧客 WHERE (m01顧客ID='1012');" というSQL文字列になります。 この文字列をRecordsetオブジェクトでOpenすれば該当するレコードを取得することができます。 ASPの簡単な入門書なら、おそらくどの書籍でもAccessにアタッチする方法が書かれていると思いますので、読みやすいものを購入してみてはどうでしょうか。

その他の回答 (3)

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.3

>この言語は何ですか? >言ってなかったのですが、ASP(VBScript)を使っています。 AccessのVBAです。 同じVBなので構文的には共通じゃないんでしょうか。 私はASP知らないもので。 フォームのボタンとか言っていたので、AccessのVBAだと思っていました。 VBAはアプリケーションに標準装備されているので、そっちの方が楽な気がしますが。 ASP→VBAって簡単に応用出来そうな気がしますが。

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.2

再びmaruru01です。 仮に、フォームに顧客IDを入力するテキストボックス(txt顧客ID)、[表示]というコマンドボタンがあったとします。 顧客名を表示することとします。 テーブルは、[顧客]という名前で、[顧客ID]・[顧客名]というフィールドがあるとします。 テキストボックス[txt顧客名]に表示するとします。 ・[表示]コマンドボタンのクリックイベントに、以下のように記述します。 Private Sub 表示_Click()   If IsNull(DLookup("顧客名", "顧客", "顧客ID = '" & Me!txt顧客ID.Value & "'")) Then     MsgBox "顧客IDが存在しません。"   Else     Me!txt顧客名.Value = DLookup("顧客名", "顧客", "顧客ID = '" & Me!txt顧客ID.Value & "'")   End If End Sub DLookup関数は、 DLookup("フィールド名", "テーブル名", "抽出条件") で、抽出条件にあったデータのフィールドの値を返します。 データが存在しない場合は、Nullを返します。(だから、IsNull関数を通すのです。) 詳細はヘルプを参照して下さい。

cake80jp
質問者

補足

ありがとうございます。 この言語は何ですか? 言ってなかったのですが、ASP(VBScript)を使っています。

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 いくつか聞きたいことがあります。 1.とりあえず、Accessのバージョンは?(2000でしょうか) 2.出力とは? (1)レポートで印刷するということでしょうか (2)テキストファイルなどにエクスポートすることでしょうか (3)単に抽出結果を表示するだけでしょうか 3.行と列を指定する方法は? (1)列というのはフィールド(項目)を具体的に指定するということでしょうか (例えば、生年月日を出力したいとか) (2)行というのはある抽出条件でレコードを指定するということでしょうか (例えば、顧客IDが"1012"の人とか) 4.どういう状況で行いたいのでしょうか (1)手動でクエリとかを使うのでしょうか (2)フォームからボタンクリックとかで行いたいのでしょうか

cake80jp
質問者

補足

早速、ありがとうございます。 いくつか抜けててすいません。 1.Accessのバージョンは2000です。 2.出力とは、単に抽出結果を表示するだけです。 3.行と列を指定する方法は、顧客IDが"1012"の人とかです。 4.フォームからボタンクリックとかで行いたいです。

関連するQ&A