- ベストアンサー
PickFolderアウトルックとアクセス連携
- VBAでOutlookのフォルダ名を取得し、Accessのテキストボックスに表示する方法を教えてください。
- テキストボックスの更新後処理のイベントが発動せず、フォルダ名を取得できているのにフォルダ名が表示されません。どうすれば正常に表示できるようになりますか?
- PickFolderでフォルダ名を選択して値をテキストボックスに入れた後、イベントを発動させる方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
TextBox.AfterUpdate イベント のヘルプより ---------------------------------- "SetValue/値の代入" アクションが記述されたマクロまたは Visual Basic で、コントロールに含まれるデータを変更した場合は、このイベントは発生しません。別のレコードに移動したり、レコードを保存したときに、フォーム に対して AfterUpdate イベントが発生します。 ということですから、AfterUpdate イベント は発生しません。 自前で呼んであげましょう。 Private Sub コマンド2_Click() Dim myNaSp As NameSpace Set myNaSp = GetNamespace("MAPI") Me.テキスト0.Value = myNaSp.PickFolder Set myNaSp = Nothing Call テキスト0_AfterUpdate() '←この行を追加 End Sub
その他の回答 (1)
- 30246kiku
- ベストアンサー率73% (370/504)
別な方法になりますが、 Me.テキスト0.Value = myNaSp.PickFolder ↓ Me.テキスト0.SetFocus Me.テキスト0.Text = myNaSp.PickFolder とすると Change / BeforeUpdate / AfterUpdate が発生すると思いますが、 どうなりますか。 なお、 > Private Sub コマンド2_Click() > Me.テキスト0.Value = "aaa" > End Sub > > にしてコマンドボタンをクリックすると、 > Private Sub テキスト0_Change() > MsgBox Me.テキスト0.Value > End Sub > は、発動します。 をもう一度確認願えませんか。発動しなかったような気がします。
お礼
Me.テキスト0.SetFocus すれば、 Call テキスト0_AfterUpdate() がなくてもできました。 Private Sub コマンド2_Click() Me.テキスト0.Value = "aaa" End Sub は、発動しませんでした。 何か勘違いしてました。
お礼
イベントをCallで呼び出すこともできるのですか。 知りませんでした。 おかげさまでうまく出来ました。ご回答ありがとうございました。