• ベストアンサー

Excel97VBAで、カレントディレクトリを取得する方法

sghの回答

  • ベストアンサー
  • sgh
  • ベストアンサー率61% (75/121)
回答No.1

自分のファイルのパスは、"thisworkbook.path"で取得できます。

noname#1997
質問者

お礼

素早い回答ありがとうございました。 無事解決できました。

関連するQ&A

  • Excel97VBA

    Excel97のVBAでマクロを作っています。 1.xlsというファイルを、2.prn(スペース区切りテキスト)で保存し、再度1.xlsというファイルで元のファイルに上書き保存したいのですが、1というファイル名を任意に変更したいので、保存形式とファイル名を元のファイルと同じにして元のファイルに上書きする、ということは可能でしょうか?

  • VBA カレントディレクトリ取得について

    お世話になってます。 VBAの初心者です。 test.mdbファイルを "C\TEST" という作業ディレクトリ配下において そのmdbのモジュールでCurDirを使用してカレントディレクトリを取得する という処理をVBAで書きたいのですが、 Dim strPath As String strPath = CurDir("C") と記述し実行しても strPathに格納される値は "C\" となってしまいます。 本当は"C\TEST"という値を取得したいのですが、 使用方法が間違っているのか、何が悪いのかよく分かりません。 よろしくお願い致します。

  • Excel マクロのsaveasでファイル保存の方法で教えて下さい

    Excel2003で、USBメモリ上の2つのファイル(マクロを保存したmacro.xls及び作業を行うsagyo.xls)を開き、マクロをかけて、最後にxlsファイル形式で上書き保存したいのですが、 (1)ActiveWorkbook.Save で、上書き保存を行うと、なぜかUSBメモリ上にhtmlファイル保存されてしまいます。このため、xlsファイル形式保存をあえて明示し、saveasの既定値であるxlWorkbookNormalを指定し、 (2)ActiveWorkbook.SaveAs , FileFormat:=xlWorkbookNormal とすると、(カレントフォルダである)マイドキュメントに保存されてしまいます。 Q1.(1)のようになる原因は何でしょうか? Q2.USBメモリは、他のPC環境でも使うので、「saveas "F:\sagyo.xls"」などとドライブ指定せずに使いたいのですが、USBメモリ上に上書き保存するマクロの書き方はないでしょうか?

  • カレントディレクトリの取得

    お世話になります。 バッチファイルでの処理中にカレントディレクトリをフルパスで取得し 変数に値を格納したいのですが、やり方が分かりません。。 いろいろ調べた結果、カレントディレクトリの取得は「CD」 変数への格納は、「==」or「set」なのかな?ってぐらいの知識レベルです。 上記のコマンド以外でも構いませんので、カレントディレクトリを取得し 変数に値を格納する方法を、記述の仕方を含めてご教示くださいませ。 宜しくお願い致します。

  • EXCELファイルのカレントフォルダを取得するには?

    EXCELファイルのカレントフォルダを取得するには? C:\経理\予算.xls D:\2005年度\予算.xls EXCEL97ファイルがあります。 VBAで   カレントフォルダ名 (C:\経理\,D:\2005年度\) を取得する事は可能でしょうか? CURDIRでは上手い方法が見つかりませんでした。

  • Excel/VBAのファイル保存

    いつもここでは大変お世話になっています。 以下のように名前をつけて保存をしているのですが、 同名のファイルがあった場合でも上書き確認せずに上書きをさせる方法を教えて下さい。 お願いします。 ActiveWorkbook.SaveAs Filename:= _ "\\PC名\ディレクトリ名\ファイル名.xls", FileFormat:=xlNormal, _ Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _ CreateBackup:=False

  • DOSコマンドでカレントディレクトリのディレクトリ名を一括取得

    DOSコマンドでカレントディレクトリのディレクトリ名を一括取得 DOSコマンドにて、カレントディレクトリ名を取得するのは、 for %I in (.) do set DIRNAME1=%~nI%~xI このようなコマンドでできると思います。 しかし、DOSコマンドにて「カレントディレクトリの中のディレクトリ名」を 一括取得して、複数の変数に保存する方法がわかりません。 以上、よろしくお願いします。

  • ディレクトリの指定について教えてください。

    エクセル+VBAでわからないことが出てきたので、教えてください。 a.xlsというエクセルファイルで、VBAを実行させ、 新規にブックを開き、a.xlsと同じディレクトリに、b.xlsという名前で保存したのですが、 a.xlsが存在するディレクトリの取得の仕方がわかりません。 すみませんが、ご教授の程、よろしくお願いいたします。

  • VBAでのシートコピーについて

    VBAでシートを新しいブックにコピーして、名前を付けて保存したいのですが、同じファイル名が存在すると、必ず「上書きしますか?」のダイアログが表示されてしまいます。無条件で上書きする方法ってありませんか? 今は↓のようなコードを書いてます。 Application.ScreenUpdating = False Sheets("sheet1").Copy ActiveWorkbook.SaveAs Filename:= _ "C:\Book1.xls", FileFormat:=xlNormal, _ Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _ CreateBackup:=False ActiveWindow.Close

  • 同名ファイルの上書き確認ダイアログを表示させない方法(Excel97VBA)

    あるディレクトリに、既存のファイル名と同じ名前を付けて新しく保存しようとすると、上書きの確認ダイアログがでます。 このダイアログを出させずに、無条件で上書きするにはどのようにすればいいのでしょうか? 現在、“Application.AlertBeforeOverwrite = False”として、その次の行に“ActiveWorkbook.SaveAs FileName:="なまえ.xls"としています。 もちろん、保存先のディレクトリには「なまえ.xls」というファイルが存在します。