标签:python excel vba excel-vba win32com
我想使用Python在Data.csv中的工作表上运行MacroBook.xlsm中包含的宏.
通常在excel中,我打开了两个文件并将焦点移到Data.csv文件并从MacroBook运行宏. python脚本每天下载Data.csv文件,所以我不能将宏放在该文件中.
这是我的代码:
import win32com.client
import os
import xl
excel = win32com.client.Dispatch("Excel.Application")
macrowb = xl.Workbook('C:\MacroBook.xlsm')
wb1 = xl.Workbook('C:\Database.csv')
excel.Run("FilterLoans")
我收到一个错误,
pywintypes.com_error: (-2147352567, ‘Exception occurred.’, (0,
u’Microsoft Excel’, u”Cannot run the macro ‘FilterLoans’. The macro
may not be available in this workbook or all macros may be disabled.”,
u’xlmain11.chm’, 0, -2146827284), None)
该错误表明Filter.coans在Database.csv文件中不可用…如何导入它?
解决方法:
1)您不能在* .csv文件上拥有VBA.您需要* .xlsm文件作为活动工作簿.如果您的宏知道如何找到它,我认为您根本不需要打开* .csv文件.
2)在Office Excel中启用VBA模块访问:
File
options
Trust Center
Trust Center Settings
Macro Settings
Enable VBA access
3)我正在使用此函数来运行宏:
excel.Application.Run("FilterLoans")
标签:python,excel,vba,excel-vba,win32com 来源: https://codeday.me/bug/20190929/1831588.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。