• 締切済み

Access2002 フォームに行番号を自動的に入力するには

以下のフォームがあります。    製品 001 ABC  -------------------------------------  行番号  原料(使用成分) 容量 ・・・   10    ABC       5kg   20    EFG       3kg   ・ 製品に含まれる原料を管理(入力、編集)するフォームです。このフォームで「行番号」を10、20、30と自動的に入力させたいのですが・・・。 オートNoではテーブル内で連番になってしまいますが、製品が異なれば再度10、20、30・・・と入力させます。 以上、よろしくお願いします。

  • pon_s
  • お礼率88% (101/114)

みんなの回答

  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.2

こんにちは。 >製品が異なれば再度10、20、30・・・と入力させます。 表形式のフォームなどで、“該当レコード数が簡単に確認ができるようにするための表示”ということでしょうか?EXCELの行番号のようなイメージですか? もしそうであれば、サブフォームのフォームフッターあたりに非連結テキストボックスをつくって、コントロールソースを =Count(コントロール名)とした方が楽です。ご検討下さい。 ご希望のことを実現するためには、様々な方法が考えられますが、その中で比較的簡単な方法を紹介します。 考え方は、一時的に連番を記録するフィールドを用意し、SQLでレコードセットを開いたときに、該当レコードに対し、連番を振って更新をかけるというものです。 参考URLをご覧下さい。 「参考ファイル」-「Access Contents」のNo.41とNo.71あたりが参考になりますよ。

参考URL:
http://www.accessclub.jp/index.html
pon_s
質問者

お礼

回答ありがとうございます。 MSのサイトに希望する内容のものがあり、解決することができました。

  • Raistlin
  • ベストアンサー率63% (65/102)
回答No.1

VBAで処理するしか無さそうですね。 情報が少ないので大まかな流れだけ・・・。 0.(必要に応じ)「行番号」のフィールドをユーザーが編集できないようにする 1.レコード移動時イベントで、新規レコードかどうかを判定 2.新規レコードなら、最終レコードの「行番号」を調べ、+10した値を「行番号」にセットする。 のようにすれば良いかと。 但し、異なる製品のデータ(原料情報)が同じテーブルに保存される場合はもっと複雑な判定が必要ですね。 追加の質問がある場合は、情報を入力(表示される)コントロールの種類および名前を書いてくださいね。

pon_s
質問者

お礼

回答ありがとうございます。 MSのサイトに希望する内容のものがあり、解決することができました。 ご指摘のようにVBAで可能でした。

