Access (VBA)

Access VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Home : Access 2016)
帳票サブフォームOPEN時にカレント行を指定する
投稿日時: 18/10/12 17:14:06
投稿者: miyama2305

メインフォームの
テキストボックス1に取引先名を入力
同時にテキストボックス2に「月」を入力
でサブフォームを表示。
サブフォームの帳票形式は以下です
「月」を入力しない場合は以下の通りです。
年月日--/取引明細/数量/単価/金額
2018/01/2/あ品----/2--/10--/20
2018/01/5/い品----/10--/20-/200
2018/02/2/う品----/20--/10-/200
2018/02/5/い品----/30--/20-/600
2018/03/8/い品----/10--/20-/200
2018/03/12/お品---/5--/10--/50
以降続きます
お願いは、テキストボックス2に「2月」を入力したら
以下の様式に表示したいのですが。
2018/02/2/う品----/20--/10-/200
2018/02/5/い品----/30--/20-/600
2018/03/8/い品----/10--/20-/200
2018/03/12/お品---/5--/10--/50
以降続きます
 
要は指定した月の最初の日付データを
サブフォームの一番上に表示したいのですが
1月の取引は隠れますがカーソルを移動したら見れます。
 
取引の指定した月をチェツクするためです。
以下のコード形式とは思いますが
DoCmd.GotoRecord acDataForm,"サブフォーム名",acGoTo,…・
 
ご指導お願いします
 
 
 
 
 
 
 
 
 

回答
投稿日時: 18/10/12 18:04:48
投稿者: sk

引用:
メインフォームの
テキストボックス1に取引先名を入力
同時にテキストボックス2に「月」を入力
でサブフォームを表示。

引用:
テキストボックス2に「2月」を入力したら

」のことは考えなくてよいのでしょうか。
 
 
引用:
(Windows 10 Home : Access 2016)

引用:
要は指定した月の最初の日付データを
サブフォームの一番上に表示したいのですが
1月の取引は隠れますがカーソルを移動したら見れます。

引用:
DoCmd.GotoRecord acDataForm,"サブフォーム名",acGoTo,…・

サブフォームにフォーカスを移動させた上、
SearchForRecord メソッドを呼び出せばよろしいかと。
 
あとはメソッドの引数 WhereCondition に
どのような検索条件式を渡すかの問題です。

投稿日時: 18/10/13 11:20:52
投稿者: miyama2305

sk様 ありがとうございます
遅くなり申し訳ありません
 
>「年」のことは考えなくてよいのでしょうか
そうでした。textbox2には
2018/02と表示します
 
指導いただきましたWhereConditionのコードは
以下のような形式だと思うのですが、年月での検索ですので、
よろしくお願いします
 
WhereCondition:="[日付] LIKE '*" & Me.textbox2.Value & "*' "
 

投稿日時: 18/10/14 10:53:28
投稿者: miyama2305

sk様
指導いただきありがとうございました
以下のコードでできました
メインフォーム![サブフォーム].SetFocus
DoCmd.SearchForRecord , , acFirst, "日付 like '*" & Me.textbox2 & "*'"
 
感謝です。