1

私のプロジェクトにはタブ付きのフォームがあり、各タブには、メイン フォームで選択された現在のレコード (メイン フォームのレコードをクライアントと呼びます) に基づいて、異なるテーブルのデータが表示されます。そのクライアントに関連付けられた子テーブルにデータが存在する場合は、データを表示します。存在しない場合は、フォーム ヘッダーにレコードがないことを示すテキスト フィールドがあり、その子テーブルにデータを追加するためのフォームを開くリンクがあります。フォーム ヘッダーには、連続フォームの列ヘッダーも含まれています。

ここで、子フォームで [追加を許可] をオフにした場合、そのクライアントの子テーブルが空の場合、データが表示されず、form_current または form_load メソッドが実行されていないように見えます。これは、非表示にするコードがあった場所です。列ヘッダーと「レコードなし」ステータス/ヘッダーテキストボックスの非表示を解除し、子フォームにデータがある場合はその逆です。追加を許可をオンにすると、コードが実行されて列が非表示になり、ステータス テキスト ボックスが表示されますが、テーブルに利用可能なデータがある場合、結果の最後に「新しい行」が表示されます。そこに新しい行は必要ありません。

そのため、Allow Additions をオンにしてコードを機能させ、余分な新しい行を表示するか、Allow Additions をオフにしてコードを壊すことができますが、余分な新しい行はありません。

私はこれをやろうとしました:

If Me.NewRecord Then
    Me.field1.Visible = False
End If

しかし、これは望ましくない結果をもたらします。新しい行を選択するまで非表示にせず、すべてのフィールドを非表示にします。私はそれがどのように機能するかを知っていますが、それは私が望む結果ではありません.

4

0 に答える 0