• 締切済み

アクセス オートナンバー について

アクセス超初心者です。 年月で更新される伝票番号をオートナンバーで作成したいのですが、可能でしょうか? 例: 2010年9月4日(2010年9月の1番目の伝票) → 100901 2010年9月18日(2010年9月の2番目の伝票)→ 100902 2010年10月5日 (2010年10月の1番目の伝票)→ 101001 フィールドには日付としてyy/mm/ddで日付型で入力しています。 そこからyymmだけを認識させて、末尾の番号を連番で自動更新させることは可能でしょうか? よろしくお願いします。

みんなの回答

  • sykt1217
  • ベストアンサー率34% (277/798)
回答No.1

オートナンバーということはユニークにしたいということだと思いますが、恐らく無理です。 データ型を数値型にして、 検索条件:年月 And Max(伝票番号) 取得値 :伝票番号 で対象年月の伝票番号最大値を取得し、それの値+1をするようなマクロを作るのが良いと思います。

関連するQ&A

  • Accessのオートナンバーに近い事をやりたい

    Accessのフィールドの型の中にオートナンバー型という、自動で連番になる型があります。 SQL Serverにはそういった型がないため、自分でナンバーを付与していくスクリプトを組まなくてはいけないと思います。 一番簡単な方法は、連番になっているフィールドを降順で並び替え、一番最初のレコードに1を足してあげれば連番になるのですが、Webで注文を受けるようなシステムの場合、タイミングによっては同じ番号を割り当てられてしまう可能性があります。 同じ番号がわりあてられずに連番で番号を付与していくには、どういうやり方があるのでしょうか?

  • Accessのオートナンバー取得

    皆さんよろしくお願いします。 Access97を使用して、例)営業の訪問日報を作成しようと思います。 親フォームには、連番(オートナンバー型)と活動日(規定値にDate()を設定)の 二個のフィールド。 子フォームは、親の連番とリンクした番号・訪問先名・訪問時間・ 活動内容とします。 フォームを開くときイベントで DoCmd.GoToRecord , , acNewRecを設定。 親フォームは、連番と活動日が自動で入るので更新する必要がないので 子フォームにフォーカスを移すが、親でイベントが発生しないため 連番が更新されません。 質問)親フォームでフィールドを更新せず、子フォームを入力してとき オートナンバーを取得する方法を教えてください。 上手に質問がかけませんでしたが、よろしくお願いします。

  • アクセス2007でオートナンバーを任意の番号から始めるには

    テーブルを開いて、作成のリボン中の「クエリデザイン」→オートナンバーを任意の番号から始めたいテーブルを選んで「追加」→オートナンバー型の当該フィールド(以下、受付番号という。)を選択→デザインのリボン中の「更新」→「レコードの更新」で「100+[受付番号]」と入力→実行 すると 「フィールド「受付番号」は更新できません。フィールドが更新可能ではありません。」とのエラーメッセージが出るのですが、どうしたらオートナンバー型のフィールドである受付番号を101から始められるのでしょうか?

  • 【Access】自動で番号を発行したい

    フォームを使って入力を行っているのですが、 オートナンバーのように自動で番号を発行したいフィールドがあります。 番号の例: 20050704-001 要するにその日の日付と連番です。 連番は日付が変わるごとに001から始まるようにしたいのです。 どうすればできますか?

  • 主キーはオートナンバー型のIDを使った方が良いのか

    主キーはオートナンバー型のIDを使った方が良いのか、 独自の主キーを作った方がいいのか? 今は テーブル1 ------------------- IDフィールド(オートナンバー型) 主キー 1 2 3 ------------------- 伝票番号フィールド A001 A001 A002 ------------------- 部署フィールド 営業部 システム部 営業部 ------------------- 金額フィールド 100 200 300 ------------------- という状態ですが、 新たに主キーフィールドを作り 更新クエリで UPDATE テーブル1 SET テーブル1.主キー = [テーブル1]![伝票番号] & [テーブル1]![部署] & [テーブル1]![金額]; をして、主キーを独自に作った方がいいのか。 アクセスを作るにおいて、どちらの方が良いのでしょうか? テーブルのレコードは削除したりする事もあるので、オートナンバー型だと空きができてしまいます。 レコードに空きができないデータベースなら、オートナンバー型、 空きができるデータベースなら、独自に作った主キーにしたほうがいいのでしょうか?

  • Access2000 連番の振り方

    次のようなテーブルに対して連番を振りたいのです。 伝票番号  日付   行番号   金額 00001   2007/01/01  1    1000 00001   2007/01/01  2    1000 00001   2007/01/01  3    1000 00002   2007/01/02  1    1000 00002   2007/01/02  2    1000 00002   2007/01/02  3    1000 以下はこのような状態で続く。 ここで知りたいのは、同日のデータに対しては伝票番号は同じ番号で 行番号のみ連番を振る。 日が変われば伝票番号は次の番号になり、行番号は新たに1から 振りなおすというものです。 クエリーでこのようなことは可能でしょうか。 やはりVBAで組まないと出来ないのでしょうか。 この方法を教えていただきたくお願いいたします。

  • Excelで、Accessで使用できる「Format」関数と同じことをしたい

    いつも大変お世話になっております。m(_ _)m Accessの「Format」関数を使用すると、例えば以下のようなことが可能です。 日付フィールドに日付が入っていて区分フィールドに年月だけを取り出す。 区分:Format([日付],"yy/mm") 日付:07/07/30 ⇒ 区分:07/07 これと同じことをExcelで行うことは可能ですか? Excelの日付が入っているセルから、年月だけを取り出す。 取り出した後のデータは、日付型でもかまいませんし、文字列でもかまいません。 可能かどうか、可能な場合はその方法を教えてください。 よろしくお願いします。

  • ACCESS2000でグループごとに連番を振りたい

    ACCESSで登録フォームを作成し、 そこで、下記のようなテーブルを作ろうとしてます。 伝票番号 明細番号 商品   1   1   りんご   1   2   みかん   2   1   すいか   2   2   かき   1   3   なし   3   1   くり 伝票番号ごとに連番を振って行きたいのですが、 オートナンバー型にしてしまうと、伝票番号に 関係なく、連番を振ってしまいます。 この場合の解決方法を教えていただけないでしょうか。

  • Accessで指示書番号の自動採番

    入力フォームで指示書番号が自動採番され、テーブルにも保存されるようにするための方法を教えていただけないでしょうか。 テーブル:T_指示書 フィールド:指示書番号 フィールドはテキスト型で、番号の構成は8桁の番号で "年(二桁)" + "月(二桁)" +"部署番号(一桁、固定の数字)"+ "連番(三桁)" (例:09091001) という感じで、 年月が変われば、連番が001になるようにしたいです。 どなたか、ご教授いただければありがたいです。 よろしくおねがいします。 Access2002 winXP

  • MS Office ACCESSについて

    テーブルのデータの形式が日付/時刻型のときに 、書式の欄に、『年/月/日 時:分』というふうに 入力書式を変えたいんですけど、 その場合、フィールドプロパティの書式の欄に、 何と入力すればいいんですか? 年・月・日は(yy/mm/dd)というふうに知っていますが、 時刻が判りません。どなたかご存知の方、教えてください。お願いします。

専門家に質問してみよう