2016-08-23 2 views

答えて

3

使用OpenArgs

最初の形式:

DoCmd.OpenForm "SecondForm", OpenArgs:=Me.Name 

第二の形態:

Private Sub Form_Load() 

    If Me.OpenArgs = "FirstForm" Then 
     ' Stuff 
    End If 

End Sub 
2

第二形態のモジュールレベルの変数を宣言:のオンロードイベントで

Dim Prev As Form 

を2番目の形式(これは最初の形式への参照を設定します):

Set Prev = Screen.ActiveForm 

とオンクローズイベントで:

Set Prev = nothing 

は今、あなたが前のフォームの名前を確認することができます。

If Prev.Name = "..." Then 
    ... your actions 
End If 

さらに、あなたはから任意のプロパティまたはフィールドを確認することができますこの方法で最初/前のフォーム。前は今私のように行動しています。

0

新しいフォームは、アプリケーションのいくつかのフォームから開くことができます。

複数の呼び出しフォームを同時に開くことはできますか?

ない場合は、これを使用:呼び出し元のフォームの2つ以上が同時に開くことができる場合

Private Sub Form_Load() 
    If isLoaded("Form1") then 
     Form1_InstructionSet 
    ElseIf isLoaded("Form2") then 
     Form2_InstructionSet 
    ... 
    End If 
End Sub 

Private Sub Form1_InstructionSet 
    ... 
End Sub 

etc. 

は、あなたが上記のアンドレの答え@あたりとして、新しいフォームをparameterise必要があります。

関連する問題