Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Python中创建XLSM文件_Python_Excel_Openpyxl_Xlsm - Fatal编程技术网

如何在Python中创建XLSM文件

如何在Python中创建XLSM文件,python,excel,openpyxl,xlsm,Python,Excel,Openpyxl,Xlsm,有没有办法用python创建一个新的.XLSM文件? (或者) 有没有办法在python中从.XLS或.XLSX文件创建.XLSM文件 from openpyxl import Workbook wb = Workbook() wb.save('myExcelFile.xlsm') 我尝试了上述操作,但它创建了一个无法正常工作/损坏的文件。 提前感谢:)我对python或openpyxl库一无所知,但是这个剪贴可能会有所帮助,请参阅python注释。我在openpyxl文档中找到了它 它表示必

有没有办法用python创建一个新的.XLSM文件? (或者) 有没有办法在python中从.XLS或.XLSX文件创建.XLSM文件

from openpyxl import Workbook
wb = Workbook()
wb.save('myExcelFile.xlsm')
我尝试了上述操作,但它创建了一个无法正常工作/损坏的文件。
提前感谢:)

我对python或openpyxl库一无所知,但是这个剪贴可能会有所帮助,请参阅python注释。我在openpyxl文档中找到了它

它表示必须保持指定属性keep vba=true


我对python或openpyxl库一无所知,但是这个剪贴可能会有所帮助,请参阅python注释。我在openpyxl文档中找到了它

它表示必须保持指定属性keep vba=true


有趣的是,今天早些时候我问了一个完全相同的问题。我想出了一个答案(一点也不漂亮),但它奏效了。这是我的帖子,详细说明了答案,下面是我的代码:

from openpyxl import Workbook
from openpyxl import load_workbook

wb = Workbook()
ws = wb.active
ws['A1'] = 42
ws.append([1, 2, 3])
wb.save('new_document.xlsm')
wb1 = load_workbook('new_document.xlsm')
wb2 = load_workbook('new_document.xlsm', keep_vba=True)
wb2.save('new_document.xlsm')

有趣的是,今天早些时候我问了一个完全相同的问题。我想出了一个答案(一点也不漂亮),但它奏效了。这是我的帖子,详细说明了答案,下面是我的代码:

from openpyxl import Workbook
from openpyxl import load_workbook

wb = Workbook()
ws = wb.active
ws['A1'] = 42
ws.append([1, 2, 3])
wb.save('new_document.xlsm')
wb1 = load_workbook('new_document.xlsm')
wb2 = load_workbook('new_document.xlsm', keep_vba=True)
wb2.save('new_document.xlsm')

@加巴德弱者@Salvatore Allegra谢谢你的回答,谢谢:)

根据我的需要定制:

import pandas as pd
filename = 'Name_here' + '.xlsx'
writer = pd.ExcelWriter(filename, engine='xlsxwriter')

filename_macro = 'Name_here' + '.xlsm' 
workbook = writer.book
workbook.filename = filename_macro
workbook.add_vba_project('vbaProject.bin')
writer.save()
(1)这将创建一个新的.xlsm文件


(2)它允许附加包含宏的二进制文件

@Gharbad the Weak@Salvatore Allegra感谢您的回答,谢谢:)

根据我的需要定制:

import pandas as pd
filename = 'Name_here' + '.xlsx'
writer = pd.ExcelWriter(filename, engine='xlsxwriter')

filename_macro = 'Name_here' + '.xlsm' 
workbook = writer.book
workbook.filename = filename_macro
workbook.add_vba_project('vbaProject.bin')
writer.save()
(1)这将创建一个新的.xlsm文件


(2)它允许附加包含宏的二进制文件

只需创建一个XLSM模板并使用它。只需创建一个XLSM模板并使用它。