常用VBA下SQL語法進行資料庫查詢
但這次使用的SQL語法查詢時
執行到ADODB.Connection.Execute(SQL語法)
Excel整個錯誤重啟,出現回報畫面
程式確認可正常連結DB進行查詢
嘗試以較簡易簡短的SQL進行查詢,是可以正常印出結果
可能是目前所要執行的SQL太長?JOIN太多TABLE? (JOIN四張TABLE)
[SQL語法大致如下]
str = "select a.x1,b.x2,a.x3,d.x4,d.x5,d.x6,e.x7,e.x8 " & _
"from AAA a " & _
"join BBB b on a.iii=b.xxx " & _
"join CCC c on a.jjj=c.yyy " & _
"join DDD d on c.kkk=d.zzz or c.lll=d.mmm " & _
"left join EEE e on d.nnn=e.ooo " & _
"where a.ppp='" & Worksheets(1).TextBox1.Value & "'"
我後來拉了一個VIEW直接SELECT VIEW查詢
但結果還是一樣@@
TABLE總筆數約3萬多筆,不知道是不是資料量太大
但其實按WHERE條件搜尋出來都只有5筆左右
向各位請益是否有解決方案
再請指教
謝謝 !
用VBA的Debug功能確認到那個程式述句出問題,再來看看如何處理。
這應該很難 debug
在網路上找了類似的情況 http://answers.microsoft.com/en-us/office/forum/office_2010-excel/excel-is-crashing-using-ado-object/d647029d-375a-4fc1-b1f4-d647743a7e0e
最後發問者修改了 ODBC 的設定才解決問題
或許可以試試個別 select 四張表 看看是不是其中一張會引起問題