zoukankan      html  css  js  c++  java
  • Python对Excel的操作(模块win32com)

    前言:

      我在编写对加密的xlsm格式的文件进行读数据操作,总结的内容和遇到问题。

    使用win32com写入Excel时注意,一定要退出Excel,否则下次运行会出错!

     1 import win32com.client as win32
     2 import os
     3 excel = win32.gencache.EnsureDispatch('Excel.Application')
     4 #只接受绝对路径
     5 ABSPATH = os.path.abspath(os.path.dirname(__file__))
     6 password = 'password'
     7 workbook = excel.Workbooks.Open(os.path.join(ABSPATH,'output_file.xlsx'),False,True,None,Password = password)
     8 #获得工作表
     9 wb_sheet = workbook.Worksheets(1)
    10 #获取sheet的名字
    11 sheet_name = workbook.Sheets[1].Name
    12 #计算文件中实际有内容的行数
    13 num_wb = wb_sheet.UsedRange.Rows.Count
    14 #保存工作薄
    15 workbook.Save()
    16 #退出Excel
    17 excel.Application.Quit()

    将程序打包时运行出错:

    错误:

    NameError: name '__file__' is not defined

    解决办法:

    1 import os.path
    2 
    3 try:
    4     ABSPATH = os.path.abspath(os.path.dirname(__file__))
    5 except NameError:  # We are the main py2exe script, not a module
    6     import sys
    7     ABSPATH = os.path.abspath(os.path.dirname(sys.argv[0]))

    参考:https://wenku.baidu.com/view/0bf12814102de2bd970588b9.html

       https://stackoverflow.com/questions/24140593/python-nameerror-name-file-is-not-defined

  • 相关阅读:
    PSP总结报告
    final版——爱阅APP功能说明书
    软件工程第十一次作业-例行报告
    感谢
    互评Beta版本——王者荣耀交流协会的PSP DAILY作品
    软件工程第十次作业-例行报告
    Beta版——爱阅APP功能说明书
    软件工程第九次作业-例行报告
    软件工程第八次作业-例行报告
    shell-条件分支循环
  • 原文地址:https://www.cnblogs.com/rn-05181226-rw/p/7201180.html
Copyright © 2011-2022 走看看