2016-12-22 9 views
0

私はExcelのこの奇妙なことに出くわしました。私は現在の作業ディレクトリを取得するためにCurDir()を使用しようとしましたが、得られるたびに "Users \ username \ Documents"でしたが、ブックは "Users \ username \ Desktop"(ThisWorkbook.pathが正解でした)でした。そして私はそれがうまくいった別のコンピュータでこれを試しました。Excel CurDir()関数は間違ったディレクトリを返します

現在のOSはWin 8.1 64、Office 2016 Professional Plusです。 もう1つはWin 10、Office 2013 Students verです。

ありがとうございます。

+2

を使用する必要があります 'CurDir'は必ずしもあなたのワークブックが保存されているパスと同じではありません。それがあなたが望むなら、代わりに 'ThisWorkbook.Path'を使用してください。 –

+1

それは全く変わっていません。私はそれをテストすることはできませんが、Excelの 'Save'オプションの' Default file location: 'の影響を受けるかもしれないと思います。 – Slai

+0

@Slaiありがとう!あなたは私の一日を救った! – yatsky

答えて

2

CurDirは必ずしもアクティブブック(またはそれに関するオープンブック)のディレクトリである必要はありません。これは、最近開いたダイアログまたは保存ダイアログでナビゲートされたディレクトリ、またはVBAによって設定されたディレクトリです。

現在のドキュメントのパスが必要な場合は、Workbook.PathまたはWorkbook.FullName

関連する問題