初めてstackoverflowを使用するので、ここに行きます...
CSV ファイルからデータを取得するために使用するマクロを Excel で実行しようとすると、断続的にエラーが発生します。通常、新しいセッションを開始するとエラーはなくなりますが、今回は特に永続的です。基本的に、以下の .Open 行でエラーが発生し、「実行時エラー '2147467259' (80004005) 不明なエラー」が表示されます。
Public Sub LoadFile()
file_path = Range("FlatFileLocation")
Set oConn = CreateObject("ADODB.Connection")
strcon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & file_path & "; Extended Properties=""text;HDR=Yes;FMT=Delimited(,)"";"
oConn.Open strcon
.....
他の情報:
1) アクセスしようとしているファイルが別のユーザーによって開かれていない
2) サブの最後で接続を閉じます。また、マシンを再起動しようとしたところ、最初にファイルを実行しようとしたときにエラーが発生しました
3) 既存のアドインを使用せずにセッションを開くと、機能しているように見えます。何らかのアドインの競合が発生しているかどうかを確認する方法はありますか?
CSVReaderの使用を提案する他の投稿がありました。このルートを試す前に私が持っている質問は次のとおりです。
1) 複数のユーザー マシンでこの CSVReader を使用できますか? ここでの問題は、多数のマシンにインストールする必要があることです。ただし、共有ドライブにファイルを配置できる場合があります。
2) 結果のファイルを SQL 文字列でクエリできますか? 現時点では、次のようなものを使用しています。
....
strsql = "SELECT * FROM ( " & strsql & " ) WHERE ( ABS(PrevRisk) + ABS(CurrRisk) >= " & RiskThreshold & " ) ;"
Set oResult = New ADODB.Recordset
oResult.Open strsql, oConn
....
よろしくお願いします。