У меня есть файл Excel с подключением к базе данных Access, который обновляется при открытии файла Excel (Access 2010 и Excel 2010). Для заполнения таблицы используется запрос SQL. Когда-то этот запрос работал нормально:
SELECT U.WkEnd, U.Error, COUNT(U.Error) AS [Count], M.NumOpen
FROM tbl_002_Updates AS u
INNER JOIN
(SELECT Finish-Weekday(Finish,5)+7 AS WkEnd, COUNT(*) AS NumOpen FROM tbl_001_Master WHERE Status IN ('A', 'M')
GROUP BY Finish-Weekday(Finish,5)+7) AS M
ON M.WkEnd = U.WkEnd
WHERE U.Error IS NOT NULL AND Year(U.WkEnd) = 2020
GROUP BY U.WkEnd, U.Error, M.NumOpen
ORDER BY U.WkEnd;
Я обновил запрос следующим образом:
SELECT T.WkEnd, T.Error, T.WkNum, m.NumOpen
FROM
(
SELECT DISTINCT D.WkEnd As WkEnd, 'DED' As Error, NZ(P.WkNum, 0) As WkNum from tbl_002_Updates AS D LEFT JOIN
(SELECT WkEnd, Count(Error) As WkNum FROM tbl_002_Updates WHERE Error = 'DED' GROUP BY WkEnd) AS P
ON D.WkEnd = P.WkEnd
UNION
SELECT DISTINCT D.WkEnd As WkEnd, 'PCS' As Error, NZ(P.WkNum, 0) As WkNum from tbl_002_Updates AS D LEFT JOIN
(SELECT WkEnd, Count(Error) As WkNum FROM tbl_002_Updates WHERE Error = 'PCS' GROUP BY WkEnd) AS P
ON D.WkEnd = P.WkEnd
UNION
SELECT DISTINCT D.WkEnd As WkEnd, 'Planner' As Error, NZ(P.WkNum, 0) As WkNum from tbl_002_Updates AS D LEFT JOIN
(SELECT WkEnd, Count(Error) As WkNum FROM tbl_002_Updates WHERE Error = 'Planner' GROUP BY WkEnd) AS P
ON D.WkEnd = P.WkEnd
) AS T
INNER JOIN
(SELECT Finish-Weekday(Finish,5)+7 AS WkEnd, COUNT(*) AS NumOpen FROM tbl_001_Master WHERE Status IN ('A', 'M')
GROUP BY Finish-Weekday(Finish,5)+7) AS M
ON M.WkEnd = T.WkEnd
WHERE Year(T.WkEnd) = 2020
ORDER BY T.WkEnd;
Новый запрос работает нормально в Access. Я не изменил информацию об аутентификации или что-либо еще, только текст команды подключения к Excel, и теперь я получаю сообщения об ошибке «Запрос не выполнен или не удалось открыть таблицу базы данных», а затем «Не удалось выполнить следующий диапазон данных Refre sh».
Единственное, о чем я могу думать, - это то, что могут быть определенные функции или ключевые слова, которые работают в Access, но не работают в соединениях Excel с базами данных Access, но я ничего не могу найти в Интернете. Не уверен, что еще может привести к сбою.