win32com_FomHXBC(使用win32com.clientl来自建函数:自动打开excel、word应用,并添加数据。)

'''
win32com_FromHXBC.py

(使用win32com.clientl来自建函数:自动打开excel、word应用,并添加数据。)


使用:
excel.py
From 核心编程
'''


# =============================================================================
# #自建函数:动打开excel、word应用,并添加数据。
# =============================================================================
import tkinter as tk
from time import sleep
from tkinter.messagebox import showwarning                     #引入视窗设计模块,用来最后弹出提示框
import win32com.client as win32                                #引入 组件对象模型 客户端编程


warn=lambda app: showwarning(app,'Exit?')                      #匿名函数弹出提示框  参数(标题,内容)
RANGE=range(3,8)

#自建函数  
#自动打开excel,并写入数据
def excel():
    app='Excel'
    xl=win32.gencache.EnsureDispatch('%s.Application'%app)     #静态调度  打开应用  区别于动态调度(win32com.client.Dispatch())
    ss=xl.Workbooks.Add()                                      #添加工作簿
    sh=ss.ActiveSheet                                          #获取活跃表单
    xl.Visible=True                                            #工作簿可见
    sleep(1)                                                   #暂停1秒,以看清步骤
    
    sh.Cells(1,1).Value='Python-to-%s Demo'%app                #单元格1行1列添加数据
    sleep(1)
    
    for i in RANGE:
        sh.Cells(i,1).Value='Line %d'%i                        #循环添加数据
        sleep(1)
    
    sh.Cells(i+2,1).Value='Th-th-th-that is all folks!'        #循环添加数据完成后隔一行添加数据
    
    warn(app)                                                  #匿名函数应用
    ss.Close(False)                                            #工作簿关闭  参数(不保存)
    xl.Application.Quit()                                      #应用退出


#自建函数
#自动打开word,并写入数据
def word():
    app='Word'
    word=win32.gencache.EnsureDispatch('%s.Application'%app)   #静态调度  打开应用  区别于动态调度(win32com.client.Dispatch())
    doc=word.Documents.Add()                                   #添加word文档
    word.Visible=True                                          #显示可见
    sleep(1)                                                   #暂停1秒,以看清步骤
    
    
    rng=doc.Range(0,0)                                         #指定行列
    rng.InsertAfter('Python-to-%s Test\r\n\r\n' % app)         #在指定行列末尾插入内容
    sleep(1)
    
    for i in RANGE:
        rng.InsertAfter('Line %d \r\n'%i)                      #循环操作,在指定行列末尾插入内容
        sleep(1)
        
    rng.InsertAfter('\r\nTh-th-th-that is all folks!\r\n')     #末尾插入内容
    
    warn(app)                                                  #匿名函数弹出提示框  参数(标题,内容)
    doc.Close(False)                                           #文档关闭,参数(不保存)
    word.Application.Quit()                                    #word程序退出



#主程序入口
if __name__=="__main__":
    tk.Tk().withdraw()                                         #Tk顶层窗口隐藏,只为最后显示提示框即可
    excel()                                                    #自动打开excel,并写入数据
    word()                                                     #自动打开word,并写入数据。







  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值