• ベストアンサー

vbsにてファイルが存在すればメッセージを表示する。というプログラムを作成したいです。

vbsにてファイルが存在すればメッセージを表示する。というプログラムを作成したいのですが 普通にexistsを使ってプログラムを作ったのですが たとえばif文このファイルがあれば~ という分岐の次にまたこのファイルがあれば~という分岐をして4つくらいのファイルがすべて存在すればあるメッセージを表示する。というプログラムを作成したいのですが・・・つまりelseと逆にtrueなら次の分岐・・・という風に作成したいのです。どうかよろしくお願いします。

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

  • ベストアンサー
  • togino
  • ベストアンサー率75% (97/129)
回答No.2

> 4つくらいのファイルがすべて存在すれば > あるメッセージを表示する。 これだけですと・・・文字通り If objFS.FileExists("aaa.txt") = True AND   objFS.FileExists("bbb.txt") = True AND   objFS.FileExists("ccc.txt") = True AND   objFS.FileExists("ddd.txt") = True Then   MsgBox "4つのファイルが存在します" End If となりますが、こういうことではないのでしょうか?

jazzstar
質問者

補足

そういうことなのですがandでうまくつなげなくって・・初心者ですいません、、、

その他の回答 (1)

  • kakusuke
  • ベストアンサー率36% (95/259)
回答No.1

functionで 条件がfalseだったらexitすればいいのでは? Function XXX() As Boolean XXX = False If objFS.FileExists("aaa.txt") = False Then Exit Function End If If objFS.FileExists("bbb.txt") = False Then Exit Function End If If objFS.FileExists("ccc.txt") = False Then Exit Function End If If objFS.FileExists("ddd.txt") = False Then Exit Function End If XXX = True End Function

jazzstar
質問者

補足

×××にはなにがはいるんでしょうか?fanctionつかったことなくてよくわからなくて・・・お願いします。

