• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Desktopのファイルを別フォルダにコピーしたい)

Desktopのファイルを別フォルダにコピーしたい

このQ&Aのポイント
  • Desktop上のZIPファイルを別フォルダにコピーして解凍する方法
  • Desktop階層が異なるPCでも実行可能なScriptについて
  • Windows7(32ビット)でのファイルコピー方法

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

こんな感じでは? ※定数の宣言部分は省略しています。 Dim oFS Dim oApp Dim oZip Dim oZipItem Dim oZipTo Dim retVal Dim DTpath DTpath = CreateObject("Wscript.Shell").Specialfolders("DeskTop") & "\" toZipPath = "D:\_zipTestFolder" Set oFS = CreateObject("Scripting.FileSystemObject") Set oApp = CreateObject("Shell.application") Set oZip = oApp.NameSpace(DTPath & "test.zip") 'デスクトップにtest.zipがあるとして '解凍先をセット If oFs.FolderExists(toZipPath) = False Then oFS.CreateFolder (toZipPath) End If Set oZipTo = oApp.NameSpace(toZipPath) '解凍 oZipTo.CopyHere oZip.Items, FOF_NoConfirmation + FOF_Silent oApp.shellExecute toZipPath '確認用

yukimina
質問者

お礼

完璧です! ありがとうございました!

その他の回答 (2)

回答No.2

v=createobject("wscript.shell").specialfolders("desktop") msgbox v では?

yukimina
質問者

お礼

コメントを有難うございます。

yukimina
質問者

補足

desktopのパスを取得して、質問の中で記したScriptの中に組み込みたいのですが、それがなかなかうまく実行しないので苦慮してます。

  • kawais070
  • ベストアンサー率52% (2242/4283)
回答No.1

http://okwave.jp/qa/q235894.html 上記のQ&Aが参考になりますでしょうか? SHGetSpecialFolderLocationというWin32 APIでデスクトップのフォルダのPATHが取得できるようです。 VBSでWin32 APIを呼び出すには、以下の方法があります。 http://cx20.main.jp/blog/hello/2012/04/20/hello-win32-api-vbscript-world/ Excelを使うのが簡単かな?Excelなら大抵のパソコンには入っているし。

yukimina
質問者

お礼

参考情報を有難うございます。

yukimina
質問者

補足

フォルダのパス取得については私も検索していたのですが、私自身がVBSを先月から勉強し始めたばかりで、その活用がまだまだできません。 Dim DesktopPath DesktopPath = WSHShell.SpecialFolders("Desktop") を設定していくScriptにすればできると思ってますが、うまくいかないです。エクセルを使用せず、不特定多数の階層の異なるPCで、ワンクリックで実行できないでしょうか。

関連するQ&A

専門家に質問してみよう