プロが教える店舗&オフィスのセキュリティ対策術

お世話になります.
EXCELでフォルダの容量を自動で測量するツールを作成中です.
大まかな概要としては,1枚目のシートのセルにあらかじめ測定対象となるフォルダのパスを記述しておき,
そのパスをもとに2枚目のシートに測定した容量を出力したいと考えています.

作成中のソースから抜粋させて頂きますが,以下の部分が上手くいきません.

<<作成中のソース>>
Sub FolderSize_Count()

Dim FSO As Variant
Set FSO = CreateObject("Scripting.FileSystemObject")
Dim Path As String

With Sheets("Sheet2")
Path = Application.Worksheets("sheet1").Range("A1").Value
.Cells(1, 1) = FSO.GetFolder("Path").Size
End With

End Sub

<<不明点>>
FSO.GetFolder("Path").Size の"Path"の部分には対象フォルダのパスを記述する必要があるが,
別シートから取得した値を" "に反映させる記述が分かりません.

ちなみに
Application.Worksheets("sheet1").Range("A1").Valueにて,対象フォルダのパスを取得出来ていることと,
FSO.GetFolder("C:\test").Sizeにて,Cドライブ直下のtestフォルダの容量を取得できることは確認済みです.

お手数お掛けいたしますが,有識者の方,ご教授頂ければ幸いです.
以上,よろしくお願いいたします.

A 回答 (1件)

Pathが変数なら『"』でくくってしまってはいけません



.Cell(1,1) = FSO.GetFolder(Path).Size
といった具合にします

『"』でくくってしまうと カレントフォルダにある.\Pathを探します
    • good
    • 0
この回答へのお礼

ご指摘通り修正し,意図通り動作しました.
ありがとうございました.

お礼日時:2008/01/25 23:19

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!