Boa tarde Fábio.
Encotrei algums tópicos com dúvidas similares a sua. Aparentemente, a questão ocorre quando o AutoHotkey possui permissão de administrador, mas o Excel não possui. Uma das soluções comentadas é abrir a instância do Excel pelo próprio AutoHotkey (ao invés de se conectar a uma instância existente). Você pode fazer isso usando
ComObjCreate() no lugar de
ComObjActive().
Depois que você cria uma nova sessão do Excel, você pode abrir um documento qualquer nela usando
Workbooks.open
Code: Select all
XL := ComObjCreate("Excel.Application")
WorkBook := XL.Workbooks.open("c:/exemplo.xlsx")
XL.Visible := True ; Uncoment this line to make the sheet visible.
OBS: Não se esqueça de ajustar corretamente o caminho do arquivo que deseja abrir na segunda linha do código acima.
Se você precisar mesmo abrir o arquivo manualmente e se conectar a ele depois, talvez o problema também possa ser resolvido simplesmente executando o Excel como administrador. Para fazer isso manualmente, basta ir na página do executável do Excel (normalmente fica em
c:/arquivos de programas/microsoft office ou outro caminho semelhante), clicar com o botão direito do mouse sobre o executável e escolher "executar como administrador". Depois que abrir você vai em Arquivo -> Abrir e abre a planilha que quer trabalhar. Pronto, a sua instância do excel também estará rodando como administrador.
Boa tarde Fábio.
Encotrei algums tópicos com dúvidas similares a sua. Aparentemente, a questão ocorre quando o AutoHotkey possui permissão de administrador, mas o Excel não possui. Uma das soluções comentadas é abrir a instância do Excel pelo próprio AutoHotkey (ao invés de se conectar a uma instância existente). Você pode fazer isso usando [c]ComObjCreate()[/c] no lugar de [c]ComObjActive()[/c].
:arrow: Depois que você cria uma nova sessão do Excel, você pode abrir um documento qualquer nela usando [c]Workbooks.open[/c]
[code]XL := ComObjCreate("Excel.Application")
WorkBook := XL.Workbooks.open("c:/exemplo.xlsx")
XL.Visible := True ; Uncoment this line to make the sheet visible.[/code]
OBS: Não se esqueça de ajustar corretamente o caminho do arquivo que deseja abrir na segunda linha do código acima.
Se você precisar mesmo abrir o arquivo manualmente e se conectar a ele depois, talvez o problema também possa ser resolvido simplesmente executando o Excel como administrador. Para fazer isso manualmente, basta ir na página do executável do Excel (normalmente fica em [c]c:/arquivos de programas/microsoft office[/c] ou outro caminho semelhante), clicar com o botão direito do mouse sobre o executável e escolher "executar como administrador". Depois que abrir você vai em Arquivo -> Abrir e abre a planilha que quer trabalhar. Pronto, a sua instância do excel também estará rodando como administrador.