• 締切済み

PowerPointのカレントフォルダを移動したい

PowerPointと組み入れた動画のファイルは全て同じフォルダに入れているのですが、 組み込んだ動画の再生が、開いた後の一度しか再生できなくなっていて困っています。 どうもPowerPoint開いたときのフォルダが再生後に既定のフォルダに移動してしまって いるようなのです。ということで、EXCELでできる以下のことと同様のことをPowerPointで したいです。なお、使ってるPowerPointは 2010 です。 Sub カレントフォルダの移動() Dim strPath As String strPath = ThisWorkbook.Path ChDrive strPath ChDir strPath End Sub できれば、PowerPointを開いた時に動作させたいです。 よろしくお願いいたします。

みんなの回答

  • DreamyCat
  • ベストアンサー率56% (295/524)
回答No.1

ThisWorkbook.Path を ActivePresentation.Path に書き換えるだけです。 PowerPointでは そのプレゼンテーションファイルを開くだけで その保存先フォルダーに変更されるようになっていると思います。

questionFull
質問者

補足

カレントを MsgBox CurDir で確認できるようにして確認したのですが、確かにプレゼンテーションファイルを開いた当初はその保存先がカレントになっています。ですが、スライド表示して動画の再生のスライドのところで、動画再生を途中で止めたり、終了間際まで早送りしたりなどの操作(これが原因かは判りません)をした後など、カレントが既定フォルダに変わっていました。

