| 
    
     |  | 初めまして。 Excelに投稿すべきかAccessに投稿すべきか迷ったのですが、こちらに書かせていただきました。よろしくお願いいたします。
 
 
 Accessのプロシージャに、
 
 Dim xl As Object
 Set xl = CreateObject("Excel.sheet")
 
 ・・・処理を記述・・・
 
 xl.SaveAs "C:\Documents and Settings\" & d & "\デスクトップ\(ファイル名).xls"
 
 Set xl = Nothing
 
 のように記述をして、DAOでAccessのテーブルの内容から必要なものをExcelに描き出してデスクトップ上にファイルを作成するという処理を作っています。
 
 このプロシージャの最後にCallで別プロシージャを呼び出し、
 そこには以下のような記載をしています。
 
 Dim tExcel As Object
 Dim tObj As Object
 Set tExcel = CreateObject("Excel.Application")
 Set tObj = tExcel.Application.Workbooks.Open("C:\Documents and           Settings\" & d & "\デスクトップ\(ファイル名).xls")
 tExcel.Visible = False
 
 ・・・処理を記述・・・   ☆ 問題の部分
 
 tObj.Close SaveChanges:=True
 Set tObj = Nothing
 tExcel = Nothing
 
 
 このプロシージャでは最初に書いたプロシージャで作成したデスクトップ上の
 Excelファイルに接続し、書式の変更などをします。
 イメージとしては、1つめのプロシージャでExcelファイルを作って保存し、
 2つめのプロシージャでそのファイルを再度開いて各種書式変更・・・
 というような感じです。
 2つめの処理は別のものでも使う可能性があったのでPublicプロシージャと
 しています。
 
 
 さて、Accessのコマンドボタンを押すとこれらのプロシージャが正常に作動して
 デスクトップ上にExcelファイルが作成され、2つめのプロシージャの書式設定が
 うまく適用されて保存されます。
 
 
 ところが・・・正常にできたExcelファイルを削除したり名前を変更した後で
 もう一度このコマンドボタンをクリックすると、
 1つめのプロシージャは正常に動きますが、2つめで必ず実行時エラー91が
 発生します。
 具体的に発生する場所は、☆の部分に記載した以下のプロシージャの2行目です。
 
 
 tObj.Worksheets(1).Range("A1").Select
 Selection.Font.Bold = True
 With Selection.Interior
 .Pattern = xlSolid
 End With
 以下続く・・・
 
 
 1回目が正常に動いているだけに、余計に意味がわからず困っています。
 このエラー番号の書き込みは様々なサイトで見たのですが、それでもわからず・・・。
 
 
 必要な情報がすべて記載できていないかもしれませんので、ご指摘いただければ
 追記させていただきます。
 こちらで質問してよかったのかわかりませんが、ぜひ教えていただければと思います。
 よろしくお願いいたします。
 
 |  |