VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2005/08/04(Thu) 00:34
投稿者C_Jr
URL
タイトルオートメーションエラーが発生する

[OS]:Windows98SE(開発・利用)
[VB]:VisualBasic 5.0
[DB]:Access97

お久し振りです。またご質問宜しくお願いしますm(_ _)m

当方、VisualBasic5.0(以下VB5)を使い
Access97で作ったレポートをプリンタに出力させるアプリを作ったのですが
不定期に "オートメーションエラー" というものが発生してしまいます。
(VBのError$関数でエラー内容はわかりました)

このエラー、再現性が全くなくて、たまに出るものなのですが
どなたかエラーが出る理由はわからないでしょうか?

ソースは以下の通り
'=======================================================================
Public Function Ctr_PRINT() as Boolean
    Dim S_accObject              As Object  '//アクセス
    Dim S_accReport             As Object  '//レポート
    Dim S_MDB_CLOSE_SW          As Boolean '//開いているレポートの有無

    '//Accessを開く。
    Set S_accObject = CreateObject("Access.Application")
    S_accObject.OpenCurrentDatabase "C:\REPORT.MDB"

    '//レポートをプリンターに出力する。
    S_accObject.DoCmd.OpenReport "R_TEST", acNormal

    '//Accessが閉じられるまで待つ。
    Do Until S_accObject Is Nothing
        DoEvents
        
        '//開いているレポートが存在するかを調べる。
        S_MDB_CLOSE_SW = True
        For Each S_accReport In S_accObject.Reports
            S_MDB_CLOSE_SW = False
        Next S_accReport
        '//開いているレポートが存在しなかったら、Accessを閉じる。
        If S_MDB_CLOSE_SW = True Then
            S_accObject.Quit
            Set S_accObject = Nothing
        End If
    Loop
End Function


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -