• 締切済み

困っています。助けてください。(3)-2

再投稿し直します。 会社のシステム開発で思うように進まず困っています。 初心者なので丁寧な解説をいただけると助かります。 (3)カーソル指定したレコードを別フォームで開きたい サブフォームにあるフィルター検索で複数絞ったレコードのうちカーソル選択したレコードを別フォームで開きたい。 サブフォームのフィルター検索はできるようになっているんですが 同じIDのレコードが2件出てきたときに先頭のレコードしか 別フォームで開けないのです。 カーソルで指定したレコードを開くように別フォームに移動するボタンに組み込みたいのですが、どのようなコードを打てばいいのか分かりません。 別フォームに画面切り替えをするボタンには docmd openを使いcodeを指定していするコードを書いています。 サブフォームをsetfocusするのではうまく行かなかったのです。(※何かが抜けていたのかもしれませんが・・・。) 解決方法やコードなどをいただけると大変助かります。 詳しい方、何卒よろしくお願いいたします。

みんなの回答

  • chayamati
  • ベストアンサー率41% (254/607)
回答No.2

今日は、Accessですよね、  他の手続き言語(JAVA,C)もやっておられますか 前回のご質問(締切り済み)でコーディングに拘っておられっるようですが、  ここではボックスのプロパティ―で解決できます  VBAは必要ありません 「同じIDのレコードが2件出てきたときに先頭のレコードしか」は 解決しましたか サブフォームを開いたとき下辺の、レコードセレクタは1/2になっていたらこの場所で 次のレコードへ移動できます。

  • chayamati
  • ベストアンサー率41% (254/607)
回答No.1

>サブフォームのフィルター検索はできるようになっているんですが 同じIDのレコードが2件出てきたときに先頭のレコードしか  別フォームで開けないのです。  カーソルで指定したレコードを開くように別フォームに移動するボタンに組み込みたいのですが、どのようなコードを打てばいいのか分かりません。 フィルターをお見積書のIDで明細書を開くと複数の明細書を開けます >別フォームに画面切り替えをするボタンには  docmd openを使いcodeを指定していするコードを書いています。  サブフォームをsetfocusするのではうまく行かなかったのです。(※何かが抜けていたのかもしれませんが・・・。) 以下のコードはご参考になりますか メニューフォームに血圧履歴登録(ラベルボックス)、履歴開始日、基準日(テキストボックス)を配置しています Private Sub 血圧履歴登録_Click() DoCmd.OpenForm "血圧履歴登録", , , "日付 Between forms!メニュー!履歴開始日 and forms!メニュー!基準日" End Sub

