2

私はファイルを探す簡単なvbaスクリプトを実行しています。存在する場合は削除します。次に、DoCmd.OutputToacOutputReportに移動します。以下は、私が使用している実際のコードの例です。私が遭遇している問題は、自動オープンをtrueに設定したときです。レポートをエクスポートした後にファイルを開きたい。しかし、何らかの理由でプログラムが停止し、少なくとも5〜10分間そこに座っていると、リモート手順を完了できないというエラーが表示されます。エラーの後、ファイルはとにかく明らかなエラーなしで開きます...私が自動オープンをfalseに変更すると。手動で開くことで、約3〜5秒後にレポートを開くことができます。このレイテンシーの問題を引き起こしている、私が知らない、または見つけることができない何かがありますか?

コード例-コードが目の前にないため、構文が間違っている可能性があります。しかし、それでも私がしていることを伝える必要があります。

Dim strFile As String
Dim strCon As String
Dim strSQL As String
Dim cnn As Access.Application

strFile = "C:Myfile.rtf"
If Len(Dir(strFile)) Then
Kill strFile
End If

'access connection stuff here

with cnn
     'dont display messages code
     'active connection to my database code
      DoCmd.OutputTo acOutputReport, strFile, acFormatRTF, OutputFile, True
      .Quit
End With

繰り返しになりますが、私が抱えている問題は、アクセスによってファイルにレポートが入力された後、ファイルを自動的に開くことができないように見えることです。私は単にパフォーマンスを向上させるか、何か知っている場合は回避策を見つけようとしています。

4

1 に答える 1

3

Access 2007からエクスポートするアプリケーションで、エクスポート操作をエクスポート仕様として保存し、以下を使用しました。

CurrentProject.ImportExportSpecifications(NameOfSpecification).Execute False

その後、使用しました

Set AppWord = CreateObject(Class:="Word.Application") ' create an instance of Word

Set Doc = AppWord.Documents.Open(NameOfDocument)

AppWord.Visible = True                      ' instance is invisible by default

DoCmd私はそれを行うVBAの方法があるかどうかを避ける傾向があります:VBAは私により多くの制御を与えます。

于 2013-03-22T16:31:10.460 に答える