Insert Into [Sheet1$] Values(...) 拋出:「操作必須使用一個可更新的查詢」Extended Properties='Excel 12.0; HDR=yes; IMEX=2':string strConn = "Provider=Microsoft.Ace.OleDb.12.0;Persist Security Info=False;" + "data source=" + @excelPath + ";Extended Properties='Excel 12.0; HDR=yes; IMEX=2'";
| 值 | 模式 | 說明 |
|---|---|---|
| 0 | Export mode | 唯寫 |
| 1 | Import mode | 唯讀 |
| 2 | Linked mode | 可讀寫(完全更新能力) |
按理 IMEX=2 應支援讀寫,但實測仍失敗。
嘗試 IMEX=0 → 成功!再測 IMEX=4、10 也成功,唯獨 1、2 失敗。推測為 ACE OLEDB 提供者在特定版本下的 Bug 或行為差異。
若遇到此錯誤且確認權限無誤,嘗試將 IMEX 設為 0、4 或 10 等非標準值可能繞過問題。本文環境為 WinForm,非 Web 應用(Web 需額外設定 IIS_IUSRS 權限)。