
日付/品番/出庫数のフィールドで構成された「明細テーブル」があります。
「日付」フィールドからなるメインフォーム、「品番/出庫数」からなるサブフォームをつくり、メインフォームのサブフォームコントロールのレコードソースを「サブフォーム」に指定しました。
日付を入れるとその日の出庫明細がサブフォーム上に表示されるのですが、このレコード件数をメインフォーム上のコントロールで表示したいのです。
サブフォームのヘッダにテキストボックスコントロールを作り「=Count([品番])」としてやれば、「サブフォーム上での」件数表示は出来るのですが、同じ式をメインフォーム上のコントロールに記述すると、「全レコードの件数」が表示されてしまいます(当たり前ですが)
そこで、「=Count([埋め込み].Form![品番])」とやってみました。ここで「埋め込み」とはメインフォーム上のサブフォームコントロールの名前です。
結果は「#Error」となってしまいます。Count関数だけでなくSum関数などでも同様の結果となります。
はっきりいって「サブフォームのヘッダに表示させればいいじゃないか」というところなのですが、「式ビルダ」ではサブフォームのコントロール名も容易に参照できるようになっており、なにか方法があるのではないか、初歩的なところでつまずいていないか、と思案している次第です。
なにかアドバイスいただけたら幸いです。
No.2ベストアンサー
- 回答日時:
サブフォームのフッタに『件数』というテキストボックスを作り
ソースに =Count(*) とします。
普通のフォームとして作り、[規定のビュー]をデータシートにすればデータシートのサブフォームになりますから、フッターを追加しても問題はなく
メインフォームにテキストボックスを作り
=NZ([サブフォーム名].[Form]![件数])
という具合にサブフォームの「件数」を参照すれば良いです。
参考になれば幸いです
これはすでに試していたのですが……
「コードビルダ」で作成した式では([サブフォーム名].フォーム![件数]) と
「Form」が「フォーム」(実際は半角カナ)になっていました(なぜ・・・?)
k_ebaさんの式で上手くいきました。ありがとうございました。
No.1
- 回答日時:
AccessVBAでTblの件数を取得すると↓
1.Mainフォームにテキストボックスを1つ作って下さい。名前は「txt1」
2.デザインフォームのプロパティのイベントで「開く時」の右にある
「...」3点リーダーをクリックし、コードビルダを選択します。
3.コードビルダが開いたら ツール→参照設定→Microsoft DAO 3.6
Object Libraryにチェックを付けて下さい。
下記の点線の部分を↓にカット&ペースト
Private Sub Form_Open(Cancel As Integer)
●●●←ここにカット&ペースト
End Sub
'---------------------------↓
Dim db1 As Database '変数宣言
Dim rs1 As Recordset
Dim aCnt As Integer
'総件数の取得
aCnt = 0
Set db1 = CurrentDb
Set rs1 = db1.OpenRecordset("T_全件")
If rs1.EOF Then '1件も存在しない場合はエラー
Msgbox("T_全件テーブルに該当データは存在しません。")
Exit Sub
End If
rs1.MoveLast
aCnt = rs1.RecordCount
Me.txt1.Value = aCnt 'テーブルの合計値をTxt1に表示する。
rs1.Close
db1.Close
'----------------------------↑
説明が必要であれば追記してください。(暇なときに返事します)
この回答への補足
詳細な回答いただきありがとうございました。
>Set rs1 = db1.OpenRecordset("T_全件")
この"T_全件"のところにレコードソースとなるテーブル名を入れるのだと思いますが、実行したところ、テーブルのすべてのレコード数が表示されてしまいました。
サブフォームに表示されているレコード件数だけを取得したかったのですが……。
しかしこのコードを使えばレコードソース以外のテーブルからも値を取得することが出来ますね。今後の参考になりそうです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- JavaScript 空白で入力フォームのボタンをクリックしたら、ブラウザの上部からjavascriptで 表示されるアラ 1 2022/05/20 11:16
- JavaScript ラジオボタンによるフォームの開閉を行いたい 3 2022/03/31 21:30
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
- Access(アクセス) Accessでセレクタをダブルクリックで別フォームで詳細表示 3 2022/12/20 10:36
- Access(アクセス) Access2016でフォーム内にExcelの複数シートを 表示させるイメージで複数テーブルの デー 1 2022/11/25 15:30
- Access(アクセス) Accessフォーム 一部のレコードだけを抽出する方法について 1 2022/06/28 18:45
- その他(Microsoft Office) Excelで総数量を変動させたい 2 2022/11/04 23:49
このQ&Aを見た人はこんなQ&Aも見ています
-
Access サブフォームでの選択行の取得
その他(データベース)
-
Accessのフォーム上にレコード数とレコード番号の表示
その他(データベース)
-
アクセスでサブフォームのレコードを取得したい。
Access(アクセス)
-
-
4
サブフォームに対してGoToRecordするには?
その他(Microsoft Office)
-
5
フィルタ後のフォームの件数の取得の仕方
Access(アクセス)
-
6
Accessのサブフォームから値を参照する方法について
その他(データベース)
-
7
前のレコードの値を自動で入れたい
PowerPoint(パワーポイント)
-
8
Access 最後のレコードに到達するまでループ処理を行う方法
Access(アクセス)
-
9
親フォームからサブフォームのレコードソースを設定
Access(アクセス)
-
10
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
11
Access2000 サブフォームのRecordSet取得法
Access(アクセス)
-
12
アクセスのレポートでレコード数をカウントしたい
その他(データベース)
-
13
access テキストボックスの値取得
Access(アクセス)
-
14
Access コンボボックスの値をクリアしたい。
PowerPoint(パワーポイント)
-
15
Accessで、フォームからフォームへ値を引き継ぐやり方
Access(アクセス)
-
16
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
17
現在アクティブなタブのページ名を取得したい
Access(アクセス)
-
18
ACCESSでVBAから選択クエリの抽出条件を指定したい
Access(アクセス)
-
19
ACCESSのVBで、エクセルファイルの最終行を取得
Excel(エクセル)
-
20
テキストボックスにクエリ結果を表示させたい
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Microsoft 365 Basic サブスク...
-
Accessのクエリの結果を、既存...
-
access2021 強制終了してしまう
-
access2021 VBA メソッドまたは...
-
Access Error3061 パラメータが...
-
Access VBA [リモートサーバー...
-
アクセスの更新クエリでカレン...
-
ACCESS VBA でのエラー解決の根...
-
AccessVBAで任意の複数リンクテ...
-
Microsoft365にAccessってあり...
-
Accessのクエリで、replace関数...
-
Excelを開く時と閉じる時に一度...
-
列が255以上のCSVファイルをAcc...
-
Accessのフォーム上のテキスト...
-
エクセルのVBAについて教えてく...
-
Access で半角スペースと全角ス...
-
MS.Access でサブフォーム付の...
-
Accessのレポートについて
-
access2019の起動が遅い
-
access2021 メッセージボックス...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Microsoft 365 Basic サブスク...
-
Accessのクエリで、replace関数...
-
access2021 強制終了してしまう
-
ACCESS VBA でのエラー解決の根...
-
Access VBA [リモートサーバー...
-
Accessのスプレッドシートエク...
-
Accessのレポートについて
-
access2021 VBA メソッドまたは...
-
Access Error3061 パラメータが...
-
access2019 チェックボックスと...
-
Accessのクエリの結果を、既存...
-
accessでlaccdbファイルが削除...
-
Access VBA を利用して、フォル...
-
accessデータを指定したExcel、...
-
Accessのリンクテーブルのパス...
-
列が255以上のCSVファイルをAcc...
-
Accessのクエリの印刷設定
-
Accessでレポートを印刷する時...
-
Accessフォームの配色テーマを...
-
Accessデータベースに含まれる...
おすすめ情報