Oii Guilherme, tudo bem?
Quando uma planilha do Excel já está aberta e você tenta manipulá-la com o Python usando a biblioteca pywin32, é importante referenciar a instância do Excel que já está em execução, em vez de tentar abrir o arquivo novamente.
import win32com.client
# Conectar-se à instância do Excel que já está em execução
excel = win32com.client.Dispatch("Excel.Application")
# Obter a referência à planilha aberta
workbook = excel.Workbooks("nome_da_sua_planilha.xlsx")
# Agora você pode manipular a planilha como desejar
sheet = workbook.Sheets("Nome_da_Sua_Aba")
# Exemplo: escrever um valor em uma célula
sheet.Range("A1").Value = "Olá, Mundo!"
# Se precisar salvar as alterações
workbook.Save()
Lembra de substituir "nome_da_sua_planilha.xlsx"
pelo nome real do seu arquivo e "Nome_da_Sua_Aba"
pelo nome da aba que você deseja manipular.
Algumas dicas adicionais:
- Verifique se o nome do arquivo e da aba estão corretos.
- Se houver mais de uma instância do Excel aberta, você pode precisar iterar sobre as instâncias para encontrar a correta.
- Lembre-se de que o Excel deve estar aberto e a planilha deve estar visível para que o script funcione corretamente.
Esse é um caminho que você pode seguir, você pode ter que fazer modificações no seu projeto, espero que te ajude.
Um abraço.