構築中のシステムで,カレントディレクトリを変更する部分を作っている時に,詳細に調べていくと,対象となるディレクトリがローカルドライブかネットワークドライブかでやり方が異なることが分かったのですが,どちらでも動くように,以下のようなプロシージャを作ってみました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
Sub ChangeFolder(FolderName As String) '引数はフルパス On Error Resume Next 'エラーが出ても無視して次の行へ 'カレントディレクトリを変更 If Left(FolderName, 2) = "¥¥" Then '最初の2文字が¥¥の場合(ネットワークの場合) 'WSHでディレクトリを変更 CreateObject("WScript.Shell").CurrentDirectory = FolderName Else 'ローカルドライブの場合 'ChDriveとChDirでカレントドライブとカレントディレクトリを変更 ChDrive Left(FolderName, 1) ChDir FolderName End If On Error GoTo 0 End Sub |