• ベストアンサー

Accessで前に入力したフィールドのコピー/入力の簡略化で

具体的には商品名の入力で 同じような名前で最後の方が少しだけ違う品名が 続きます。 オートナンバーでキーは自動でつけて行きます こんな時、前に入力した品名が、 新しく入力しようとするレコードの品名のところが ブランクでなく、前レコードで入力した値が コピーされていれば、違うところに(品名)の入力 だけですむのですが こうしたロジックを組み込むのはどうすればいいでしょう フォーム入力で考えています

質問者が選んだベストアンサー

  • ベストアンサー
  • DexMachina
  • ベストアンサー率73% (1287/1744)
回答No.3

> こうしたロジックを組み込むのはどうすればいいでしょう 「更新後処理(AfterUpdate)」イベントで、「商品名」の既定値(DefaultValue)を 更新してやればよいのではないかと思います。 具体的には、 1)入力フォームをデザインビューで開く 2)画面の適当な部分をダブルクリックしてプロパティシートを開く 3)「商品名」コントロールをクリックし、プロパティシートに「商品名」のプロパティを  表示させる 4)「イベント」タブをクリックしたら、「更新後処理」にカーソルを移動させる 5)右端に表示される「...」(ビルダ)をクリックし、「コードビルダ」を選択する 6)以下のコードを入力する Private Sub 商品名_AfterUpdate() 商品名.DefaultValue = "'" & 商品名.Value & "'" End Sub 7)フォームを保存して終了 といった感じです。 (もし、データ型が「数値型」のフィールドで同様のことを行う場合は、  「商品名.Value」の前後の「&」と「"'"」は無用です) これで、「商品名」を更新すると、新規レコードに同じ値が表示されるようになります。 なお、他のフィールドに入力するか、「商品名」の名前を編集しない限りは、 そのレコードは新規レコードのままです。 (→つまり、同じ商品名がその場で二重登録されるわけではないということ)

ppmi
質問者

お礼

ありがとうございました ご指導の通りやりましたら、出来ました 大変貴重な指導でした。

その他の回答 (2)

  • bonaron
  • ベストアンサー率64% (482/745)
回答No.2

ヘルプより Ctrl + ' (一重引用符)  前のレコードの同じフィールドの値を挿入する。 これでダメならマクロかVBAになります。

ppmi
質問者

お礼

ありがとうございました こんな方法もあるのかと参考になります

noname#254177
noname#254177
回答No.1

入力フォームのプロパティで、規定のビューを単票フォームを帳票フォームに変えれば、続けてレコードが表示されるようになります、そこで前レコードが見えますのでそれをコピペで、こんなんじゃだめですか?簡単ですけど

ppmi
質問者

お礼

ありがとうございました 返事遅れました