У вас есть пара различных синтаксических проблем для решения.
Во-первых, похоже, что вы забыли кавычку в конце оператора set, которая затем нарушает цитирование остальной части вашего скрипта.
Во-вторых, как уже упоминали другие, у вас есть два начала, но только один конец.
Попробуйте это:
begin
declare @pathname NVARCHAR(max)
set @pathname = N'\\{DATAPATH}'
select @pathname
begin
exec (' drop_table mytable
select *
into mytable
from OPENROWSET(''Microsoft.ACE.OLEDB.12.0'',''Excel 12.0; IMEX=1; HDR=YES; Database =' + @pathname + ';'',
''SELECT * FROM [Sheet1$]'');
select *
from mytable')
end
end