ExcelVBAでCSVファイル上書き後の読み込み
マクロ1では元々存在するold.csvファイルを上書きしています。
old.csvはテキストエディタを使い、手で作ったファイルです。
マクロ2では、マクロ1で上書きされたold.csvファイルを読み込み
データが終了するまで処理します。
この時、old.csvは存在するのに
実行時エラー '3021'
BOFとEOFのいずれかがTrueになっているか、または現在のレコードが削除されています。
要求された操作には、現在のレコードが必要です。
となります。
どなたか解決していただけないでしょうか?
Excel2003 SP3です。
どうかよろしくお願いします。
マクロ1
FilePass = "c:\Documents and Settings\デスクトップ\old.csv"
A_CONcsv = "Driver={Microsoft Text Driver (*.txt; *.csv)}; " & _
"DBQ=c:\Documents and Settings\デスクトップ;" & _
"ReadOnly=1"
Call Old_data_UP(StrOld_data, A_CONcsv)
'old.csvファイル出力
Open FilePass For Output As #1
Print #1, StrOld_data
Close #1
Function Old_data_UP(FStrOld_data, CONcsv)
new_x.csvを読み込みold.csvを更新するための編集をしています。
(old.csvは最初だけ手で作り、次からはマクロ1で更新された物を使いたいです。)
省略します。
End Function
マクロ2
FilePass = "c:\Documents and Settings\デスクトップ\new_x.csv"
A_CONcsv = "Driver={Microsoft Text Driver (*.txt; *.csv)}; " & _
"DBQ=c:\Documents and Settings\デスクトップ;" & _
"ReadOnly=1"
A_CONxls = "Driver={Microsoft Excel Driver (*.xls)}; " & _
"DBQ=c:\Documents and Settings\デスクトップ\db\Mydata.xls;" & _
"ReadOnly=1"
Call data_match(StrNew_x, A_CONcsv, A_CONxls)
'new_x.csvファイル出力
Open FilePass For Output As #1
Print #1, StrNew_x
Close #1
Function data_match(FStrNew_x, CONcsv, CONxls)
new.csvとold.csvとMydata.xlsを読み込み
new_x.csvを出力するための編集をしています。
new.csvはテキストエディタを使い、手で作ったファイルです。
省略します。
End Function