EXCEL C/ WINDOWS SERVICE
14/11/2011
0
Boa Tarde a Todos.
Tenho um windows service que deveria gerar uma planilha abrir uma planilha excel fazer alterações e salvar.
O código é simples...
LCID := LOCALE_USER_DEFAULT;
Excelws := CreateOleObject(Excel.Application);
ExcelWs.Workbooks.open(Extractfilepath(paramstr(0)) + Arquivo1.xlsx);
ExcelWs.Cells.Item[1, 2] := AB;
ExcelWs.Cells.Item[1, 3] := BC;
ExcelWs.Save;
O problema está no comando para abrir arquivo da planilha que gera o seguinte erro:
O Microsoft Office Excel não pode acessar o arquivo Arquivo1.xlsx. Há várias razões possíveis:
• O nome do arquivo ou caminho não existe.
• O arquivo está sendo usado por outro programa.
• O nome da pasta de trabalho que você está tentando salvar é o mesmo de outra pasta de trabalho aberta no momento
Vale lembrar que esse mesmo código funciona num projeto windows form normal.
Alguém poderia me ajudar por favor?
Tenho um windows service que deveria gerar uma planilha abrir uma planilha excel fazer alterações e salvar.
O código é simples...
LCID := LOCALE_USER_DEFAULT;
Excelws := CreateOleObject(Excel.Application);
ExcelWs.Workbooks.open(Extractfilepath(paramstr(0)) + Arquivo1.xlsx);
ExcelWs.Cells.Item[1, 2] := AB;
ExcelWs.Cells.Item[1, 3] := BC;
ExcelWs.Save;
O problema está no comando para abrir arquivo da planilha que gera o seguinte erro:
O Microsoft Office Excel não pode acessar o arquivo Arquivo1.xlsx. Há várias razões possíveis:
• O nome do arquivo ou caminho não existe.
• O arquivo está sendo usado por outro programa.
• O nome da pasta de trabalho que você está tentando salvar é o mesmo de outra pasta de trabalho aberta no momento
Vale lembrar que esse mesmo código funciona num projeto windows form normal.
Alguém poderia me ajudar por favor?
Sergio Giannotta
Curtir tópico
+ 0
Responder
Posts
16/11/2011
Leonardo Xavier
Tente isto:
LCID := LOCALE_USER_DEFAULT; Excelws := CreateOleObject(Excel.Application); sleep(200); ExcelWs.Workbooks.open(Extractfilepath(paramstr(0)) + Arquivo1.xlsx); ExcelWs.Cells.Item[1, 2] := AB; ExcelWs.Cells.Item[1, 3] := BC; ExcelWs.Save;
Responder
04/10/2019
Veirano Advogados
conseguiu ver essa questão? Estou com o mesmo problema
Responder
Clique aqui para fazer login e interagir na Comunidade :)