『CSV出力できなくなり困っています』(たけ)
はじめまして。
VBAで作った履歴残しプログラムを使っています。
必要な情報を他のファイルにCSV追記保存するプログラムです。
そこで、最近急に履歴が保存できなくなってしまいました。考えられるのは
最近システムのアップデートが行われたのか、ファイルが自動保存になったり、
フォルダのエクセルシートの右にチェックマークが付いたりと、PCの様子が変わったことが原因かと思っています?
自動保存を切って再度履歴残しを行っても症状は変わらずです。
状況をうまく伝えられていないかもしれませんが、どなたかご教授をお願いいたします。
< 使用 Excel:Microsoft365、使用 OS:unknown >
原因を確定できるほど情報が提供されていませんが、 分かる範囲で推測するなら、
>ファイルが自動保存になった Excelのバージョンが新しくなった。
>フォルダのエクセルシートの右にチェックマークが付いた ファイルの保存場所がクラウド(やそれに類するもの)に変わった。
と思われるので、まずは取っ掛かりとして、 コード内で、関係するファイルのパスを確認してみてはいかがでしょうか。 (にわか) 2025/04/11(金) 08:19:45
ほぞ先のパスは確認しました。
それと、自宅のpcは上記の症状ですが
職場のpcでは今までどうり普通に保存できております。
すみません、この情報を付け加えておりませんでした。
(たけ) 2025/04/11(金) 09:34:59
Sub 一次書き込みデータCSV出力()
'複数セルの文字列をカンマ区切りで結合
'----------------------------------------------------------------------------------------
Dim 対象セルリスト As Range Set 対象セルリスト = Worksheets("Log").Range("J11:BR11").SpecialCells(xlCellTypeVisible)
' すべてのセル値をカンマで結合 Dim 結合文字列 As String Dim cell As Range For Each cell In 対象セルリスト 結合文字列 = 結合文字列 & "," & cell.Value Next
' 最初のカンマを消去 結合文字列 = Mid(結合文字列, 2) Worksheets("Log").Range("I11") = 結合文字列
' 結合セルCSV出力 '---------------------------------------------------------------------------------------- Dim MyPath As String Dim FName As String
On Error Resume Next
Dim LastRow As Integer
MyPath = ActiveWorkbook.Path FName = ActiveSheet.Name
Open MyPath & FName & ".csv" For Append As #1 '上記宣言パス、名前のCSVファイルを追記モードで開く
Print #1, Worksheets("Log").Range("I11") 'CSVファイルにログデータを書き込む
Worksheets("Log").Range("I11").Clear
Close #1
End Sub
(たけ) 2025/04/11(金) 16:16:32
>MyPath = ActiveWorkbook.Path
そこ、ホントに合っていますか? 常識的にはこうじゃないかなぁ。 ↓ MyPath = ActiveWorkbook.Path & "\"
(半平太) 2025/04/11(金) 16:43:09
> On Error Resume Next これは百害あって一利なしです。 異常事態が起きているのにそれを隠すだけですから。
(xyz) 2025/04/11(金) 16:55:17
自動保存を切り、デスクトップ上に新しいフォルダを作ってそこで起動させたところ、
正しくcsvファイルの出力が出来ました。
ご教授いただいた皆さま、ありがとうございました。
今後ともよろしくお願いいたします。
(たけ) 2025/04/11(金) 21:11:55
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.