0

リスト ボックスがあり、その行ソースは以下のフィールドを持つ「tblitems」です。このリストボックスを右クリックして「新しいタスク」などのオプションを選択すると、新しいタスクフォームが開き、リストボックスからアイテム番号を自動的に取得して、関連するテキストボックス「アイテム番号」を「新しいタスク」フォームに入力しますテーブル「tbltask」にバインドされている

「適用」ボタンを押すと、「tbltask」に新しいレコードが挿入されます。 ここに画像の説明を入力

  tblItems
  item number (pk)
 item name (text)

 tbltask
  task number (auto number,pk)
  item number
  enter image description here

ここに画像の説明を入力

4

1 に答える 1

0

フォームのリスト ボックスから値を取得するには、次のようにします。

Me.List_Box_Name.Value

または、バインドされていない値がある場合は、列に基づいて取得します。

Me.List_Box_Name.Column(2)

または必要な列。

その後、またはレコードセットを使用してフィールドに入力できDLookupます。次に、新しいフォームを開いたときにこれが発生するようにしたい場合は、次のことを調べてください。

Private Sub Form_Load()
    'Stuff you want to happen when that form loads
End Sub

更新しました

以下は、クリックするたびに値を出力します。このメソッドを使用して、新しいフォームを開くようにトリガーするか、後でユーザーに送信ボタンをクリックさせることができます。

Private Sub Test_List_Click()
    Debug.Print Me.Test_List.Value
    DoCmd.OpenForm "Form_Name"
End Sub

開いたフォームに変数を追加する最良の方法が正確にはわかりません。知識が限られている私であれば、グローバル文字列またはパブリック文字列を追加し、Form_Load()その文字列の長さが 0 より大きいかどうかを確認します。そうであれば、フィールドにデータが入力されます。

それが役立つことを願っています

更新 2

実際、このリンクは、前のフォームからフィールドにデータを入力するのに役立ちます:

MS Access - 前のフォームからフィールド値を取得してフォームを開く

于 2013-07-26T15:58:22.230 に答える