実現したいこと
ネットで検索して、「Excelファイルを開かずにシート名をチェック」するVBAコードを試しました。
どのページを参考にしたか忘れましたが、同様の情報は複数ありました。ありがとうございました。
https://binary-star.net/excel-vba-adox-get-sheets
【ExcelVBA】ブックを開かないでワークシート名を抽出
https://excel-ubara.com/excelvba5/EXCEL122.html
Excelファイルを開かずにシート名をチェック
https://ray88.hatenablog.com/entry/2022/05/28/070901
ファイルを開かずにシート名をまとめて取得する
など
発生している問題・分からないこと
ファイル名に「=」が含まれているとき、ADODB.ConnectionのOpenがエラーになるようです。
エラーメッセージ
error
1実行時エラー'-2147467259(800040005)' 2インストール可能なISAMドライバーが見つかりませんでした。
該当のソースコード
VBA
1Sub test() 2 Dim objCn As New ADODB.Connection 3 4 objCn.Provider = "Microsoft.ACE.OLEDB.12.0" 5 objCn.Properties("Extended Properties") = "Excel 12.0" 6 objCn.Open "c:\work\=.xlsx" '←ここでエラー!! 7 8 '(省略) 9 10End Sub 11
試したこと・調べたこと
上記の詳細・結果
自分なりに調べましたが、ファイル名に「=」を含む場合のエラーを回避できませんでした。
実際にはループして、大量のファイルを処理します。ファイル名に「=」を含む場合でも問題回避できる方法を教えてください。
補足
特になし
0 コメント