投稿日 | : 2003/10/29(Wed) 23:40 |
投稿者 | : 魔界の仮面弁士 |
Eメール | : |
URL | : |
タイトル | : Re^4: 写真の撮影日の取得 |
> 'ファイルが存在するフォルダを指定(変数ではだめです。)
> Set objFolder = objShell.NameSpace("c:\")
いえ、変数でもOKだと思いますよ。
引数に指定できる物としては、例えば下記のような物があります。
・Folderオブジェクト
・FolderItemオブジェクト(IsFolderプロパティがTrueを返す場合のみ)
・Variant型(内部形式は String, Long, Integerのいずれか)
この時、未対応のデータ型を指定してしまうと、NameSpaceメソッドから
Nothingが返される(またはエラーになる)ので、その点は注意が必要ですね。
(Script対応のオブジェクトという事もあり、基本的にはVariant型を指定する事になるでしょう)
なお、ここにString型の変数を指定したい場合は、
Set objFolder = objShell.NameSpace(Path)
ではなく、
Set objFolder = objShell.NameSpace((Path))
または
Set objFolder = objShell.NameSpace(CVar(Path))
または、
Dim V As Variant
V = Path
Set objFolder = objShell.NameSpace(V)
などとして、Variant型への変換を伴うように指定すればOKです。