python调用excel中VBA代码

 

python中调用excel中的VBA代码,本机需要安装python以及该python版本对应的“pywin32-214.win32-py2.5.exe”

 

 

#!/usr/bin/env python
#-*- encoding: gb2312 -*-
#-*- coding:gb2312 -*-

import os,time
import os.path

import win32com.client
import sys
reload(sys)
sys.setdefaultencoding('gb2312')


def CallVba():
    xlApp = win32com.client.Dispatch('Excel.Application')
    xlApp.visiable = 1 #此行设置打开的excel表格为可见状态;忽略excel表格默认不可见
    
    #打开excel表格文件
    xlBook = xlApp.workbooks.Open(toolPath)
    
    
    #ExecuteExcel4Macro函数的参数必须为字符串类型
    #在该字符串参数中,依次包含“宏函数所在的excel表格名称”+“宏函数的名称”+“宏函数的参数”
    #在宏函数的参数中,字符串参数filePath需要在两边分别加上一个“,
    
    
    #strPara = xlBook.Name + '!analyseFluxLog("'+参数1+ '","' + 参数2 + '")'
    strPara = xlBook.Name + '!Calcaculte()'
    status = xlApp.ExecuteExcel4Macro(strPara)
    xlBook.colse(SaveChanges= False) #关闭excel,不保存


 

你可能感兴趣的:(python,VBA)