関連するQ&A

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

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

  • MS Access 入力フォーム:自動採番

    Access2013での自動採番に関して2パターン教えて下さい。 質問(1):"顧客番号"の自動採番 【テーブル名】 顧客情報 【フィールド】 "顧客番号"、"顧客名"、"顧客名かな"、"顧客住所"、"電話番号"、"担当者"、"メール"・・・ <"顧客番号"の採番方法> 顧客名の頭文字を五十音順の「あかさたな」で行ごとに連番をつけて管理している。 例)) 「ABC商事」→エービーシーしょうじ→「あ‐01」 「東京印刷」→とうきょういんさつ→「た-01」 《やりたい事!》 入力フォームに新規で、「東西工業」を入力する際に "顧客名かな"を入力したら、"顧客番号"が自動的に採番されるようにしたい。 顧客名:東西工業 顧客名かな:とうざいこうぎょう 顧客番号:た-02 ←ココを自動採番にしたい ------------------------------------------------ 質問(2)"取引番号"の自動採番 【テーブル名】 取引情報 【フィールド】 "顧客番号"、"取引番号"、"顧客名"、"顧客名かな"、"住所"、"電話番号"、"担当者"、"メール"・・・ <"取引番号"の採番方法> 取引が発生した順で、"顧客番号"ごとに枝番をつけて管理している。 例)) 「ABC商事」→1/10の取引→"顧客番号":あ‐01、"取引番号":01 「ABC商事」→1/31の取引→"顧客番号":あ‐01、"取引番号":02 《やりたい事!》 入力フォームに新規で、「ABC商事」の2/15の取引情報を入力する際に "顧客番号"を入力したら、"取引番号"が自動的に採番されるようにしたい。 顧客名:ABC商事 顧客番号:あ‐01 取引日:2016/02/15 取引番号:03 ←ココを自動採番にしたい 説明がうまくできず、分かりにくいかとは思いますが 何とかお知恵をお借り出来れば助かります。 よろしくお願い致しますm(__)m

  • Accessフォームに行番号を自動的に付与するには

    帳票フォームにデータを入力際、先頭行の行番号項目に必ず1、以下 2、3・・と自動的に番号をふりたいのですがどうすれば良いでしょうか? よろしくお願いします。 (Access2000を使用しています)

  • Access2000 フォームでのデータ入力について

    質問させていただきます。 Access2000で、あるフォームを作りました(帳票フォーム)。フォームの基になるレコードソースはクエリーです。このクエリーは原料伝票テーブルから在庫数が特定の数量を下回った原料を抽出しています。 フォームは以下イメージです。 原料コード 原料名  在庫数  発注数 原料コード~在庫数をクエリーから、発注数を手入力 にしました(発注数のコントロールソースは非連結です)。 で・・・発注数に値を入力すると全部の行が同じ値になってしまします。これを改善したいのですが・・・。 このやり方は根本的に間違っているのでしょうか?

  • ACCESSでの行番号の自動採番

    いつもお世話になっています。 MSACCESSで、以下のようなしくみを作ろうとしています。 (例) 親テーブル 伝票番号(オートナンバー) 担当番号、販売先番号・・・・ 子テーブル 伝票番号(オートナンバー) 行番号、商品番号・・・・ (やりたい事) 項目"伝票番号"はリンクさせて同じ値とする。 項目"行番号"は親レコードの値が増えるたびに1から増加させていくようにしたい。 伝票番号 1 行番号 1 伝票番号 2 行番号 1 伝票番号 2 行番号 2 伝票番号 2 行番号 3 伝票番号 3 行番号 1 のように。 なにぶん初心者なものでマニュアル等調べて見ましたがうまくいきません。よろしくお願いします。

  • アクセスフォームで別テーブルの呼びだし。。。

    よろしくお願いします。 アクセスで区分と連番というテーブルがあります。 フォーム連番を使い入力していますがフォームから手入力するのが大変なので区分というテーブルをつくり、入力するときに区分テーブルから参照できるようにしたいのです、リレーションショップはしてみましたが考えているような参照はできませんでした。 フォーム連番は下記4項目入力しています。 管理区分: 連番: 機器番号: 機器名称: テーブル区分は下記の2項目です 管理区分: 機器名称: このときフォームの機器名称のところで区分の機器名称を参照してほしいのですが。 教えてください、お願いします。

  • アクセスのフォームで自動連番を既定値で入力したいのです

    アクセスのフォームでデータを入力する際に、 タブストップさせずに自動採番で入力Noを入力 したいのです。元のテーブルのデータ型をカウント 型にする方法はあるのですが、そうすると入力途中で 取消し(コマンドボタン)するとカウントだけは進んで しまいます。基本的に1,2,3,4と順に番号をふってくれれば いいのですが、取消した時には入力Noも戻って欲しいのです。 これが上手くゆきません。どうしたらいいのでしょうか?

  • Access2000のフォームで番号を入力するとその他の情報が表示されるようにするには?

    入力フォームで番号を入力すると、名前などが同じフォームに表示される。 というのを作っているのですが。 テーブル1:ID・番号 テーブル2:番号・名前など(エクセルとリンク) クエリーで番号を1→2と繋ぎ、番号はテーブル2を使用。 (1)テーブル1が空欄だと何も表示されない。 (2)テーブル1に入力すると表示されるが、フォームで番号の入力はできない。 (3)新しいレコードも作製できない。 数年前に似たようなものを作った筈なのですが、そもそも出来ないのでしょうか。 宜しくお願いします。

  • Access2000 単票フォーム上のボタンを押すと、同じIDを持つフォームが開くよういしたい

    Accessの初心者です。 本当に超がつく初心者ですので、解説もしてくださるととても嬉しいです。 宜しくお願いします。 請求書番号連番を取得するフォーム(テーブルも)があります。 請求書番号は特殊な為、現時点ではじか打ちで作成しています。 それとは別に、顧客ごとに請求データを入力するフォーム(テーブルも)があります。 その二つは、請求書番号でひもづけています。 <請求書番号連番取得フォーム/帳票> ・請求書番号 ・請求日 ・顧客ID <請求データの入力フォーム_A社/単票> ※これがB社、C社と複数存在します。 ・顧客ID ・請求書番号 ・商品CD <請求書番号連番取得フォーム/帳票>上にボタンをつくり、そのボタンを押すと、 同じ顧客IDを持つ<請求データの入力フォーム/単票>が開けたらな・・・と思っているのですが、 わかりますでしょうか・・・・。 どうか、宜しくお願い致します。 <請求書番号連番取得フォーム/帳票> _________________________________________________________________ 請求書番号|請求日 |顧客ID|  _________________________________________________________________ 09BB87ZZ1|2009/04/01|0001 |■(ボタン) -------------------------------------------- 09BS87AA2|2009/04/10|0003 |■(ボタン) -------------------------------------------- ↑この1行目の■(ボタン)を押すと、顧客ID「0001」の請求書番号「09BB87ZZ1」の単票フォームが開き、 (請求書番号欄に「09BB87ZZ1」が入っている。) 2行目の■(ボタン)を押すと、顧客ID「0003」のフォームを開く・・・というような動きです。 説明が下手で申しわけありません。 お願いします。

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

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

専門家に質問してみよう