![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
out.csvファイルに追記していくにはどのように記述すればいいのでしょうか?
アドバイス下さい。
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("c:\test.csv")
'objFile.ReadLine
Do While Not objFile.AtEndOfStream
StrLine = objFile.ReadLine
MyString = split(StrLine,",")
'msgbox Mid(MyString(0),2,10)
'MyString = split(objFile.ReadLine,",")
if Mid(MyString(0),2,10) = "(PDH-CSV 4" then
Set objWFile=objFSO.OpenTextFile("c:\out.csv",2,true)
objWFile.write(StrLine)
msgbox "!!!"
end if
'
if Mid(MyString(0),2,10) = DateString then
Set objWFile=objFSO.OpenTextFile("c:\out.csv",2,true)
objWFile.write(StrLine)
''msgbox Mid(MyString(0),2,10)
msgbox "???"
end if
loop
objFile.close
Set objFSO = Nothing
Set objFile = Nothing
No.4ベストアンサー
- 回答日時:
あ、、、見落としてました(==;
>ファイルが開いたままになっている為、開けないと言っているのでしょうか?
そうです。
同じファイルを2つ同時にopenする事は、出来ません。
書き込み前に out.csvファイルをいったん close
してください。
てより、、、open処理が繰り返し内にあるのか(=w=;
Do Loop から外出しした方がいいかも、、。
もしくは、初めの一回だけOpenするように、flag持たすとか。
この回答への補足
書き込み用ファイルをloopの外に出したんですが、if文の中で追記するようにするにはどのようにすればいいのでしょうか?
また、Flagを立てるとはどういう事でしょうか?恐れ入りますが、アドバイスの方宜しくお願い致します。
No.5
- 回答日時:
気になったんですが、、(==; 宿題とかじゃないよね、、。
とりあえず、面倒なので、書いちゃいます。
(略)
' ここ、処理毎に新規でファイル作成の場合は 2
' 前回処理の内容を残すなら 8
Set objWFile=objFSO.OpenTextFile("c:\out.csv",8,true)
Do While Not objFile.AtEndOfStream
StrLine = objFile.ReadLine
MyString = split(StrLine,",")
if Mid(MyString(0),2,10) = "(PDH-CSV 4" then
objWFile.write(StrLine)
msgbox "!!!"
end if
if Mid(MyString(0),2,10) = DateString then
objWFile.write(StrLine)
msgbox "???"
end if
loop
objFile.close
objWFile.close
Set objFSO = Nothing
Set objFile = Nothing
>Flagを立てるとはどういう事でしょうか
忘れてください。(--; やり方のひとつですから、。
No.3
- 回答日時:
'800A0046'
は、書き込み権限のエラーです。
IIS なら、
IIS設定の「匿名アクセスで使用されるアカウント」
をAdmin権限に変更してください。
また、前回動かしたASPがファイル掴んだままになって
落ちた場合もそんな風になったから、、、
一応再起動確認もしてみてください。
この回答への補足
アクセス権は問題なく、再起動しても変わりません。
読み込むCSVが、
"09/26/2005 0:00:00,aaa,bbb,ccc"
"09/26/2005 0:00:15,aaa,bbb,ccc"
"09/26/2005 0:00:30,aaa,bbb,ccc"
"09/26/2005 0:00:45,aaa,bbb,ccc"
"09/26/2005 0:01:00,aaa,bbb,ccc"
と言った感じにログがあります。
日付で比較し一致したら、ファイルに追記する仕様なんですが、1行目を書き込んだ際に、ファイルが開いたままになっている為、開けないと言っているのでしょうか?
No.1
- 回答日時:
ForReading1
ファイルを読み取り専用として開きます。このファイルには書き込むことができません。
ForWriting2
ファイルを書き込み専用として開きます。
ForAppending8
ファイルを開き、ファイルの最後に追加して書き込みます。
例:
fso.OpenTextFile("c:\out.csv", ForAppending, True)
要は、
Set objWFile=objFSO.OpenTextFile("c:\out.csv",2,true)
の 2 が 間違い
この回答への補足
レスありがとうございます。
2→8に変えてみたんですが、エラーが出力され追記できない状態となっています。何故なんでしょうか?アドバイス下さい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) FileSearch2007に変わる構文について 1 2022/12/16 16:57
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) オブジェクトが見つかりません 1 2023/06/24 19:43
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) VBAが止まります。 3 2022/08/31 14:09
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) フォルダの場所を可変にしたいです(マクロ) 4 2023/05/11 10:00
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
カンマ区切りのCSVファイルから...
-
csvファイルでの日付設定「yyyy...
-
マクロから出力されるcsvのダブ...
-
バッチでCSVを処理する時、空の...
-
巨大なCSVの加工(指定列のみの...
-
csvファイル 項目数取得
-
c#でcsvから指定の1行だけを読...
-
VBS or BATでCSVファイルに入っ...
-
今Pythonを勉強し始めたのです...
-
特定文字を入ってるCSVの特定の...
-
VB6.0 CSVファイル読み込みに...
-
CSV形式のファイルを読み込んで...
-
Rについての質問です。 Abc.csv...
-
VBScriptからEXCELのVBAコマン...
-
PHP.laravelについて
-
VBScriptの関数化
-
VBAでcsvファイルを読み込んで...
-
CSVファイル作成
-
CSV形式での保存時に”文字列...
-
csvファイルを列数ごとに分割す...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カンマ区切りのCSVファイルから...
-
csvファイル 項目数取得
-
CSV形式での保存時に”文字列...
-
マクロから出力されるcsvのダブ...
-
csvファイルでの日付設定「yyyy...
-
複数のcsvファイルをExcelに一...
-
バッチでCSVを処理する時、空の...
-
エクセルVBA 大容量CSVファイル...
-
データ解析ソフトRでのファイル...
-
VBAでcsvファイルを読み込んで...
-
csvファイルのデータの一部を取...
-
複数のCSVファイルのAccessテー...
-
CSVファイル作成
-
【C#】パス名で無効な文字
-
csvファイルのデータの間引きを...
-
csvファイルを列数ごとに分割す...
-
エクセル形式のファイルの読み込み
-
【エクセル マクロ】読み込ん...
-
CSVファイルの項目行を削除...
-
c#でcsvから指定の1行だけを読...
おすすめ情報