関連するQ&A

  • 困っています。助けてください。(3)

    会社のシステム開発で思うように進まず困っています。 初心者なので丁寧な解説をいただけると助かります。 (3)カーソル指定したレコードを別フォームで開きたい サブフォームにあるフィルター検索で複数絞ったレコードのうちカーソル選択したレコードを別フォームで開きたい。 サブフォームのフィルター検索はできるようになっているんですが 同じIDのレコードが2件出てきたときに先頭のレコードしか 別フォームで開けないのです。 カーソルで指定したレコードを開くように別フォームに移動するボタンに組み込みたいのですが、どのようなコードを打てばいいのか分かりません。 別フォームに画面切り替えをするボタンには docmd openを使いcodeを指定していするコードを書いています。 サブフォームをsetfocusするのではうまく行かなかったのです。(※何かが抜けていたのかもしれませんが・・・。) 解決方法やコードなどをいただけると大変助かります。 詳しい方、何卒よろしくお願いいたします。

  • Access メインフォーム サブフォームにて

    お世話になります。 Accessにて メインフォームにコマンドボタンを置いて、クリックするとサブフォームのレコードが 次に行くようにしたいのですが、 コマンドボタン クリック Forms![メインフォーム]![サブフォーム名].Form!フィールド名.SetFocus DoCmd.GoToRecord , , acNext メインフォームとサブフォームのレコードが次に行ってしまいます。 サブフォームだけ次のレコードに行くには、どのようにすれば良いのでしょうか。 分かる方教えて下さい。 宜しくお願いします。

  • サブフォームのレコード移動

    以下のように2つのサブフォームを親フォームより指定しています。 この場合だとかならずSetFocusしなくてはならなく そのたびに画面がぶれてしまいます。 Me.[1つ目のサブフォーム].SetFocus DoCmd.GoToRecord , , acGoTo, num Me.[2つ目のサブフォーム].SetFocus DoCmd.GoToRecord , , acGoTo, num SetFocusをしないでもサブフォームの移動は可能でしょうか? よろしくお願いします。

  • 新しいレコードの表示

    業務日報をアクセスで作成しています。 タブに個人別のサブフォームを作成してそれぞれ表示しているのですが、件数が多くなると新規でレコードを作成したい時に新しいレコードにカーソルを移動するのが大変になるので、ボタンをクリックして移動できたらと考えています。 Docmd.GotoRecord , , acNewRecord だとサブフォームの新しいレコードには移動出来ません。 もし、この方法が出来ないのであれば、新しいレコードが常に一番先頭に表示されていて、追加するたびに先頭にどんどん表示するという方法でもいいのですが、こんな事は可能なのでしょうか?

  • Access2013サブフォームの背景色(2)

    サブフォームの先頭行のみ青色の背景色となってしまいます。 2行目以降は無色になっています。 カレント行には背景色がついてしまうでしょうか? 全て無色にする方法が知りたいのですが。 カーソルはメインフォームのコントロールにSetFocusしています。 サブフォームのフォームのプロパティ「レコードセレクタ」は「いいえ」に 設定しています。 何か他に設定するところがあるのでしょうか? フォームが開いた時にサブフォームのレコードセレクタが選択されるような作りにしたつもりはないのですが、もしそうであればどうやって解消すればいいのでしょうか?

  • Access レコード移動時イベントでサブフォーム

    お世話になります。 親フォーム Aがあります。(データソースが存在します) その中にサブフォームBがあります。(データソースが存在します) 親フォームのレコード移動時のイベントで、いつもサブフォームのレコードの最後を表示したいのです。そこで・・・ 親フォームAの レコード移動時イベントに Private Sub Form_Current() Me.B.SetFocus DoCmd.GoToRecord , , acLast End Sub 上記を記述すると、一番初めはきちんとサブフォームBのレコードは最後を表示するのですが、以後、親フォームのレコードを動かすと、親フォームの最後のレコードをさしっぱなしになってしまいます。 Me.B.SetFocus DoCmd.GoToRecord , , acLast これの後にどんな記述をすれば、親フォームのレコードを動かすと同時にサブフォームBも最後の行に移るようにできますでしょうか? 何卒よろしくお願いいたします。

  • Accessサブフォームのレコード移動

    Accessにおいて、サブフォームのレコードの移動方法をどなたか教えてもらえませんか。「Forms![メインフォーム名]![サブフォーム名].Form.SetFocus DoCmd.GoToRecord acDataForm, "サブフォーム名", acNext」とコーディングしたのですがダメでした。よろしくお願い致します。

  • サブフォームの新規レコードに移動したい アクセス

    親フォームのコマンドボタンをクリックしたら 親フォームにはまっているサブフォームの新規レコードに移動したいのですが、 うまくできません。 サブフォームのオブジェクト名は、"F_SubForm"です。 サブフォームはデータシートビューです。 VBAコードは Private Sub cmd_test_Click() DoCmd.SelectObject acForm, "F_SubForm" DoCmd.GoToRecord , , acNewRec End Sub です。 上記コードを実行すると DoCmd.SelectObject acForm, "F_SubForm" の部分で、 「実行時エラー 2489  オブジェクトが開いていません。」 となります。 だからと言って、 DoCmd.GoToRecord , , acNewRec だと、何も起こりません。(新規レコードに移動しません) 解決方法をご教授ください。

  • Access+VB サブフォーム(再度)

    表形式フォームで出来上がったものがあります。 Form_Openイベントには、DoCmd.FindRecordで検索をかけてます。 次に、新しくフォームを作りそれにタブコントロールを置き、その中に出来上がってある表形式フォームを置きました。 単体ではDoCmd.FindRecord検索かかってましたが、新しいフォームのサブフォームにするとできません。 そもそも、コントロールになりさがった、サブフォームにForm_Openイベントはあるんでしょうか? Form_GotFocusイベント(サブ側)は働かなくなってるし、サブフォームのイベントプロパテイにはフォーカスの取得時と喪失時しかありません。 メインから、サブフォームがOPENした時に検索かけるにはどうしたらよいでしょう?

  • Access2007 サブフォームでのフィルタ方法(DoCmd.ApplyFilter)

    お世話になっております。 フォームAに検索ボックスを作り、検索ボタンを押すと下記のようにフィルタをかけています。 Private Sub 検索_Click() DoCmd.ApplyFilter , "(分類名 Like '*" & Me.検索語 & "*')" End Sub このフォームAをフォームBのサブフォームとして使いたいのですが、そこで検索を実行すると”実行時エラー2491”が出てフィルタができません。 (フォームAとフォームB間のリンクはありません) 他の方法でもいいのですが、サブフォームでフィルタを実行したいと思います。 ご教授いただければ幸いです。よろしくお願いいたします。

専門家に質問してみよう