Этот вопрос предназначен для вызова Python из Excel. В VBA вы бы сделали RunPython("import mymodule; mymodule.my_function()")
В Python у вас будет что-то вроде
from xlwings import Workbook, Sheet, Range
def my_function():
wb = Workbook.caller() # Create reference to calling Excel file
Range('A1:C3').clear_contents() # Clear some cells
Мой вопрос в том, что это будет работать для вашего первого экземпляра Excel. Но если у вас открыты два экземпляра и вы пытаетесь запустить код во втором экземпляре, вы получите поднятое исключение, говорящее: «Не удается установить соединение! Убедитесь, что вызывающая книга активна и открыто в первом экземпляре Excel».
Так что похоже, что это предназначено для работы только с первым экземпляром. Есть ли способ обойти это? Можете ли вы определить, в каком экземпляре вы находитесь в скрипте Python? Пользователь надеялся запустить макросы VBA, которые вызывают Excel в нескольких экземплярах.