- 締切済み
ACCESSについて
今、アクセスとVBAを勉強しています。 そこで今壁にぶつかっているのはどこまでACCESSのみで出来て 何が出来ないのかということがイマイチよくわかりません。 たとえば、1のテーブル、会員番号テーブルを作成します。 フォームより会員番号を入力して 同じフォームにある会員名を表示したい とする場合、アクセスのみの機能で出来ますか? データを連続して表示させる機能ではありません。 検索画面に検索ボタン作成しなくても可能ですか? 初歩の質問ですみません 詳しい方よろしくお願いいたします
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- chayamati
- ベストアンサー率41% (260/624)
>excelvbaはやったことがありません ご心配いりません。 AccessVBAはフォーム内でコーディンしますが、ここの入口はExcelVBAより 相当に入りやすいです。 因みに、前回のリレーションシップのテーブルをソースれレコードとして作成したものです。 運用では背景が黄色のボックスがマウスまたはキー入力です。 他はマスタテーブルの参照、またはVBAで計算します。 AccessVBAはテキッストボックスのイベントで起動します。 ------------------------------------------------------------------------------------ Private Sub 数量_Exit(Cancel As Integer) If 単価 = 0 Then 単価 = 基準単価 金額 = 数量 * 単価 Parent!金額 = 合計 End Sub ―――――――――――――――――------------------- 数量を入力後商品マスタの基準単価をコピーして、 数量×単価をレコード金額として、 その合計をParent(見積)の金額としています。 -これは、見積明細をサブフォームに持つ見積確認フォームです 次の質問のカテゴリーはAccessですね、お待ちしています。
- kkkkkm
- ベストアンサー率66% (1733/2603)
> 同じフォームに表示したいです > 会員番号 1001 田中太郎 のように 選択クエリを作成し(たとえば名前を「Q_会員名簿」とします) 会員番号の抽出条件を フォーム名を「F_会員名簿」で会員番号を入力するテキストボックス名が「会員番号」とした場合 [Forms]![F_会員名簿]![会員番号] とします。 フォームのレコードソースを「Q_会員名簿」にします。 非連結テキストボックス 名前「会員番号」 コントロールソースが「氏名」のテキストボックス 名前は何でもいいです。 テキストボックス「会員番号」の更新後処理のマクロで再クエリ(コントロール名は未入力)を選択します。 フォームのテキストボックス会員番号に会員番号を入力してエンターを押すと、会員名簿に登録された氏名のテキストボックスに氏名が表示されます。
- chayamati
- ベストアンサー率41% (260/624)
>今壁にぶつかっているのはどこまでACCESSのみで出来て 何が出来ないのかということがイマイチよくわかりません。 ★車を最初に買うとき、同じ移動手段の自転車の利便性をとどこまで 車に置き換わるかと考えますか一つに絞る必要は無いのです。 車と自転車を使い分けますね。 躊躇することはありません、 同じようにAccessとExcelの両方を使い分ければいいのです。 2005/12/01にokwaveへ登録なさっているので、PC歴は15年以上ですね ExcelのVBAも相当熟されていると 推察します。 当時はAccessライセンス料が試してみるには高価すぎましたね ★AccessはExcelの延長線上にあるのではなく別物と考えて下さい 一言でいうとExcelはセル単位の処理ですが, Accessはレコード(行)単位、テーブル(Sheet)単位です また決定的に違うのはリレーションシップです。 Excelのファイルは月単位、年単位ですが Accessは一つのファイルで何年か使い続けることが出来ます >たとえば、1のテーブル、会員番号テーブルを作成します。 フォームより会員番号を入力して 同じフォームにある会員名を表示したい とする場合、アクセスのみの機能で出来ますか? ★出来ます Accessの場合、「会員番号テーブル」ではなく「M会員」と命名して このテーブルに会員No.、氏名、フリガナ、電話番号、性別、住所、 登録日等の 項目を設定することによりテーブルが出来た時点で、 どの項目にも並び替え、フィルタ機能が備わっています、 また少し手を加えるとLike 演算子により含まれる文字列検索も可能です >検索画面に検索ボタン作成しなくても可能ですか? ★検索名を入力するボックス(テキスト、コンボボックス) から検索を開始します 尚いきなりVBAはないでしょう 先ずテーブル、リレーションシップをマスタしてからにしましょう。 ExcelのSheetを簡単にAccessのテーブルに関単にインポート出来るので テーブル作成には時間をかける人が少ない様な気がします。 テーブルが情報を保管する唯一の場所です、 後のクエリ、フォーム、レポートはテーブルの肉付けです VBAはフォーム内に組込みます。
- imogasi
- ベストアンサー率27% (4737/17069)
Accessのデータを扱う部分は、背後にSQLがあります。 このソフトは、それを見やすく誘導したりする(画面などの)仕組みを作って、使いやすくしています。(デザインビューのデザイングリッドのような画面) データを扱う部分では、SQLでできることは、アクセスでもできます。 SQLを勉強するほうが、判りやすく知識を整理できるかもしれない。 ーー >検索画面に検索ボタン作成しなくても可能ですか? 些細な端っこの部分にこだわった質問です。 検索ボタンはプログラムの実行のトリガ(発動のキッカケ)を与える、1つの仕組みでしかない。 ーー 学習する途中で噴出する疑問は、まずメモして、深い追及は封印し、解説書やWEBの記事の例題をひたすら、パソコンでやってみることです。 ・少し勉強するとわかることと・根本的な問題を含んでいる疑問とあり、特に後者は、これに拘っていては、独習は進みません。
お礼
ありがとうございます 少々焦っております
- FEX2053
- ベストアンサー率37% (7991/21373)
ご質問の内容なら、#1さんの言われる通りAccessの機能で可能だと 思いますよ。 AccessやExcel-VBAでは、「どの部分をアプリの機能で実現し、 どの機能をコードで実現するか」をきっちり切り分けることが重要 でして、これをいい加減にすると、あとで何やってるかわからなく なります。ですので、ご質問の内容を「あえて」VBAのコードで 書いてしまう場合もあります。また、使い勝手の問題で(ダイア ログの大きさや配列などがアプリ機能だと固定になるので)、VBA のコードを書かなきゃいけない場合もあります。 実際にコードを書く場合、そのあたりをきっちり判断する習慣を つけておいたほうがいいかもしれませんね。
お礼
その判別を悩んでおります・・・ ありがとうございます
- kkkkkm
- ベストアンサー率66% (1733/2603)
会員番号の一致した会員名を取得したいということでしょうか。テーブルに会員番号と会員名があれば、選択クエリで可能だと思いますし、クエリを使わずに、メインフォームサブフォームを作成してリンク親フィールド、リンク子フィールドを設定してもできると思います。
補足
同じフォームに表示したいです 会員番号 1001 田中太郎 のように
お礼
ありがとうございます excelvbaはやったことがありません