精华内容
下载资源
问答
  • python处理excel

    2016-02-26 14:48:10
    之前在网上找了个excel宏改了下给他们 但是毕竟不是自己写的 给他们用起来会有很多不方便的地方没法改 又不会VB 于是打算用python写个小脚本 本来觉得挺简单 一个小时就能搞定 结果越来越发现是个深坑………… ...

    最近需要帮助数据部门将一个文件下的多个excel文件合成为一个

    之前在网上找了个excel宏改了下给他们 但是毕竟不是自己写的 给他们用起来会有很多不方便的地方没法改

    因为不会VB 于是打算用python写个小脚本 本来觉得挺简单 一个小时就能搞定

    结果越来越发现是个深坑…………


    由于之前也用python操作过过excel,就自然的用xlrd和xlwt开始处理。

    发现xlrd只能打开xls,没法打开xlsx。更新后问题解决

    然后写的时候又发现xlwt只能写成xls,不能写成xlsx。

    只好换个模块试试。


    听说openpyxl能操作xlsx 于是装了用

    但是发现它只能处理xlsx了 去读xls时甚至还友情提示你去用xlrd...


    没办法 只能混合用了

    但是写完运行的时候又发现了新的问题

    用openpxl读写的时候 数据内部都转成了unicode编码表示 但是用xlrd读的时候并没有转换编码

    所以依然行不通。。


    无奈之下继续找

    发现有pywin32 这个微软官方api

    于是乎继续写…………

    读写xls没一点问题……

    读写xlsx……读没问题……写的时候打不开…………

    天……


    最终采取用pywin32读取,用openpyxl写

    嗯,终于没问题了,实现了对各种格式的支持


    听说还有个XlsxWriter,但是也只能写成xlsx。


    天……

    就不能有个专一简单的模块用么

    --------------------------------------------------------------------------------------------------------------------------------------------------

    后来发现编码报错是因为用os.listdir 读取了文件列表,然后写到excel时编码错误 而不是excel文件本身内容的原因

    用chardet处理文件名发现是windows1252编码

    但是用windows1252 decode之后再encode('utf8')发现是乱码


    最终打包时发现codec报错编码为gbk

    于是使用gbk解码 顿时解决所有问题


    毕竟windows 还是基于gbk的啊…………


    --------------------------------------------------------------------------------------------------------------------------------------------------

    打包时选用py2exe win10下报错 没找到原因

    换用pyinstaller 成功解决 并打包为一个独立的exe程序


    --------------------------------------------------------------------------------------------------------------------------------------------------

    最终方案 采用xlrd读取excel,openpyxl写xlsx,读取的windows系统的数据用gbk解码,然后用pyinstaller打包为一个exe文件




    展开全文
  • python可以使用一个第三方库叫做win32com达到操作com的目的,win32com功能强大,可以操作word、调用等等等。 3.7.1 pip安装win32com pip install pypiwin32 由于我已经安装过了,所以提示已经安装: 3.7.2 ...

    课程大纲

    第二章 Python10分钟入门
    【2.1】:PyCharm社区版配置Anaconda开发环境
    【2.2】:Python基础知识及正则表达式入门

    第三章 Python操作Excel
    【3.1】:xlrd 使用教程 读取 操作Excel
    【3.2】:xlwt 使用教程 写入 操作Excel
    【3.3】:xlutils 使用教程 修改 操作Excel
    【3.4】:xlwings 使用教程 读取 写入 修改 操【作Excel
    【3.5】:openpyxl 使用教程 读取 写入 修改 操作Excel
    【3.6】:xlswriter 使用教程 读取 写入 修改 操作Excel
    【3.7】:win32com 使用教程 读取 写入 修改 操作Excel
    【3.8】:pandas 使用教程 读取 写入 修改 操作Excel

    第四章 Python操作word
    【4.1】:win32com 使用教程 操作word
    【4.2】:python-docx 使用教程 操作word

    第五章 Python操作ppt
    【5.1】:win32com 使用教程 操作复制ppt PowerPoint
    【5.2】:python-pptx 使用教程 操作ppt PowerPoint 添加文字 形状图表


    在这里插入图片描述
    python可以使用一个第三方库叫做win32com达到操作com的目的,win32com功能强大,可以操作word、调用宏等等等。

    3.7.1 pip安装win32com

    pip install pypiwin32
    

    由于我已经安装过了,所以提示已经安装:

    image-20200615154927504

    3.7.2 Python使用win32com读写Excel

    程序示例:

    import win32com
    from win32com.client import Dispatch, constants
    import os
    
    # 获取当前脚本路径
    def getScriptPath():
        nowpath = os.path.split(os.path.realpath(__file__))[0]
        print(nowpath)
        return nowpath
    
    # 3.7.2 Python使用win32com读写Excel
    def fun3_7_2():
        app = win32com.client.Dispatch('Excel.Application')
    
        # 后台运行,不显示,不警告
        app.Visible = 0
        app.DisplayAlerts = 0
    
        # 创建新的Excel
        # WorkBook = app.Workbooks.Add()
        # 新建sheet
        # sheet = WorkBook.Worksheets.Add()
    
        # 打开已存在表格,注意这里要用绝对路径
        WorkBook = app.Workbooks.Open(getScriptPath() + "\\3_7 win32com 修改操作练习.xlsx")
        sheet = WorkBook.Worksheets('Sheet1')
    
        # 获取单元格信息 第n行n列,不用-1
        cell01_value = sheet.Cells(1,2).Value
        print("cell01的内容为:",cell01_value)
    
        # 写入表格信息
        sheet.Cells(2, 1).Value = "win32com"
    
        # 保存表格
        #WorkBook.Save()
    
        # 另存为实现拷贝
        WorkBook.SaveAs(getScriptPath() + "\\new.xlsx")
    
        # 关闭表格
        WorkBook.Close()
        app.Quit()
    
    
    if __name__ == '__main__':
        fun3_7_2()
    

    效果如下:

    image-20200615161943809

    内容为:

    image-20200615161810073


    返回《Python办公自动化之Word、Excel、PPT理论与实践》课程目录

    展开全文
  • 前面一篇Excel拼接xml报文的方法,这一篇为使用Python读取启用excel,来获取xml报文 #-*- coding=utf-8 -*- import xlrd # 打开xlsm报文,启用excel workbook=xlrd.open_workbook(u'C:\\Users\\54105\\...

    前面一篇写了Excel拼接xml报文的方法,这一篇为使用Python读取启用宏的excel,来获取xml报文

    #-*- coding=utf-8 -*-
    import xlrd
    # 打开xlsm报文,启用宏的excel
    workbook=xlrd.open_workbook(u'C:\\Users\\54105\\Desktop\\报文拼接器.xlsm')
    # 根据sheet名获取工作簿
    sheet1=workbook.sheet_by_name(u'Sheet1')
    # 获取单元格数据,注意,A1代表(0,0),所以(7,1)代表B8单元格数据,前面代表行,后面代表列
    xmlm=sheet1.cell(7,1).value
    # 打印数据
    print(xmlm)

    输出结果:
    在这里插入图片描述
    当我们获取xml报文后就可以作为参数,来发送接口请求了

    展开全文
  • Excel宏的录制

    2019-11-08 22:34:23
    在前面 2018年10月,研一第一学期,CPA备考结束后,本着技多不压身的想法,开始学习Python(在这之前完成了...最近除了学习Python,还在学习吉他,学习Excel高级应用,平时也喜欢长跑,以后会经常分享记录平时的...

    写在前面

    2018年10月,研一第一学期,CPA备考结束后,本着技多不压身的想法,开始学习Python(在这之前完成了Stata入门),主要学习阵地为B站。现在一年过去了,爬了一些网站,编了一些程序用于解决论文写作中遇到的小问题。最近又是备考期结束,开完题,有了一些时间,开始在博客记录一些东西。最近除了学习Python,还在学习吉他,学习Excel宏,平时也喜欢长跑,以后会经常分享记录平时的各种心得。不得不感慨,在这个互联网时代,自学真的变得越来越方便,只要拥有一颗终身学习的心,共勉!
    今天是2019年11月8日,立冬,与十来同窗小聚,谈天说地,甚欢。步入正题,分享记录Excel关于宏的学习。

    录制宏的3种方法

    1. Excel左下角,右键→录制宏
    2. 视图→宏
    3. 开发工具→录制宏
      PS: 开发工具的调用,文件→选项→自定义功能区→开发工具→确定
      相关宏的设置:Excel文件→选项→信任中心→宏设置/ 受信任位置→添加新的位置→勾选同时信任次位置的子文件夹

    注意事项

    一般先选择区域,再录制宏

    示例——查找数字并涂色

    开始录制宏→开始→查找和选择→定位条件→常量→勾选数字→确定→涂色→停止录用宏→开发工具→宏

    展开全文
  • ViperMonkey是一个用Python写的VBA仿真引擎,旨在分析和反混淆Microsoft Office文件(Word, Excel, PowerPoint, Publisher等等)中包含的恶意VBA
  • 索引xlwings官方文档Quickstart1、脚本编写:通过PythonExcel自动化/交互创建excel工作簿实例同一文件多个实例创建sheet实例读写sheet文档2、:从Excel调用Python3. UDF:用户定义的功能(仅Windows) xlwings...
  • Python合并多张EXCEL工作表

    千次阅读 2018-07-13 18:52:03
    VBA脚本的合并多张EXCEL表的地址为: EXCEL VBA 合并多张相同格式的工作表的以下是Python脚本编写的用于合并多张excel表的代码:# -*- coding: utf-8 -*- """ Created on Fri Jul 13 18:09:06 ...
  • 轻量级,零依赖(仅使用标准库)到Microsoft Excel读/python 2.7.18-3+库。 请投票支持将pylightxl添加到python-awesome列表中,以帮助我们向社区宣传pylightxl。 按照并在右上角批准拉取请求 上的项目 支持:...
  • 一、前言 关于Python的xlrd、xlwt模块的使用,推介另一位博客主的博文:...需求是用去做的,但是因为时间比较紧急,我用了1天去“研究”怎么用,发现作为一个VBA入门者,...
  • Excel的规范与限制

    2011-10-16 22:31:00
    今天尝试在Python中运行Excel宏(参见在Python中运行Excel的VBA宏),为了测试的简便性,就在Excel中随便了个VBA宏:从第1行到第50000行,分别给第1列单元格写入一个字符串。测试结果良好。 为了进一步测试...
  • Python爬取个人博客信息汇总

    千次阅读 2019-12-21 15:38:25
    效果预览 爬取自己所的每一条博客的标题、链接等信息: 1 Python爬取上交所年报并下载 ...2 Excel宏的录制 https://blog.csdn.net/weixin_43636302/article/details/102981249 3 ...
  • Openpyxl操作Excel教程

    千次阅读 2018-06-07 21:58:36
    在这篇教程中我们会想你展示如何使用Python的openpyxl库来控制Excel文件Openpyxlopenpyxl是一个Python库,可以用来读写Excel 2010 xlsx/xlsm/xltx/xltm 文件.Excel xlsx在这篇教程中,我们将会处理xlsx文件.xlsx是XML...
  • excel 运行的时候时间有点长,二十多秒,期间程序会出现假死,python调用vba时会报错。 解决办法,一个vba在目录下生成一个txt,python用while去循环检测,如果有文件执行保存关闭excel命令,没有的话延时等待...
  • 最近东西需要画图,画完以后突然发现绘图区域的大小是很难给弄的差不多大小的,所以在网上搜集了一些资料,了一个VBA,然后通过执行宏来控制绘图区域大小。 作为新版EXCEL 2019,系统出于安全考虑,开发模式...
  •   个人制作的 VBA 代码加密混淆器,帮你加密你的代码,让它不再那么易读。因 VBA 的方便一直以来都喜欢用它一些小工具,了解多了也就知道这种代码编写的工具完全没有安全性可言,工程密码形同虚设,很容易破解...
  • 最近在研究使用Python操作Excel自动化的过程中,我遇到了一个小问题。为了弄清楚Excel在设置单元格条件格式时候所用的颜色,我使用VBA录制了命令,但是单元格和字体的颜色都是使用整数值进行标注的。 上网搜索了...
  • Python 去 OpenOffice / LibreOffice Google Spreadsheets脚本 PHP 用法 将sf15to18.bas添加到ExcelExcel中打开或创建电子表格 转到工具>> Visual Basic编辑器 右键单击“此工作簿”,然后选择“插入”>...
  • 记录一次简易爬虫

    2021-04-30 16:07:36
    excel里绘制界面UI,调用(xlwings框架支持从excel直接调用Python) 逻辑端 方案一(放弃) 直接使用request发起请求,拿回response,并正则匹配html里的shop_id字段 结果:已经模拟真实UA了,但是请求久了还是会被...
  • 用VBA编写的简易计算器

    千次阅读 2020-03-27 15:06:10
    我用EXCEL2010的VBA编写了一个简易计算器,代码很简单,核心内容是如何计算字符串表达式(例如“3+2*5”),JAVAscript、Python中可以使用EVAL()函数,但是VBA中没有该函数。经过一番查找,发现在VBA的表函数中有...
  • 测试培训教材

    2014-04-01 12:10:48
    The VAPI-XP testing tool enables you to create new testing scripts using Microsoft VBScript, Microsoft JavaScript (JScript version), PerlScript, and PythonScript, and integrate these scripts into your...

空空如也

空空如也

1
收藏数 20
精华内容 8
关键字:

python写excel宏

python 订阅