VBS初心者ですが、上司に依頼されて、次の目的のVBSを
作成することとなりましたので、皆様の知恵をお貸し下さい。
1、業務サーバー内に50前後のフォルダが存在する。
2、そのサーバ内のフォルダ名とサイズ(MB表示)を取得する。
3、最終的には、取得したフォルダ名とサイズをcsvで出力する。
現在は、月一でサーバー内の各フォルダのプロパティからサイズを取得して、
エクセルで管理をしているのですが、毎月のようにフォルダが10個単位で増減しているため、
作業に取られる時間が馬鹿にならないので、VBSにて一覧取得をできないか
と相談されました。
私のスキルでは、各フォルダ毎のファイル名とサイズを取得することは
出来るのですが、出来れば、一度の操作で全部の作業を終わらせたいので、
皆様のお力をお貸し下さい。
No.3ベストアンサー
- 回答日時:
追伸。
http://www.vector.co.jp/soft/cmt/win95/util/se03 …
↑社内でフリーウェアの使用が認められていれば、このようなソフトは?
上記リンクは適当なフォルダに解凍して実行ファイルを開けば即座に実行されますし
(インストール不要なのでFDに入れておいて他PCでの作業も簡単)
ネットワーク対応、CSV出力対応なので楽チンです (^^ゞ
社用の閉鎖環境のため、フリーウェアの使用が出来ないのですが、前回のご回答から、自分なりにソースをくみ直し、意図する動作を一応形作ることが出来、上司からOKを頂きましたことをお礼とともにご報告させて頂きます。
No.2
- 回答日時:
こんな感じ?Excel VBAです。
chkDir を実行すると二番目のシートに書き出します。
標準モジュールにて。
Function GetSubDir(strTrgDir As String, Optional rRow As Integer)
Dim objFs As Object
Dim objDir As Object
Dim objFile As Object
Set objFs = CreateObject("Scripting.FileSystemObject")
Set objDir = objFs.Getfolder(strTrgDir)
Set objFile = objDir.Files
For Each objDir In objDir.SubFolders
If objDir.Attributes <> 22 Then
rRow = rRow + 1
Debug.Print "rRow = " & rRow, "folder = " & objDir.Path _
, "size = " & Int(objDir.Size / 1024) & "Kbyte"
Sheets(2).Cells(rRow, 1) = objDir.Path
Sheets(2).Cells(rRow, 2) = Int(objDir.Size / 1024)
Sheets(2).Cells(rRow, 3) = "KB"
'Call GetSubDir(objDir.Path, rRow) '←サブフォルダを見に行きます
End If
Next
Set objFs = Nothing
Set objDir = Nothing
End Function
Sub chkDir()
Call GetSubDir("\\server\共有フォルダ名\")
End Sub
No.1
- 回答日時:
> 現在は、月一でサーバー内の各フォルダのプロパティからサイズを取得して、
> エクセルで管理をしているのですが、
これを使って、csv出力機能を追加するのが一番簡単な気がしますけど、ExcelVBAではなく
VBSでする必要があるのでしょうか?
とりあえず、テキストファイルを作成するのなら、
FileSystemObject の概要
http://msdn.microsoft.com/library/ja/default.asp …
TextStream オブジェクト
http://msdn.microsoft.com/library/ja/script56/ht …
ここらへんを使うとかでしょうか。
この回答への補足
早速のご回答有難う御座います。
VBAも、VBSも初心者なもので、取り敢えず、頭の中と自宅のクライアント単体のみで、構文を考えていたため、出勤した際に色々と、試作をしてみます。
参考リンク大変有難う御座いました。
エクセルのVBAで処理できることが判り、本日、試行錯誤の上、意図する動作を暫定的に確認できました。
大変有難う御座いました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) outlook マクロが終了しません。 1 2022/09/02 11:14
- Visual Basic(VBA) VBA This Workbookモジュールを別ファイルにコピーする方法 1 2022/09/14 01:51
- Windows 10 コマンドプロンプトの使い方 1 2022/10/13 14:43
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/09 10:33
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/05/24 08:33
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行すると メッセージボックスが表示されて okをク 4 2023/07/05 19:32
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/21 09:28
- Visual Basic(VBA) Excel VBA 同じ名前のフォルダがあれば作成したブックを格納するマクロをつくりたい 2 2023/01/16 16:19
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
ファイルサーバーにあるフォルダの容量を知るには?
Windows Vista・XP
-
dirコマンド一文ででフォルダの容量を表示するには
Windows 10
-
バッチファイルでディレクトリの使用容量を取得したい
ネットワーク
-
-
4
Dirコマンドでフォルダ内ファイルの合計サイズをだすには?(コマンドプロンプトにて)
UNIX・Linux
-
5
ネットワークの共有フォルダの残り容量の調べ方をご存知の方お教えいただけますでしょうか。
ルーター・ネットワーク機器
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
デスクトップの画像をhtmlに表...
-
ファイル名と同名のフォルダを...
-
Excelで指定したフォルダに保存...
-
ファイル名から該当フォルダへ移動
-
Excel VBA 同じ名前のフォルダ...
-
VB6でCSVファイルにパスワード...
-
VBA フォルダの複数選択ができない
-
C ファイル出力で、フォルダが...
-
エクセルのマクロについて教え...
-
Excelのハイパーリンクについて...
-
VBA 最新のフォルダ取得
-
Windows10でコマンドプロンプト...
-
エクセル 一つ上の階層の別フ...
-
ファイル保存時のダイアログ表...
-
Access VBA で フォルダ権限...
-
ddraw.h
-
VBS サブフォルダの再帰処理に...
-
ExcelのVBAでフォルダ指定がで...
-
【AccessVBA】フォルダを指定し...
-
エクセルマクロで指定フォルダ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Windows10でコマンドプロンプト...
-
ファイル名と同名のフォルダを...
-
VBA 最新のフォルダ取得
-
【マクロ】ファイル名の日付に...
-
windowsでテキストファイルの各...
-
デスクトップの画像をhtmlに表...
-
Access VBA で フォルダ権限...
-
フォルダ内のPDFファイル名を変...
-
パス名に2バイト文字(マルチバ...
-
多量のファイルをフォルダに自...
-
Excelで指定したフォルダに保存...
-
会社のネットワーク上のファイ...
-
ディレクトリ名変更してコピー...
-
VBA フォルダ名に特定の文字を...
-
エクセルマクロで指定フォルダ...
-
保存先のフォルダ名を指定した...
-
あるフォルダの中にあるファイ...
-
ExcelのVBAでフォルダ指定がで...
-
エクセルのマクロについて教え...
-
Excel VBA で フォルダ名の一部...
おすすめ情報