2016-09-02 5 views
2

アクセスフォームのサブフォームにTabControlsを使用しようとしています。SetFocusの後にSubFormのAccess TextBoxを自動的に編集する必要があります。

私は、TabControlのページに埋め込まれたサブフォームを持っています。私はメインフォームの最後のデータ入力フィールドからサブフォームの最初のデータ入力フィールドに移動することにしました。

サブフォームのコントロールにSetFocusを設定すると、TextBoxをクリックせずに編集することはできません。すぐに編集を有効にするコマンドはありますか?

Private Sub ReadDate_AfterUpdate() 
    Dim myControl As Control 
    Set myControl = Forms!Data_Input!BOD_Data_Subform!textBoxToEdit 

    myControl.SetFocus 
End Sub 

ご協力いただきありがとうございます。メインフォームからサブフォーム上のコントロールを選択する必要が

+1

あなたは何を求めているのですか?テキストボックスをクリックして編集を開始できる場合、テキストボックスの編集を開始するにはどうすればよいでしょうか?プログラムでテキストボックスの内容を変更することについて話していますか?それはうまくいかないのですか? – dbmitch

+0

@dbmitch - いずれかのタブに当たったり、データの変更をコミットするために入力すると、カーソルがTextBoxで点滅します。私はちょうどあなたがタブを2回(または一度戻ってタブを1回)押すと、カーソルがTextBox内で点滅することに気づいた。 – PhillipOReilly

+0

*テキストボックス内で点滅*?それはあなたが「編集を可能にする」と言っているのでしょうか? – dbmitch

答えて

1

2つのステップ
ために、次の操作を行います

  • は、サブフォームコントロールを選択します。
  • サブフォームで適切なコントロールを選択します。

例コード

Private Sub ReadDate_AfterUpdate() 
    Dim myControl As Control 

    ' Select the subform control first 
    Forms!Data_Input!BOD_Data_Subform.SetFocus 
    Doevents 

    ' Select the control on the subform. 
    Forms!Data_Input!BOD_Data_Subform.Form!textBoxToEdit.SetFocus 
End Sub 

*編集*

私はTabControlsがメインフォームに存在しなかった場合の答えが働くだろうと思います。これは、2つのプロセスであるが、この場合には最初のステップは次のとおりです。subDataTabControlは、タブコントロールの名前と0所与のページのインデックスである

Forms!Data_Input!subDataTabControl.Pages(0).SetFocus 

+1

ありがとう@dbmitch。あなたは正しい軌道に乗っています! – PhillipOReilly

関連する問題