Microsoft Access Club Access超初心者対象Forum Access初級者対象Forum Access初・中級者対象Forum Access VBA Tips Forum DAO、ADO、SQL Forum

     

リストへもどる

投稿記事の一括表示

タイトル同じ四半期の中の番号から最大値を+1して取得
記事No171942
投稿日: 2017/07/20(Thu) 09:31
投稿者カニ玉
解決済: ON
OS:Windows7
Access Version: 2013

いつもお世話になります。

[年][月](四半期のみ)と二つのリストボックスから対象年月を指定し、コマンドボタンを押した際に同じ年月の[番号]の最大値に+1した状態で[テキスト1]に表示させる方法はありますでしょうか?

理由は、新しいデータを入力する際に自動で連番を行いたい為です。
宜しくお願いします。

タイトルRe: 同じ四半期の中の番号から最大値を+1して取得
記事No171946
投稿日: 2017/07/20(Thu) 14:17
投稿者ナバ
解決済: ON
こんにちは。

> 同じ年月の[番号]

これはテーブルですかね。

テーブル名、主キーなど提示して下さい。

タイトルRe^2: 同じ四半期の中の番号から最大値を+1して取得
記事No171947
投稿日: 2017/07/20(Thu) 14:39
投稿者カニ玉
解決済: ON
ナバさん 返信いただきありがとうございます。

> > 同じ年月の[番号]
> これはテーブルですかね。
> テーブル名、主キーなど提示して下さい。

テーブル名:T売上
フィールド:[管理番号(主キー、オートナンバー型)]、[商品ID]、[個数]、[年]、[月]、[番号]
となってます。

◇T売上
管理番号/商品ID/個数/年/月/番号
1/A/10/平成29年/03月/1
2/B/15/平成29年/03月/2
3/C/20/平成29年/03月/3
4/A/20/平成29年/06月/1
5/A/25/平成29年/09月/1
6/B/15/平成29年/09月/2

上記のように
[管理番号]とは別にある[年]の[月](3.6.9.12月のみ)での売上を順番に数字を振った[番号]を欲してます。
よろしくお願いします。

売上を入力する別フォームがあるのですが、開いた際に現在の四半期の[年][月]が自動セットされてます。
その条件に一致する[番号]の中で最大を抽出し、1を加えて[番号]欄に自動で入力したいと考えております。
よろしくお願いします。

タイトルRe: 同じ四半期の中の番号から最大値を+1して取得
記事No171949
投稿日: 2017/07/20(Thu) 15:11
投稿者tkwan
解決済: ON
最大値を求めたいのなら、DMax関数というものがあります。

https://support.office.com/ja-jp/article/DMin%E3%80%81DMax-%E9%96%A2%E6%95%B0-f5c6de87-8752-4f29-ab4b-c554053d299f

タイトルRe^2: 同じ四半期の中の番号から最大値を+1して取得
記事No171950
投稿日: 2017/07/20(Thu) 15:39
投稿者カニ玉
解決済: ON
tkwanさん 返信ありがとうございます

> 最大値を求めたいのなら、DMax関数というものがあります。
> https://support.office.com/ja-jp/article/DMin%E3%80%81DMax-%E9%96%A2%E6%95%B0-f5c6de87-8752-4f29-ab4b-c554053d299f

上記を参考に該当フォーム[番号]テキストのコントロールソースに下記のように入れてみましたが「#エラー」となってしまいました。
どこが間違っていたのでしょうか?

=DMax("番号","T売上","年=" & [年] AND "月=" & [月]) +1

分からない事ばかりでお手数おかけしますが宜しくお願いします。

タイトルRe^3: 同じ四半期の中の番号から最大値を+1して取得
記事No171951
投稿日: 2017/07/21(Fri) 13:23
投稿者tkwan
解決済: ON
> 上記を参考に該当フォーム[番号]テキストのコントロールソースに下記のように入れてみましたが
コントロールソースは、テーブルの[番号]フィールドではないのですか?

> =DMax("番号","T売上","年=" & [年] AND "月=" & [月]) +1
フォームの様子がよく分からないので、とりあえず式だけ。

 Nz(DMax("番号", "T売上", "年=" & [年} & " AND 月 = " & [月]), 0) + 1

※リンク先にも書いてありますが、DMax関数は条件に合うものが見つからない場合はNullを返します。

タイトルRe^4: 同じ四半期の中の番号から最大値を+1して取得
記事No171953
投稿日: 2017/07/21(Fri) 15:37
投稿者カニ玉
解決済: ON
> > 上記を参考に該当フォーム[番号]テキストのコントロールソースに下記のように入れてみましたが
> コントロールソースは、テーブルの[番号]フィールドではないのですか?
> > > =DMax("番号","T売上","年=" & [年] AND "月=" & [月]) +1
> フォームの様子がよく分からないので、とりあえず式だけ。
> > Nz(DMax("番号", "T売上", "年=" & [年} & " AND 月 = " & [月]), 0) + 1
> > ※リンク先にも書いてありますが、DMax関数は条件に合うものが見つからない場合はNullを返します。

返信ありがとうございます。
上記の通りに試してみましたが「#Name」と出てしまいました。
上手く行きませんが一旦closeにさせていただきます。

ナバさん、tkwanさん
貴重なお時間をありがとうございました。
また機会がありましたらよろしくお願いします。

- 以下のフォームから自分の投稿記事を修正・削除することができます -
処理 記事No パスワード

ページの先頭へ 前ページへ戻る