
FSOを利用して、特定のファイルがなければ、FSO.CreateTextFileを使ってファイルを作成して、ログを記入します。
特定のファイルがあれば、FSO.OpenTextFileを使って追記します。
ファイルが存在しないので新規でファイル作成を行ってからログを記入するのははうまくいくのですが、ファイルが存在するので、ファイルを開いて追記する場合ががうまくできません。
何が原因なのでしょうか?
以下がそのプログラムです。
アドバイスをよろしくお願いします。
Dim excel_folder
excel_folder = ThisWorkbook.Path
excel_folder = excel_folder & "\log.txt"
Set objShell = CreateObject("Wscript.Shell")
Dim FSO
Set FSO = CreateObject("Scripting.FileSystemObject")
Dim stream, data_text
If FSO.fileexists(excel_folder) Then
Set stream = FSO.OpenTextFile(Filename:=excel_folder, IOMode:=ForAppending, Create:=True)
Else:
Set stream = FSO.CreateTextFile(Filename:=excel_folder, Overwrite:=True)
End If
data_text = "test"
stream.writeLine (data_text)
stream.writeLine (vbCrLf)
stream.Close
No.1ベストアンサー
- 回答日時:
Set stream = FSO.OpenTextFile(Filename:=excel_folder, IOMode:=ForAppending, Create:=True)
を
Set stream = FSO.OpenTextFile(excel_folder, 8, True)
としてみたらどうでしょうか
この場合、ファイルが存在しない場合、新しくファイルを作るので、
ファイルの存在確認は必要ないような気がします。
ありがとうございます。
できました。
IOMode:=ForAppendingがだめみたいです。
また、ファイルの有無も確認しなくてもできました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA This Workbookモジュールを別ファイルにコピーする方法 1 2022/09/14 01:51
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) Excel VBAについて、 フォルダ内のファイルを全て開きたい場合、 FSOを使えば、Dirは使わ 1 2023/01/27 13:18
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) vbaの構文の修正相談(xmlファイルを順に開いてコピペ作業) 1 2023/04/22 01:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
エクセルでファイルを開かずに...
-
Excel 2枚目のブックが開かな...
-
パワーポイントをエクセルファ...
-
メモ帳で開く設定を元に戻したい。
-
エクセルで「500時間」を「何日...
-
EXCELで上書き保存しないと反映...
-
エクセルを上書き保存したのに...
-
エクセル GROUPBY関数について...
-
エクセルのカメラ機能を、700個...
-
Windows11で画面下の帯の部分で...
-
エクセルでファイルを閉じても...
-
Accessのクエリの結果を、既存...
-
エクセルで数値の上3桁で切捨...
-
エクセル関数の解読サイトなん...
-
エクセルで複数のブックで「元...
-
xl
-
エクセルでの入力後の動きが遅い
-
メモ帳(拡張子log)の数字デー...
-
CSVファイルでVBAを動かす方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
エクセルでファイルを開かずに...
-
Excel 2枚目のブックが開かな...
-
CPU使用率が100%となっ...
-
エクセルで他のファイルのセル...
-
エクセルのファイルが開けない
-
複数のtxtの特定部分を抽出し、...
-
エクセルでハイパーリンクが貼...
-
エクセルでファイル名やシート...
-
エクセルマクロ 数式【VLOOKUP...
-
複数シートを持つExcelファイル...
-
ふたつのファイルを比較し違い...
-
EXCELのファイルが変に・・・
-
エクセル(Excel)で別ファイルと...
-
EXCELで関数が使えなくなった?
-
excel マクロについて
-
エクセルマクロ(vba)のFSO.Open...
-
ExcelVBAについて質問致します ...
-
EXCELを複数起動して別ファイル...
-
PhotoshopでExcelのファイルが...
おすすめ情報