python打开excel表_Python启动Excel
通過(guò)簡(jiǎn)單的實(shí)例實(shí)現(xiàn)Python與Excel程序?qū)崿F(xiàn)交互控制。
需要安裝pywin32,根據(jù)自己的實(shí)際情況選擇下載版本
引入組件import win32com.client, win32process
開(kāi)始啟動(dòng)Excel
win32com.client.Dispatch(‘Excel.Application‘):啟動(dòng)Excel進(jìn)程,如果系統(tǒng)內(nèi)存中存在Excel進(jìn)程則直接使用現(xiàn)有的進(jìn)程不會(huì)新增
win32com.client.DispatchEx(‘Excel.Application‘):啟動(dòng)一個(gè)新的Excel進(jìn)程
win32com.client.gencache.EnsureDispatch(‘Excel.Application‘):和第一情況一樣,但是會(huì)檢測(cè)是否存在緩存文件。生成常量緩存文件便于調(diào)用程序的常量參數(shù)如:win32com.client.constants.xlCalculationManual等。一旦緩存生成,三種方式都可以調(diào)用常量參數(shù)
緩存文件的目錄:import os
print os.path.join(win32com.__gen_path__, str(win32com.client.gencache.GetClassForProgID(‘Excel.Application‘)).split(‘.‘)[2])
這里測(cè)試我們選擇桌面交互的方式控制已開(kāi)啟的空白工作簿xlApp = win32com.client.gencache.EnsureDispatch(‘Excel.Application‘)
print (xlApp.Version, xlApp.Caption)
獲取Excel進(jìn)程IdPid = win32process.GetWindowThreadProcessId(xlApp.Hwnd)[1]
print Pid
控制活動(dòng)工作表Sht = xlApp.ActiveWorkbook.ActiveSheet
print Sht.Name
import datetime
Sht.Name = datetime.datetime.today().strftime(‘%Y%m%d‘)
print Sht.Name
單元格讀寫(xiě)操作
1. 九九乘法表Sht.Range(Sht.Cells(1,1), Sht.Cells(9,9)).Formula = ‘=IF(COLUMN()>ROW(),"",CONCATENATE(COLUMN(),"x",ROW(),"=",COLUMN()*ROW()))‘
2. 批量讀取print Sht.Range(Sht.Cells(1,1), Sht.Cells(9,9)).Value
3. 簡(jiǎn)單了解Value、Value2、Text三者的區(qū)別A10 = Sht.Range(‘A10‘)
A10.Value = datetime.datetime.today()
print (A10.Value, A10.Value2, A10.Text)
上圖:
(未完)
原文地址:http://indie.blog.51cto.com/2806716/1626378
總結(jié)
以上是生活随笔為你收集整理的python打开excel表_Python启动Excel的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python什么模块动态调用链接库_py
- 下一篇: python for loop步进值_p