def start():
    pythoncom.CoInitialize()
xl = win32com.client.Dispatch('Excel.Application')
xl_id = pythoncom.CoMarshalInterThreadInterfaceInStream(pythoncom.
    IID_IDispatch, xl)
thread = threading.Thread(target=run_in_thread, kwargs={'xl_id': xl_id})
thread.start()
thread.join()

def run_in_thread(xl_id):
    pythoncom.CoInitialize()
xl = win32com.client.Dispatch(pythoncom.CoGetInterfaceAndReleaseStream(
    xl_id, pythoncom.IID_IDispatch))
time.sleep(5)
if __name__ == '__main__':
    start()
Использование win32com с многопоточностью