• ベストアンサー

取得したファイルの容量を変数として使いたい

環境:WindowsXP SP2 ソフトウェア:DOS、VBS c:\1.xls というファイルの大きさはdir c:\1.xls/c で取得することがわかりました。その取得した大きさを、ある変数(size)として後に続くプログラムで使用するにはどうしたらよいでしょうか? (使用例) if size > 10MB then a=b else a=c

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

  • ベストアンサー
  • x1va
  • ベストアンサー率26% (802/3006)
回答No.1

dirコマンドの結果を利用するのではなく、VBSの関数を使おう。 http://homepage1.nifty.com/MADIA/vb/Tecnick/VBFILESIZE.htm

VR9LXp17vB
質問者

お礼

早速のお返事ありがとうございます。 解決しました。 今回は誠にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ファイル名を変数として取り扱いたい

    ファイル名が変更されても正常に動作するようにしたい <処理概要> A.XLS、B.XLS、C.XLSというファイルがあります。 A.XLSにB.XLS、C.XLSのシートを取り込む処理をしています。 マクロはA.XLSで起動、処理しています。 A.XLSのファイル名を変更されても動くようにできるのでしょうか。 ご指導のほど、よろしくお願いいたします。 <ファイルの取り込み処理> For Each fName In FSO.GetFolder(MyFolder).Files If FSO.GetExtensionName(fName) = \\\"xls\\\" And _ FSO.GetBaseName(fName) <> \"A\" Then Set wBook = Workbooks.Open(fName, 0, True) For 番号 = 1 To Worksheets.Count wBook.Worksheets(番号).Copy _ after:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count) Next 番号 wBook.Close False End If

  • VBS(WSH)でディレクトリの場所を取得する方法

    DOSコマンドで下記のようにすると、"temp"というフォルダがCドライブ内のどこに存在するか確認できますが、VBSで同様の結果を取得する方法がわかりません。 C:\> dir temp /s 申し訳ありませんが、分かるかたがいましたらお願いします。

  • 変数の中身がアルファベットだけなのか取得するには

    変数がアルファベットだけか取得するには? Sub test() Dim mystr As String mystr = "abc" If ??? Then MsgBox "アルファベットだけです" End If End Sub のように、変数の中身がアルファベットだけなのか取得するにはどうすればいいでしょうか? ひらがな、カタカナ、漢字、記号を含んでいるかどうかを評価したいです。

  • バッチファイル フォルダサイズの取得方法

    お世話になっております。 WindowsXP環境にて下記のバッチファイルにて【D:\test】直下の【sample】フォルダの サイズを調べるバッチを作成予定です。 DIRコマンドで何かしらのオプションでどこかのテキストにサイズを出力し、 それを変数に読み込む・・・も考えましたが、二度手間に思えます。 どうにかわざわざテキストファイルに出力せずに直接変数にフォルダサイズを格納する バッチファイルは可能でしょうか? VBSではなく、バッチファイルで実現したいのです。 ご存知の方がいましたら、ご教授願いますでしょうか? 何卒宜しくお願い致します。

  • Rubyにおける変数

    Windows2000上で、Rubyを動かしています。 皆様のお陰で、少しずつ進んでおります。しかし、また質問させてください。 変数に、ファイル名を代入して、実行すると、動かなくなりました。 実名を入れた、system('tar zxf test_20070511.tar.gz')では、動きますが、 変数にした、system('tar zxf myFilename')では、動きません。 Rubyスクリプト ---------------------- print Dir.getwd,"\n" Dir.chdir('C:\myData\myData2') print Dir.getwd,"\n" dir = Dir.open('C:\myData\myData2') while myFilename=dir.read do if /.tar.gz/i =~myFilename then puts myFilename system('tar zxf myFilename') end end dir.close ------------------------------------ 宜しくお願いいたします。

  • パールのファイルサイズ取得について

    パールのファイルサイズ取得について こんにちは。 パールのソースで困っているので、どなたか教えてください。 1つめのファイルサイズと、2つ目のファイルサイズを取得して 比較するソースを書いたのですが、ファイルが0byteであった場合、 変数に入れるところで失敗するのでしょうか? また、変数に入れるところではうまくいったとしても、比較で 失敗するのでしょうか? $size_a = -s $filea; $size_b = -s $fileb; if($size_a == $size_b){ ### メッセージを出力 }

    • ベストアンサー
    • Perl
  • EXCEL VBAで変数を使ってファイルを開きたいのですが。

    いつもお世話になります。Win98-EXCEL2000での作業です。 いくつかのファイルで同じ処理をしたいので、変数を使ってファイルを開くことができたらいいなと思って、こんな感じがいいなと作ってみたのですが、 Dim iii As Integer Dim myF As String For iii = 1 To 5 If iii = 1 Then myF = "偏貼_log" ElseIf iii = 2 Then myF = "Cof_log" ・・・と、5つのファイル名を入れて、 Workbooks.Open Filename:="myF.xls" としたいのですが、当然ここで変数が入っても「myF.xls」というファイルを探しに行ってしまいますよね・・・ こういう場合はどうすればよいのでしょうか。 宜しくお願いします。

  • 絶対パス名からファイル名を取り出して、変数に格納するバッチ

    DOSコマンドバッチで定義した変数"fullpath"に絶対フルパス名が格納されているとします。 この変数からファイル名だけを抽出して別の変数"filenae"に格納したいのですが方法がわかりません。 1. set fullpath = "C:\test\test.c" 2. ----ここの部分をどのように処理すれば?------ 3. set filename = fullpathから抽出したファイル名 私がやってみた方法として、for文とdir /bを組み合わせてみたのですが for %a in ( dir /b c:\test\test.c ) do set filename =%a 本来dir /bを実行するとファイル名のみが表示されるのに、For文をかますと絶対フルパスでfilenameに値が格納されてしまいます。 dir /b c:\test\test.cの結果を直接filename変数に格納できれば解決するのですが、コマンド結果を変数に格納するにはFor文を使わないとだめなんですよね? なにかよい方法はないでしょうか?

  • エクセル VBA CheckBox名に変数を使用

    エクセル VBA CheckBoxのオブジェクト名に変数を使用して 値を取得したいのですが・・・ If ActiveSheet.OLEObjects(TempName).Object.Value = True Then          (処理) Else          (処理) End If 「実行時エラー '1004': OLEObject クラスのオブジェクトのプロパティを取得できません。」 というエラーがでてしまいます。 何が原因なのかわかる方是非ご教授ねがいます。

  • エクセルVBAでファイル操作

    既出でしたら、すみません。 VBAでコードを書いているのですが、試行錯誤したうえで質問させていただきます。 以下、自分で書いたエラーになるコードです。(実行時エラー 424) If Dir("C:\業務\データ蓄積\ zaiko" & Format(Date, "yyyymmdd").xls) = "" Then MsgBox "該当なし" Else MsgBox "該当あり" End If データ蓄積にzaiko+"今日の日付"の.xlsが存在しなければ MsgBox "該当なし" 存在するなら MsgBox "該当あり" と、したいのですが どうにか、お力添えください。 宜しくお願いします。

このQ&Aのポイント
  • ブラザー製品で使用しているDCP-J577 Nというプリンターで、電源を入れた時に「インクがありません」と表示される問題が発生しています。どのように対処すれば良いでしょうか?
  • DCP-J577 Nプリンターで、電源を入れるとインクがなくなってしまうという問題が発生しています。この問題に対して、どのような解決策があるのでしょうか?
  • ブラザー製のDCP-J577 Nプリンターを使用していると、電源を入れるとインクがなくなったと表示される問題が発生しています。この問題の解決方法を教えてください。
回答を見る