| 
    
     |  | 掲題について質問させて下さい。 
 fooフォルダ配下に、bar.xlsとbaz.datが置かれているとします。
 bar.xlsのシートに、baz.dat(これはスペース区切りのテキスト)を
 読み込みたかったので、
 
 「データ→外部データの取り込み→テキストファイルのインポート」
 
 としました。以降は、これをボタン一つでおこなえるようにしたかったので、
 
 Sub ImportData()
 Worksheets("Sheet1").Activate
 Worksheets("Sheet1").Range("A1").Select
 Selection.QueryTable.Refresh BackgroundQuery:=False
 End Sub
 
 なるマクロを作って、bar.xlsのボタンオブジェクトに割り当てました。
 更に、該当シートの「外部データ範囲のプロパティ」で、
 「更新時にファイル名を確認」のオプションをオフにしました
 (ファイル選択のダイアログが毎回出るのを避けるため)。
 これにより、ボタンを押せば、シート上のデータがすぐに
 baz.datの最新内容で更新できるようになりました。
 
 しかし、フォルダ名を変えた際には、予め最初の作業
 「データ→外部データの取り込み→テキストファイルのインポート」
 を行わないと、ボタンを押しても実行時エラー'1004'が出てしまいます。
 どうやら、baz.datを絶対パスで探しに行っている様なのです。
 
 当方としては、無条件でカレントに置かれているbaz.datを
 読み込ませたいのですが、そのようにする事は可能でしょうか。
 もし方法をご存知の方がいらっしゃいましたら、是非ご教示下さい。
 
 |  |