在excel 2007中使用一个类似于在excel中创建工作簿的方法(比如在vb中创建一个工作簿)而不是使用一个现有的access来创建:
import win32com.client as win32
import comtypes, comtypes.client
xl = win32.gencache.EnsureDispatch('Excel.Application')
xl.Visible = True
ss = xl.Workbooks.Add()
sh = ss.ActiveSheet
xlmodule = ss.VBProject.VBComponents.Add(1) # vbext_ct_StdModule
sCode = '''sub VBAMacro()
msgbox "VBA Macro called"
end sub'''
xlmodule.CodeModule.AddFromString(sCode)
创建新工作簿的唯一原因是明确要求Excel这样做。这条线:
…正在调用
Workbooks
对象的Add
方法。正如the documentation所说,而且正如你所期望的那样,这个名字:如果你想访问一个现有的呢?与其他集合一样,}和{}:
Workbooks
有{因此,您可以获得第一个现有的工作簿,或者您可以遍历所有这些工作簿以找到您想要的名称,或者……任何合适的名称。在
如果要打开磁盘上的文件并访问该工作簿,该怎么办?}:
Workbooks
还有{如果不清楚如何使用这些方法,请在文档中单击它们,它们会为您提供完整的签名和对它们所做操作的完整描述。例如,^{} 看起来像:
^{pr2}$从下面的图表中,您可以看到所有这些参数都是可选的。{cd9>很可能是你想要的。在
相关问题 更多 >
编程相关推荐