2014-09-23 304 views
0

我有一個工作簿設置了3個單獨的選項卡/表,並且我試圖對此工作簿執行3路LEFT JOIN查詢(使用SQL通過在Excel 03)的ADODB連接上的CommandText框,我得到一個語法錯誤(缺少運算符)MSGBOX:EXCEL VBA/ADODB連接/ LEFT JOIN 3個表SQL - 語法錯誤

SELECT B.[Business], A.[book], C.[bus_area] 

FROM [Bon$] as A LEFT JOIN [DM$] as B ON (A.[book] = B.[SystemBookName]) 
LEFT JOIN [BA$] as C ON B.[SystemBookName] = C.[portfolio_name] 

WHERE A.[area] NOT LIKE "%TEST%" 

我知道這可能是由於一些語法錯誤/或在哪裏放置paranthesis,但我嘗試了多種組合,它似乎沒有工作。有任何想法嗎?

非常感謝

+0

刪除'(''在FROM([苯教$]' – 2014-09-23 10:04:35

+0

感謝克林斯曼 - 我有,但仍然得到了一個錯誤更新我的職務雖然。 – DC1 2014-09-23 11:06:35

回答

0

啊我想出了爲什麼。該代碼被拋出,因爲它看到它丟失了運算符FROM之前的第二個 LEFT JOIN。所以我在FROM和第二個LEFT JOIN之後放置了所有的東西,它起作用了。

SELECT B.[Business], A.[book], C.[bus_area] 

FROM ([Bon$] as A LEFT JOIN [DM$] as B ON A.[book] = B.[SystemBookName]) 
LEFT JOIN [BA$] as C ON B.[SystemBookName] = C.[portfolio_name] 

WHERE A.[area] NOT LIKE "%TEST%"