ACCESSフォームで複数パターンのフィールドの移動

このQ&Aのポイント
  • ACCESS2007を使っています。データ入力のフォームを作成しています。クエリを実行し、特定のコードに対応した文字を表示させる仕組みを作りたいです。また、特定の数字を入力した場合や何も入力しなかった場合に、別のフィールドにカーソルを移動させる仕組みも作りたいです。
  • ACCESS2007を利用している際に、データ入力フォームを作成しています。特定のフィールドに3桁のコードを入力すると、クエリが実行されて対応した文字が表示されるようにしたいです。また、別のフィールドに特定の数字を入力するとカーソルが移動する仕組みも作りたいです。
  • ACCESS2007を使っています。データ入力フォームを作成しようとしているのですが、クエリを実行して特定のコードに対応した文字を表示する仕組みを作りたいです。さらに、特定の数字を入力した場合や入力がなかった場合に別のフィールドにカーソルを移動する仕組みも作りたいです。
回答を見る
  • ベストアンサー

ACCESSフォームで複数パターンのフィールドの移動

ACCESS2007を使っています。 データ入力のフォームを作成しています、高度なことをやりたいと思い、本を買ったりしてしらべましたが、難しくてわからないので質問させてください。 フィールドAに3桁のコードを入力してENTERを押すと、クエリBが実行されてフィールドCにコードに対応した文字が入力されます。(この仕組みはフィールドに更新後処理にマクロをしこみ実行できました)これに加えて、 フィールドAにコード外の数字”9”を入力してENTERを押すと、フィールドDにカーソルが移動し 同じく、フィールドAに何も入力しないNULLの状態でENTERを押すと、フィールドEにカーソルが移動する仕組みをつくりたいのですがどこにどのようにしたらよいかが全くわかりません。 ご教示くださるようお願いいたします

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

  • ベストアンサー
  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.1

作ったマクロの先頭に以下4行追加します。 条件:IsNull([フィールドA]) アクション:コントロールの移動 (引数:フィールドE) 条件:... (半角ピリオド3つ) アクション:マクロの中止 条件:[フィールドA]="9" アクション:コントロールの移動 (引数:フィールドD) 条件:... (半角ピリオド3つ) アクション:マクロの中止

knabiesnih
質問者

お礼

今日、試してみました 希望通りの動作ができました どうもありがとうございました。

