Каждый SELECT в UNION является отдельным запросом, поэтому вы не можете сделать два предложения WHERE внизу. Каждая часть должна иметь свое собственное ГДЕ, и каждая часть не знает о другой части (это вне контекста). Вместо этого обработайте весь набор результатов UNION как подзапрос для выполнения теста GROUP BY... HAVING
:
SELECT *
FROM
(
SELECT [table1].[Name], [table1].[Text], [table1].[Description], [table1].[TestDescription]
FROM [table1]
WHERE Table1.month IN ("April","May")
UNION ALL
SELECT [table2].[Name], [table2].[Text], [table2].[Description], [table2].[TestDescription]
FROM [table2]
WHERE Table2.month IN ("April","May")
) AS myUnion
GROUP BY [myUnion].[Name], [myUnion].[Text], [myUnion].[Description], [myUnion].[TestDescription]
HAVING COUNT(*) > 1;