関連するQ&A

  • 別ファイル起動時にはカレントフォルダの変更が必要?

    「マクロの記録」のボタンをクリックして以下の作業のマクロ構文をPCに自動記述させた場合 「ChDirステートメント」で必ずカレントフォルダが変更される一文が記述されます  1.別ファイルを起動させた場合  2.「名前を付けて保存」の処理を実行させた場合 そのため、今までは「カレントフォルダ」を変更しないことには他のファイルやブックを使用できない とばかり思っていましたが、下記ホームページを拝見したところフルパス名を使用するのであれば 特に「カレントフォルダ」を変更する必要はなさそうであることが分かりました。 http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_140.html これって、他のファイルやブックを使用する際に「ファイルを開く」などの操作で「ファイルの場所」を 特定したその作業をPCがマクロ処理として構文を自動作成してしまっただけの「ChDir」であって、 実際のファイル起動などのマクロ構文をフルパス名で記述するのであれば、「ChDirステートメント」 でのカレントフォルダ変更は特に必要ないという認識で正しいのでしょうか? このことについては何となく理解できたのですが、下記4点について詳しく知りたいので宜しく お願いします。  1.「ChDrive」、「ChDir」を省略した方がファイルが軽くなるのか(処理が早くなるのか)  2.「ChDrive」、「ChDir」を記述した方がファイルが軽くなるのか(処理が早くなるのか)  3.FSOなどでファイルやフォルダを新たに作成する場合は「ChDir」の記述をした方が良いのか  4.常にフルパス名でマクロ処理することによるデメリットはあるのか 以上です。宜しくお願いします。

  • VBAによるカレントフォルダのファイルを検索し開く

    カレントフォルダ内にファイル(コ―ド.xls)を見つけ開き、無ければMSG表示したい。 どのように、したらいいですか? 考えているのは、 Application.DefaultFilePath = ThisWorkbook.Path If ??? Then Workbooks.Open "コード.xls" else msgbox (ThisWorkbook.Path & "にコード.xlsを置いて下さい。") Exit sub end If です。 この???の部分を教えて頂きたいと思います。 よろしくお願いします。

  • Excel VBA:ダイアログを使ってファイル名を取得したい

    ファイルを開く際に、GetOpenFilenameを使用し、以下のように記述しています。 Dim sFName As String Dim sPath As String sPath = ThisWorkbook.Path & "\データフォルダ" ChDir sPath sFName = Application.GetOpenFilename(FileFilter:="CSVファイル(*.csv),*.csv", MultiSelect:=False) このとき、win98ですと、指定したフォルダが表示されますが、 win2000やXPですと、Excelのカレントフォルダが表示されます。 ダイアログ表示したときに、任意のフォルダを表示させるには、どのようにしたらよいですか? ご回答よろしくお願いします。

  • パソコンが変わってもマクロが実行できるようにしたい

    windowsXP Excel2000でマクロ作成しました。 私は 6)の aaaa のパソコンを使っています。 これをUSBメモリで他のパソコンに複写し使おうとすると当然エラーがでます。 そのパソコンに 6)ChDir "C:\Documents and Settings\bbbb\デスクトップ\請求書フォルダ" '変更する。 とすればこのマクロが使えます。 パソコンが変わってもこのマクロが使えるようにしたいのですがどうすればよろしいでしょうか。 今はいちいち6)のaaaa、 bbbb部分を変更して使っています。 Sub ブック名に現在の日付を付加して保存() 1)Application.DisplayAlerts = False 2)Dim Filename As String 3)Application.DisplayAlerts = False 4)ChDrive ThisWorkbook.Path 'ブックのドライブに変更する。 5)ChDir ThisWorkbook.Path 'ブックのフォルダに変更する。 6)ChDir "C:\Documents and Settings\aaaa\デスクトップ\請求書フォルダ" '変更する。 7)Filename = Format(Date, "yyyymmdd") 8)On Error Resume Next 9)ActiveWorkbook.SaveAs Filename:="請求" & Filename & ".xls" 10)Err.Clear 11)Application.Quit 12)End Sub

  • Excel VBA カレントフォルダのひとつ上のフォルダを指定したい

    はじめて質問をさせていただきます。 ExcelのVBA初心者なのですが、既存のファイルに継ぎ足しで新規のファイルを作成しております関係上、カレントフォルダのひとつ上のフォルダを指定したいと考えております。 変数=thisworkbook.path のようにカレントフォルダの取得の仕方は分かったのですが、そこからひとつ上を指定する方法などはあるのでしょうか? よろしくお願いいたします。

  • Javaでカレントディレクトリを移動するには?

    Javaの中で、カレントなディレクトリを移動させ、相対PATHで既存ディレクトリを認識させたいのですが、期待する結果が得られません。 Javaの中でカレントディレクトリを移動する場合、System.setProperty()メソッドを利用して、"user.dir"を書き換えれば良いと思ったのですが、間違いでしょうか? 間違いである場合、Javaの中ディレクトリを移動させる方法はあるのでしょうか? 以下のプログラムは、下記状況下にて実行したものです。 C:\Java |-app ←プログラムを実行時にいるフォルダ |-sub ←相対PATHで認識させたい既存フォルダ ----------- ソース -------------------------- import java.io.*; class TestTest { public static void main(String args[]) { System.out.println("Current dir : " + System.getProperty("user.dir")); System.out.println("Move Dir !"); System.setProperty("user.dir","C:\\Java"); System.out.println("Current dir : " + System.getProperty("user.dir")); File f = new File("sub"); System.out.println("Dir existance : " + f.exists()); } } --------------------------------------------- ----------------実行結果---------------------- C:\Java\app>java TestTest Current dir : C:\Java\app Move Dir ! Current dir : C:\Java Dir existance : false ←trueにならない! --------------------------------------------

    • ベストアンサー
    • Java
  • VBA カレントディレクトリ取得について

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

  • VBAでフォルダの中の1個のファイルを表示したい

    Windows10、Microsoft 365使用の超初心者です。 毎月1回、一個だけファイルを、フォルダ「計算表」に手動で入れています。 入れるのは、翌月のファイルで、A年B月計算表完成.xlsです。 いま、フォルダ「計算表」に、2年8月計算表完成.xlsが,1個 いれてあるので、エラーが発生します。 毎月1回のエラーを回避するため、何か良い方法を知りたいです。 よろしくお願いします。 Sub 最新計算書ひらく() Dim wb As Workbook Dim ws As Worksheet ChDrive ThisWorkbook.Path ChDir ThisWorkbook.Path On Error Resume Next Set wb = Workbooks("2年7月計算表完成.xls") If err.Number <> 0 Then Set wb = Workbooks.Open(ThisWorkbook.Path & "\計算表\2年7月計算表完成.xls") err.Clear End If Set ws = wb.Worksheets("集計") On Error GoTo 0 wb.Activate ws.Select・・・・・・ここでエラーになる End Sub

  • EXcelマクロで同じフォルダ内のファイル全て開く。ドライブまたいでも対応

    以前以下のVBAを教えていただいたham-kamoさんに質問があります。もちろん違う方でも構いません。 「同じフォルダ内のブックを開くマクロ」についてですが、以下のVBAだとカレントフォルダをオプションで違うドライブに設定しているとうまく動作しないのですが、解決法はありますでしょうか? 例えば\\AAAA\BBというアドレスのフォルダ内にマクロを起動するファイルがあり、C:\Documents and Settings\XXXXがカレントフォルダに設定されるとC:\Documents and Settings\XXXX内のExcelファイルが開かれてしまうということです。 -------------------------- Sub OpenAllBooks() Dim FileName As String Dim OpenedBook As Workbook Dim IsBookOpen As Boolean ChDir (ThisWorkbook.Path) FileName = Dir("*.xls") Do While FileName <> "" IsBookOpen = False For Each OpenedBook In Workbooks If OpenedBook.Name = FileName Then IsBookOpen = True Exit For End If Next If IsBookOpen = False Then Workbooks.Open (FileName) End If FileName = Dir() Loop End Sub

  • サーバーに保存したエクセルファイルでChDrive、ChDirがエラーになる

    ひとつのフォルダにエクセルブックを6個置います、日常のデータ入力をする、メインのブックに 他ブックをオープンするコードを、以下のように書いています。 Sub 他ブックオープン1() Application.ScreenUpdating = False ChDrive ThisWorkbook.Path ChDir ThisWorkbook.Path ブック名 = "○○.xls" For Each myBook In Workbooks If myBook.Name = ブック名 Then Workbooks("○○.xls").Activate Exit Sub End If Next Workbooks.Open ("○○.xls") Application.ScreenUpdating = True End Sub この、フォルダをサーバーに置いて、クライアントのパソコンから 上記コードを実行すると、実行時エラー "プロシージャの呼び出し、または引数が不正ですとなり、うまく 行きません、デバッグ画面でChDrive,ChDir に示される、アドレスを みると、正しく\\○○サーバー\...と表示されます、どうしてこの アドレスを認識しているのに、エラーが出るのかわかりません どなたか宜しくご教示願います。

専門家に質問してみよう