狂自私

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

python Excel添加Excel附件

复制代码
# """
# 插入附件
import win32com.client 

if __name__ == "__main__":
    filename = r"23年09月.xlsx"
    xlApp = win32com.client.Dispatch('Excel.Application')
    xlApp.Visible = 0   #0不可见,1可见
    workbook = xlApp.Workbooks.Open(filename)
    附件数量=0
    for worksheet_index in range(1,workbook.Sheets.Count+1):
        worksheet = workbook.Sheets(worksheet_index)
        G=2 #附件所在的行数    
        Embedded_object = worksheet.OLEObjects()
        while G<100:
            附件名=worksheet.Cells(G, 7).Value
            if(None == 附件名):
                if(None != worksheet.Cells(G+1, 1).Value):
                    #没有添加过附件,这里,忽略
                    G+=7    #有6个内容加上本身
                    continue
                else:
                    #这个sheet没有内容了
                    break
            file_location = r"{}".format(附件名)    #运行前需要修改
            left_index=worksheet.Cells(G, 7).Left
            top_index=worksheet.Cells(G, 7).Top
            Embedded_object.Add(ClassType=None, Filename=file_location, Link=False, DisplayAsIcon=True,IconLabel=附件名,Left=left_index,Top = top_index,IconFileName=r"C:\Windows\Installer\{90160000-000F-0000-1000-0000000FF1CE}\xlicons.exe",IconIndex=0)   #IconFileName参数和时必须的,不确定值的时候,请使用Excel的录制宏功能获取,IconIndex=0是固定的
            附件数量+=1
            print("附件数量={}".format(附件数量))
            G+=7
            
    workbook.Save()
    xlApp.Quit()
复制代码

这里是以添加Excel附件为例,其中的IconFileName参数值是比较重要的,可以获得最佳的外观,建议先使用录制宏功能获取下对应的值在添加进来。

posted on   狂自私  阅读(305)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示