関連するQ&A

  • Access フォームのフィールドの追加と移動

    製品分析表を作成しています。 チェック項目が多く、305あります。大半がチェックボックスと5段階評価です。 フォームを分割すると入力するとき(複数人数)、操作が面倒になるように思えます。 何とかいい方法はないかと思案しています。 どうかよろしくお願いいたします。 質問としては、次のようになります。 1.SQLステートメント:クエリのフィールド数をオーバーした場合、 フィールドを追加する方法があるのかどうか。 2.フォーム画面を2つに分けた場合、ボタンで同じ製品の分析画面に移動 (フォームを表示)するにはどうすればいいか。

  • Accessで、フォームAからダイアログモードで立ち上げたフォームBを開き、フォームBを閉じた時にフォームA側でマクロを実行したい

    タイトルのままなのですが、 フォームA(メインとなる画面)と フォームB(コードの検索画面)があり、 フォームAからフォームBをダイアログモードで開いている状態から、 フォームBを閉じたときに、フォームA側でマクロを実行したいと思っています。 具体的には、フォームAにコード入力用のテキストボックスがあり、コード検索のためにフォームBを立ち上げ、コードを選択した後フォームAのテキストボックスにそのコードを入れて、そのコードの値を元にフォームAにあるコンボボックスの再クエリを行いたいのです。 コンボボックスの再クエリの方法等は理解しているのですが、 上記のような場合に、どのイベントがキックされるのかが分かりません。 どのようにすれば(どのイベントを選んでマクロを指定すれば)適切に実行できるでしょうか。

  • Accessのクエリの検索条件にフォームのテキストボックスを指定したんですが…

    WinXPのAccess2002です。 クエリの検索条件には、[]カッコを用いてフォーム上のテキストボックスを指定できますが、 Nullじゃないものを検索しようと、is not nullと 入力して、試験的にクエリを起動させたところ、 「式が複雑なので…」というメッセージが帰ってきました。 ですが、そのテキストボックスに値を直接指定(数字を入力 するフィールドなんですが、039とか555とか)すると、エラーも 起きずにクエリは実行してくれます。 "is not null"などの場合は、特別な指定の仕方があるのでしょうか。 どうぞご教示のほどよろしくお願いします。

  • アクセス フォームの設定

    テーブル【T-1】 フィールドA,主キー,数値型 フィールドB,テキスト型 フィールドC,テキスト型 フィールドD,テキスト型 フィールドE,テキスト型 フォーム【F-1】 テーブル【T-1】に入力用のフォーム,単票型 があります。 F-1でそれぞれのフィールドに対して入力スペースがあり(もちろんですが) A,B,C,D,Eと順番に入力していきます。 ここでエンターキーを押すと、次のレコードへ移るわけですが、 カーソルがEの位置にあるため、わざわざマウスでAの位置へ移動させないといけません。 同様に、入力項目がなく、A,B,Cと入力して次のレコードへ行くと、Cの位置にカーソルがあります。 これを、Aをホームポジションとして、次のレコードへ移ったときに 自動的にカーソルをAの位置にもってくるようにしたいのですが、 一体どうすればよろしいでしょうか?

  • Accessでの電話番号下4桁での検索について

    Access初心者です。 今Accessで顧客管理を作成しています。 フォームで電話番号の下4桁で検索し、該当の顧客の情報がフォームで見れるようにしたいのですが、クエリでの取り込むべきフィールドや抽出条件などがよくわかりません。 今現在はクエリに「電話番号」フィールドだけを取り込み、抽出条件に Right([Forms]![電話番号検索]![電話番号],4) というのを入れてます。 今の段階で作成しているものは、 ・ユーザーテーブル ・検索実行クエリ ・ユーザーフォーム ・書き込みフォーム ・電話番号検索フォーム ・開くマクロ ・閉じるマクロ ・最後のレコードへ移動するマクロ ・新しいレコードへ移動するマクロ ・書き込みマクロ ・終了マクロ 以上になります。 電話番号検索フォームで下4桁を入力し、検索ボタンを押すとユーザーフォームの該当の顧客の情報が表示されるようにしたいというのが目的です。 何卒ご指導の程よろしくお願い致します。

  • アクセス2007 フォーム入力でフィールドジャンプ

    添付画像参照願います。 アクセスのフォームで入力する際、社員番号のテキストボックスから資格コードまでジャンプ させたいと思います、 やったのはプロパティで更新後処理の埋め込みマクロでアクションをコントロールの移動を使い 引数に資格コードを使いました。 すると画像のようなエラーが出てしまいます。 以前に作ったフォームではうまく動いていたのですが今回は動きません。 WEBなど、探したのですがいい回答が見つかりませんでした、作り直しも行いましたが 同じエラーが繰り返されます。 よろしくお願いします。 会社からなので画像の添付できませんでした、持ち出しができません。 フォームでテキスとボックスにAAAAと入力したらCCCCにカーソルを移動させたいです。 ラベル テキストボックス aaaa AAAA bbb  BBBB ccc CCCC 説明が分かりにくく申し訳ないです、分かりましたら教えてください。 調べつくしましたが分かりませんでした、

  • ACCESSのフォームで、あるテーブルのフィールドが特定の数字で始まる場合に”1”を入力したい。

    一覧フォームのフィールドで、表示されていないテーブルのフィールドが、特定の数字から始まるレコードが入力されている場合に、その一覧のフィールドに”1”を入力させたいのですが、やりかたがわかりません。 その一覧フォームが開くときのマクロで、値の代入などやってみましたが全然できません。 考え方が全く思い浮かばずにいます。 ちょっと説明が分かりにくいかと思いますが、その際は補足説明しますのでお願いいたします。

  • Accessのフォームとテーブルについて教えてください。

    Access2003を使用しています。 既存のフォームAにフィールド3個を増やしました。 フォームAはテーブル(1)と連動していました。 追加したフィールドはテーブル(6)のものです。 ところがフォーム上で追加フィールドに入力が出来なくなりました。3フィールドのうち、ひとつはコンボボックスです。表示はされますが確定ができません。 フォームAのSQLステートメントではテーブル(1)・(6)以外にテーブル(2)・(3)・(4)・(5)が結合されています。 フォームAからするとテーブル(2)・(3)・(4)・(5)のデータはIDの名称を見るための参照用です。 テーブル(6)は、追加フィールドのコンボボックスが参照用で、他の2追加フィールドは、フォームから入力してテーブル(6)に反映させたいものです。 テーブル(6)の画面では入力できます。 フォーム上からは入力できません。 設定が何か欠けているからでしょうか? 他の質問では2つのテーブルをひとつのフォームにする場合は、クエリを別に設けた方がいいとなっています。フォームが出来上がっているので、できればクエリを設けずに行いたいのですが、よくない方法でしょうか? 手順なども踏まえて教えていただけると助かります。 よろしくお願いいたします。

  • Accessのフォームで

    Accessで2つほど質問いたします。 (1)テーブルにフィールドを追加したのですがフォーム上でそのフィールドが追加できません(プロパティで選択できない)、多分クエリーを経由してフォームを作成したのですが、どのクエリーだかわからなくなってしまいました、参照しているクエリーがどれなのかを調べる方法を教えてください。 (2)検索フォームを作成して入力した文字を含む検索をしたいのですが どのようにしたら良いのでしょうか、今は入力の文字列の最初と最後に「 * 」を入力して検索しています。

  • Accessで、サブフォームのあるフォーム内をEnterキーで移動したい

    いつもお世話になっております。 質問させてください。m(_ _)m Accessで、サブフォームのあるフォームを作成すると、同一フォーム内のフィールド移動は「Enter」で動きますが、フォーム間の移動は「Ctrl+tab」になります。 画面に表示されているフィールド間全部を(サブフォームであってもなくても関係なく)「Enter」キーのみで移動していく方法はありますか? あればその方法を教えてください。 移動順序も変えられたらありがたいです。 よろしくお願いします。

専門家に質問してみよう