Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


30854 / 76732 ←次へ | 前へ→

【51140】テキストファイルを相対パスでインポートする方法について
質問  S  - 07/8/29(水) 19:22 -

引用なし
パスワード
   掲題について質問させて下さい。

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を
読み込ませたいのですが、そのようにする事は可能でしょうか。
もし方法をご存知の方がいらっしゃいましたら、是非ご教示下さい。

2 hits

【51140】テキストファイルを相対パスでインポートする方法について S 07/8/29(水) 19:22 質問
【51155】Re:テキストファイルを相対パスでインポー... 通りすがり 07/8/30(木) 17:56 発言
【51157】Re:テキストファイルを相対パスでインポー... S 07/8/30(木) 19:56 お礼
【51158】Re:テキストファイルを相対パスでインポー... S 07/8/30(木) 20:30 お礼

30854 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free