-1

MS Access 2007 で、最初のフィールドに追加されたエントリに基づいてフォームを自動入力する最も簡単な方法は何ですか?

現在、4 つのテーブルがあります... 顧客、部品、注文ヘッダー、および注文明細です。オーダー ラインのサブフォームを含むオーダー ヘッダー テーブルのフォームを作成しました。

理想的には、注文ヘッダーフォームに顧客番号を追加すると、フォームの残りの部分に顧客名や詳細などが自動入力されることです....

そして同じ原則...注文明細フォームに製品番号を追加すると、注文IDと部品の説明と販売価格が自動入力され、部品テーブルと注文ヘッダーテーブルから情報が取得されます.....

大部分の人にとって、これはパンとバターであ​​ることはわかっていますが、できるだけ簡単な形式で説明してください.

4

1 に答える 1

2

これは私が使用するフォームの例です。同じ .mdb ファイル内のテーブルから Dlookup を使用します。部品番号を入力すると、タブを押すと他のすべてが入力されます。

Private Sub Item_Number_AfterUpdate()
    PopulateFields
End Sub

Private Sub PopulateFields()
''''PopulateFields takes the Item Number to fill in all the remaining fields with regards to that Item
    Me.Full_Desc = RTrim(DLookup("ITEMDESC", "GP_Parts_List_Import", "ITEMNMBR = '" & Me.Item_Number & "'"))
    Me.Item_Type = RTrim(DLookup("ITEMTYPE", "GP_Parts_List_Import", "ITEMNMBR = '" & Me.Item_Number & "'"))
    Me.General_Desc = RTrim(DLookup("ITMGEDSC", "GP_Parts_List_Import", "ITEMNMBR = '" & Me.Item_Number & "'"))
    Me.Current_Cost = RTrim(DLookup("CURRCOST", "GP_Parts_List_Import", "ITEMNMBR = '" & Me.Item_Number & "'"))
    Me.Item_Class_Code = RTrim(DLookup("ITMCLSCD", "GP_Parts_List_Import", "ITEMNMBR = '" & Me.Item_Number & "'"))
End Sub

アップデート

アプリケーションの VBA 部分にアクセスするには、F11 キーを押すか、コードをトリガーするコントロールを右クリックします。右クリック後、[ビルド イベント] を選択し、[コード ビルダ] を選択して VBA エディタ ウィンドウを開きます。 VBA エディター

左側のドロップダウンには、そのフォームで選択できるすべてのコントロールが表示され、右側のドロップダウンには、コントロールが使用できるすべてのイベントが表示されます。したがって、テキストボックスItem_Numberがいっぱいになり、ユーザーが移動すると、AfterUpdateトリガーされて function が実行されますPopulateFields

当然、テキスト ボックスとテーブル名を置き換える必要がありますが、これはその方法の 1 つにすぎません。しかし、これが役立つことを願っています。

于 2013-08-13T16:37:19.643 に答える