関連するQ&A

  • vbsにてショートカットが存在するか確認するほうほう。

    vbsにてファイルが存在すればメッセージを表示する。というプログラムを作成しました。 しかし、そこのファイルがあるかという条件にショートカットがあるかどうかというのを加えたいのですが、fileexistsではうまくいきません。。。どうしたらいいのでしょうか?

  • VBSでファイル作成後、書き込みできない

    ファイルが存在している場合は、ファイルをオープンして書き込み、ファイルが存在していない場合は、ファイルを作成後、オープンして書き込みを行わせたいと考えています。 しかし、ファイルが存在していないとき、ファイルは作成されるのですが、『エラー:800A0046 書き込みできません。VBScript実行時エラー』が出て、書き込みができません。モードをWritingにしても同じでした。 お手数をおかけしますが、ご教示いただけますようお願いいたします。 Option Explicit '■ オブジェクトの宣言 Dim objFSO Dim objFile '■ 定数の宣言 Const strFileName = "C:\VBS\TEST.TXT" '■ 定数の宣言 '// ファイル入出力モード(8:追加書き込み) Const ForAppending = 8 Set objFSO = CreateObject("Scripting.FileSystemObject") If objFSO.FileExists(strFileName) Then WScript.Echo "ファイルが見つかりました" Else WScript.Echo "ファイルが見つかりませんでした" Set objFile = objFSO.CreateTextFile(strFileName) If IsObject(objFile) Then WScript.Echo "ファイルを作成しました" Else WScript.Echo "ファイルを作成できませんでした" WScript.Quit(1) End If End If '// ファイルのオープン Set objFile = objFSO.OpenTextFile(strFileName,ForAppending) objFile.WriteLine "2012/12/21,100,ブレーキパッド,35000"

  • VBSでフォルダ、ファイル作成時のエラーコード

    フォルダ、ファイルが存在しないとき、作成するスクリプトをVBSで作成していますが、疑問点があるのでご教示ください。 objFSO.CreateFolder、objFSO.CreateTextFileを実行が、正常に行われた場合、 Err.Numberに0がセットされると思っていましたが、実際は違っていました。 objFSO.CreateFolderでフォルダが作成される場合、Err.Numberに13が返されます。 objFSO.CreateTextFileでファイルが作成される場合、Err.Numberに438が返されます。 このスクリプトを実行後、フォルダ、ファイルが存在しない場合、作成されることも確認しています。 フォルダ作成後、作成されたフォルダに対して、ファイルの作成/データの書き込みのアクセス権を拒否にすると返されるErr.numberに70がセットされることも確認しています。 なぜ、フォルダ、ファイルが作成された場合、0が返されないのかご存知の方がいらっしゃいましたらご教示ください。 また、その情報が記載されている書籍およびサイトがあれば、お教えいただければ、幸いです。 Option Explicit Dim objFSO Dim objFile Const strFolderName = "C:\VBS" Const strFileName = "C:\VBS\test.txt" On Error Resume Next Set objFSO = CreateObject("Scripting.FileSystemObject") If Err.Number = 0 Then WScript.Echo "FSOオブジェクトを作成しました" Else WScript.Echo "FSOオブジェクトを作成できませんでした" WScript.Quit(1) End If If objFSO.FolderExists(strFolderName) Then WScript.Echo "フォルダが見つかりました" Else WScript.Echo "フォルダが見つかりませんでした" If objFSO.CreateFolder(strFolderName) Then If Err.Number = 13 Then WScript.Echo "フォルダを作成しました" Else WScript.Echo "フォルダを作成できませんでした" WScript.Quit(1) End If End If End If If objFSO.FileExists(strFileName) Then WScript.Echo "ファイルが見つかりました" Else Script.Echo "ファイルが見つかりませんでした" If objFSO.CreateTextFile(strFileName) Then If Err.number = 438 Then WScript.Echo "ファイルを作成しました" Else WScript.Echo "ファイルを作成できませんでした" WScript.Quit(1) End If End If End If

  • C言語で前面表示や、特定のファイル検索方法を教えてください!

    VBで作ったソフトを、今C言語で作り変えています。 そのソフトは前面表示になっており、プログラムの始めに、特定のファイルがあるかどうか調べています。 ネット上で探しているのですが、見つかりません。 知っている人がいれば、どうか教えてください。 後、VBでファイルを調べるプログラムは、 If System.IO.File.Exists(ファイル名) = True Then あった場合に動作させるプログラム Else 無かった場合に動作させるプログラム End If です。

  • VBSでのファイル読込、出力操作について

    いつもありがとうございます。 掲題の件について、ご教授頂けますでしょうか。 下記のように『start.vbs』を実行すると『a.txt』の行に記載されている実行ファイル名を読み込み 『test.vbs』にファイル名分のコマンドを書き込みしたいです。 例) ----------------------------- start.vbs (作成途中) ----------------------------- Set objWShell = CreateObject("wscript.shell") Set objFso = CreateObject("Scripting.FileSystemObject") Set objFile = objFso.OpenTextFile("c:\a.txt", 1, False) ' 出力先ファイル Set objVBSFile = objFSO.CreateTextFile(c:\test.vbs, True) If Err.Number > 0 Then WScript.Echo "Open Error" Else Do Until objFile.AtEndOfStream objVBSFile.WriteLine(objFile.ReadLine) Loop End If ----------------------------- a.txt ----------------------------- adobe.exe photoshop.exe ****.exe    ・    ・    ・ ------------------------------ start.vbs ------------------------------ objWShell.Run "cmd.exe c:\adobe.exe ", 0, True objWShell.Run "cmd.exe c:\photoshop.exe ", 0, True objWShell.Run "cmd.exe c:\****.exe ", 0, True    ・    ・    ・ vbsをサイトを参考にして作ってはいるものの、start.vbsを実行すると a.txtのファイル名をvbsに書き込むのが限界です。 少しずつ勉強していくのですが、本件少し早めに作りたいという背景があり ご教授頂けませんでしょうか。 また、わかりにくい説明となっておりますが どうぞ宜しくお願い致します。

  • ファイルの存在チェックとエンコード

    自分なりに調べてファイルの存在チェック後、filemtime順にソートを する処理を書いてみましたがいまいち自信がないので、ご教授お願いします。 後、エンコードがうまくいかないのか日本語を出力しても表示がされません。 ご指摘ご教授お願いします。 <html> <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP" /> <?php //ファイルの存在チェック if (file_exists('hoge01.html')) { $page['hoge1.htm'] = filemtime('hoge01.html'); } if (file_exists('hoge02.html')) { $page['hoge2.htm'] = filemtime('hoge02.html'); } if (file_exists('hoge03.html')) { $page['hoge3.htm'] = filemtime('hoge03.html'); } //ファイルが空の場合の処理 if($page == false) { echo "ファイルが存在しません。"; } //ファイルが存在すればfilemtime順にソートの処理 else{ asort($page); foreach($page as $key => $value){ echo $key; echo "<br>"; echo "<hr>"; } } ?> </html>

    • 締切済み
    • PHP
  • VBS でプログラムを先頭から再試行

    VBSの実行中に、プログラムを先頭から再試行させるにはどうしたらいいですか? 2重起動ではなく、あくまでプログラム自身のリスタートです。 処理 A num = msgbox ("プログラムの再試行",5) if num = 4 then '再試行が押されたなら リスタート else 'キャンセルなら WScript.Quit end if 処理 B 上記の「リスタート」の部分の記述をお願いします。

  • ある名前のファイルが存在するかどうか判断できますか?

    データファイル(txt)にデータをタブ区切りで持っていて、 PHPでそれを読み込み整形して表示する、ということをやっています。 (リンク集や一言BBSのようなものです) このデータファイルを複数用意して、 その都度指定したものを表示させたいと考えています。 既にファイルが存在している時は問題無いのですが、 存在しなかった場合にfopen(r)では新規作成できないので エラーが出てしまいます。 そこで、ある名前のtxtファイルが存在すれば表示、 存在しなければ違うもの(メッセージなど)を表示できるよう if文などで判断するには、どうしたら良いでしょうか。。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • Visual C++でのCreateMutex

    次のようなプログラムで、ある実行ファイルが既に起動しているかどうかをチェックしています。 hMutex=CreateMutex(NULL, TRUE, "filename"); if(GetLastError() == ERROR_ALREADY_EXISTS){   A } else{   B } C++で作成したファイルが起動していると、Aの方に抜けて、起動をとらえられるのですが VBで作成したファイルは起動していても、Bの方に抜けて、起動をとらえられません。 何が悪いのでしょうか?

  • vbsのif文について

    vbsでプログラムを作成しているのですが、if文の使い方が良くわからないので教えてください。以下のような構造のものを作成したいです。 例)JAVA if(i==0){   if(i==1){   } }else{ }

専門家に質問してみよう